Discussion:
FYI: Interesting wxWidgets discussion in Reddit
Kolya Kosenko
2014-02-10 19:32:57 UTC
Permalink
Hello,

<http://www.reddit.com/r/programming/comments/1xcpqx/wxwidgets_30_the_first_new_stable_wxwidgets/>

Regards,
Kolya.
--
Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.

To unsubscribe, send email to wx-users+***@googlegroups.com
or visit http://groups.google.com/group/wx-users
Vadim Zeitlin
2014-02-10 19:38:30 UTC
Permalink
On Mon, 10 Feb 2014 21:32:57 +0200 Kolya Kosenko wrote:

KK> <http://www.reddit.com/r/programming/comments/1xcpqx/wxwidgets_30_the_first_new_stable_wxwidgets/>

There are not that many interesting things there, to be honest. For me the
most striking observations are:

1. People really love to talk more than to do anything. The most vocal
critic of lack of C++11 support in wx turned out to be completely ignorant
about what move semantics actually is, so I'm pretty sure he'd be never
able to use any C++11 features in any case yet -- yet it didn't prevent him
at all from complaining. People are weird.

2. The repost of my original announcement (see
http://www.reddit.com/r/programming/comments/1qejcp/wxwidgets_30_first_new_major_release_since_15/)
got more comments and *twice* as many upvotes. Reddit is weird.

Regards,
VZ
--
TT-Solutions: wxWidgets consultancy and technical support
http://www.tt-solutions.com/
Kolya Kosenko
2014-02-10 20:36:12 UTC
Permalink
Post by Vadim Zeitlin
1. People really love to talk more than to do anything. The most vocal
critic of lack of C++11 support in wx turned out to be completely ignorant
about what move semantics actually is, so I'm pretty sure he'd be never
able to use any C++11 features in any case yet -- yet it didn't prevent him
at all from complaining.
It means that we should have C++11 support and API adapters not worse
than Qt and Boost have. Otherwise lack of C++11 will be discussed again
and again, and wxWidgets will be marked as C++98/MFC-like library for a
long time. Sense of C++11 support has no matter at *all* in this case.

meetingcpp user is famous, his thoughts is popular and he will spread
wxWidgets complains otherwise.
Post by Vadim Zeitlin
2. The repost of my original announcement (see
http://www.reddit.com/r/programming/comments/1qejcp/wxwidgets_30_first_new_major_release_since_15/)
got more comments and *twice* as many upvotes.
It is because "people really love to talk", Reddit is created to talk.
We probably should post something (stats, new features, etc) monthly to
satisfy this need to talk.

Regards,
Kolya.
--
Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.

To unsubscribe, send email to wx-users+***@googlegroups.com
or visit http://groups.google.com/group/wx-users
Iwbnwif Yiw
2014-02-10 23:00:16 UTC
Permalink
Post by Kolya Kosenko
meetingcpp user is famous, his thoughts is popular and he will spread
wxWidgets complains otherwise.
Its nice that some things work, f.e. as lambdas are callable, you can use
them for events with Bind, and ranged-for working with wxContainers is nice
too.

(dependant on what you are doing this is quite significant)
Post by Kolya Kosenko
I recently wanted to write into zip archives, turned out that wxWidgets
had this supported, while Qt does not out of the box.

On the same lines I would like to point out the wxWidgets includes a
theme-able ribbon and a much more flexible out of the box grid control.
Again dependant on what you are doing (i.e. desktop office apps) these are
very significant.

Finally it is interesting the discussion about licensing, that is what
brought me to wxWidgets in the first place and the Qt license still seems
to unnerve some people.
--
Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.

To unsubscribe, send email to wx-users+***@googlegroups.com
or visit http://groups.google.com/group/wx-users
Vadim Zeitlin
2014-02-11 16:55:36 UTC
Permalink
On Mon, 10 Feb 2014 22:36:12 +0200 Kolya Kosenko wrote:

KK> On 02/10/2014 09:38 PM, Vadim Zeitlin wrote:
KK> > 1. People really love to talk more than to do anything. The most vocal
KK> > critic of lack of C++11 support in wx turned out to be completely ignorant
KK> > about what move semantics actually is, so I'm pretty sure he'd be never
KK> > able to use any C++11 features in any case yet -- yet it didn't prevent him
KK> > at all from complaining.
KK>
KK> It means that we should have C++11 support and API adapters not worse
KK> than Qt and Boost have.

AFAICS from the PDF that guy linked (5 or 6 times, too), Qt doesn't have
much. Just support for move semantics and initializer lists in their
containers. Oh, and "explicit" support (what has this got to do with C++11,
I have no idea). It seems a bit stupid to do anything like this for our own
containers as we want to deprecate them, not to encourage people to use
them. Maybe wxVector<> would be the only one worth modifying.

And wxString could, indeed, gain from having a move ctor/assignment
operator. This should be pretty simple to do, too...


KK> Otherwise lack of C++11 will be discussed again and again, and
KK> wxWidgets will be marked as C++98/MFC-like library for a long time.
KK> Sense of C++11 support has no matter at all in this case.

Yes. @#$@$!!#@! marketing.

KK> meetingcpp user is famous, his thoughts is popular and he will spread
KK> wxWidgets complains otherwise.

I wouldn't go as far as saying that he's famous, but he does run a web
site about C++. Which is exactly why I find his ignorance so astounding.

Regards,
VZ
--
TT-Solutions: wxWidgets consultancy and technical support
http://www.tt-solutions.com/
Kolya Kosenko
2014-02-12 11:59:08 UTC
Permalink
Post by Vadim Zeitlin
AFAICS from the PDF that guy linked (5 or 6 times, too), Qt doesn't have
much. Just support for move semantics and initializer lists in their
containers.
Yes, C++11 don't require much additions in Qt API, so wxWidgets also
will not requires these.

It is mostly header files modifications and it could be easy backported
to 3.0 branch.

Also there is some C++11 functions that isn't mentioned in the PDF such
as data() and emplace_back():

http://en.cppreference.com/w/cpp/container/vector
Post by Vadim Zeitlin
It seems a bit stupid to do anything like this for our own
containers as we want to deprecate them, not to encourage people to use
them. Maybe wxVector<> would be the only one worth modifying.
Some developers could try to use C++11 algorithms with old
wx-containers, and they could wish not to rewrite all other source code.
Also even after deprecation containers will be available for backward
compatibility.

wxArrayString will require modification (initializer_list) because there
is no other way to set wxListBox, wxChoice and wxComboBox choices.
Post by Vadim Zeitlin
And wxString could, indeed, gain from having a move ctor/assignment
operator. This should be pretty simple to do, too...
C++11 string has more additional functions then just move ctor/assigment
operator:

http://en.cppreference.com/w/cpp/string/basic_string
Post by Vadim Zeitlin
I wouldn't go as far as saying that he's famous, but he does run a web
site about C++.
IIUC meetingcpp is Jens Weller, "Jens Weller works since 2007 as a
freelancer in C++, specialised in consulting, training and programming
C++ and has more then 12 years of C++ expierence. He is active in the
german C++ community, as he moderates the Qt/wxWidgets forum at
c-plusplus.de and founded the "Modern C++" group on the social network
Xing. He is the initiator of the Meeting C++ conference."

http://meetingcpp.com/index.php/speakerview/items/3.html

When C++11 API will be added to wxWidgets it would be nice if Jens
Weller provide unofficial review before official public announce. He
writes reviews regularly in his blog and I think he will be happy to do
that.

http://meetingcpp.com/index.php/br/items/say-hello-to-wxwidgets-3-0.html

Regards,
Kolya.
--
Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.

To unsubscribe, send email to wx-users+***@googlegroups.com
or visit http://groups.google.com/group/wx-users
Kolya Kosenko
2014-02-12 12:08:55 UTC
Permalink
Post by Vadim Zeitlin
It seems a bit stupid to do anything like this for our own
containers as we want to deprecate them, not to encourage people to use
them.
There is no alternatives for methods such as wxWindow::GetChildren() and
therefore wxList is a part of used API. So if this class be marked as
deprecated, all based functions also should be deprecated?

Regards,
Kolya.
--
Please read http://www.wxwidgets.org/support/mlhowto.htm before posting.

To unsubscribe, send email to wx-users+***@googlegroups.com
or visit http://groups.google.com/group/wx-users
Vadim Zeitlin
2014-02-12 13:39:42 UTC
Permalink
On Wed, 12 Feb 2014 13:59:08 +0200 Kolya Kosenko wrote:

KK> Also there is some C++11 functions that isn't mentioned in the PDF such
KK> as data() and emplace_back():
KK>
KK> http://en.cppreference.com/w/cpp/container/vector

Yes, we could easily add those to wxVector.

KK> wxArrayString will require modification (initializer_list) because there
KK> is no other way to set wxListBox, wxChoice and wxComboBox choices.

This does bother me and I'd like to do something about it. We already have
wxArrayStringsAdapter but it's not used in the public API. I think it
should be. And this class should definitely have a ctor from initializer
list (inside "#if __cplusplus >= 201103L", of course). And one from std::
vector<T>, where T is convertible to wxString, too.

KK> There is no alternatives for methods such as wxWindow::GetChildren() and
KK> therefore wxList is a part of used API. So if this class be marked as
KK> deprecated, all based functions also should be deprecated?

This is another problem I'd really like to fix. We can't do anything about
the non-const overload, but I think this one should be deprecated anyhow as
you can't just modify the children list outside of the window anyhow. As
for the const one, I am not sure what to do about it... AFAICS it should
already be possible to write something like

for (auto child: window->GetChildren())
child->Hide();

in C++11 code as wxWindowList does have begin/end() methods (perhaps we
need to add cbegin/cend() though). So while creating/modifying wxWindowList
is still ugly, using it is already as convenient as it can be, unless I'm
missing something.

KK> > And wxString could, indeed, gain from having a move ctor/assignment
KK> > operator. This should be pretty simple to do, too...
KK>
KK> C++11 string has more additional functions then just move ctor/assigment
KK> operator:
KK>
KK> http://en.cppreference.com/w/cpp/string/basic_string

Right, and stox() as well as to_string() could be very easily implemented
using the existing wxString methods.

KK> > I wouldn't go as far as saying that he's famous, but he does run a web
KK> > site about C++.
KK>
KK> IIUC meetingcpp is Jens Weller, "Jens Weller works since 2007 as a
KK> freelancer in C++, specialised in consulting, training and programming
KK> C++ and has more then 12 years of C++ expierence.

And still doesn't know much about C++ nor can spell "experience"
correctly. Hard to muster a lot of respect for the guy.

Again, there is nothing wrong with not knowing everything about C++, few
people actually do (and I'm not one of them myself). But I can't stand
people trying to pass themselves for experts when they don't know the
absolute basics.

KK> When C++11 API will be added to wxWidgets it would be nice if Jens
KK> Weller provide unofficial review before official public announce. He
KK> writes reviews regularly in his blog and I think he will be happy to do
KK> that.

I'd be grateful for any help with wxWidgets evangelising/whatever that
others can provide. I'm afraid I really can't bring myself to ask him for a
review with a straight face though.

Regards,
VZ
--
TT-Solutions: wxWidgets consultancy and technical support
http://www.tt-solutions.com/
Loading...