When wxWidgets will become a real C++ toolkit? Topic is solved
When wxWidgets will become a real C++ toolkit?
I mean: now wxWidgets doesn't use a lot of c++ features and advanced technique. I know it was a choice of some years ago when compilers didn't support c++ standard so well. Is it planned a rewrite of wxwidgets to use some features like namespace, c++ RTTI, STL or advanced technique as Singletons and so on? For now it seems to use a sort of C with Classes...
Hey that's not a complain, i'm a really wxWidget fan!
Hey that's not a complain, i'm a really wxWidget fan!
-
- Earned a small fee
- Posts: 16
- Joined: Wed Oct 25, 2006 12:35 am
- tierra
- Site Admin
- Posts: 1355
- Joined: Sun Aug 29, 2004 7:14 pm
- Location: Salt Lake City, Utah, USA
- Contact:
A lot of this has been under discussion here:
http://www.wxwidgets.org/wiki/index.php ... xWidgets_3
When it comes down to it though, unless those features offer a significant advantage over the current code, it's not likely they'll be used since wxWidgets already has alternative code that's compatible across more compilers. There's no point in dropping that compatability (and it may still not be option to drop some compilers) if there's no gain.
http://www.wxwidgets.org/wiki/index.php ... xWidgets_3
When it comes down to it though, unless those features offer a significant advantage over the current code, it's not likely they'll be used since wxWidgets already has alternative code that's compatible across more compilers. There's no point in dropping that compatability (and it may still not be option to drop some compilers) if there's no gain.
I don't think so. Just take a look at the work you got, when you need your own wxArray.bigpilot wrote:I personally believe it's of no real importance. The most important thing is that wxWidgets is easy to use and to learn and the underlying technology doesn't interest me (STL, templates etc.).
wxWidgets Rulez!!!
In STL thats simply std::vector<myclass> vec;
And you can use most STL Algorithms on most containers, at least the common ones.
STL was just an example. By the way i think that using a solid library as STL internally can have some advantages on performance and stability due to its "tested" portability (it's a standard...) and on third party works on it. By the way it's only a (weak) example.doublemax wrote:noone stops you from using STL, i don't think it's that big of a deal how wxWidgets works internally.
Again: i love wxwidgets, but it think it can become even better! )
- tierra
- Site Admin
- Posts: 1355
- Joined: Sun Aug 29, 2004 7:14 pm
- Location: Salt Lake City, Utah, USA
- Contact:
Just as an interesting fact, did you know that wxWidgets (or wxWindows as it was known at the time) was making releases before C++ STL was accepted into an ISO draft standard? I'm not going to argue that it's array macros have had more testing or are more stable, but it has definately seen a lot of eyes, a lot of testing, and there's really no argument that they have bugs or don't perform to par. Besides, it's definately been proven that it's more compatible, and that's really what matters when the goal is a cross-platform library.Trikko wrote:By the way i think that using a solid library as STL internally can have some advantages on performance and stability due to its "tested" portability (it's a standard...) and on third party works on it. By the way it's only a (weak) example.
My point only applies to the wxWidgets library itself, nothing is stopping you from using STL in your application built with wxWidgets unless you'd also like that level of compatibility.
Hmmm, we have 2006, not 1995. It was okay back then. But today I find it only ugly and counterintuitive.
BUT: I can Compile wx with the Flag wxUSE_STL (or so). So my WX uses the STL for Strings and Arrays. That way I can use std::string in my programms and give those strings to wx-Functions, without the need for std::string::c_str() on every call. And I can use the STL-Algorithms on a wxArray without problems.
BUT: I can Compile wx with the Flag wxUSE_STL (or so). So my WX uses the STL for Strings and Arrays. That way I can use std::string in my programms and give those strings to wx-Functions, without the need for std::string::c_str() on every call. And I can use the STL-Algorithms on a wxArray without problems.
-
- Part Of The Furniture
- Posts: 1511
- Joined: Sun Jun 19, 2005 11:37 am
- Location: Singapore
- Contact:
IMHO, the single largest horrible use of macros in wxWidgets is the event handling system. I know it's hard for events, but somehow I think templates can achieve the same thing with less clutter.
Containers are a "duh" answer. STL and STL all the way. Compare C++ to other languages (ESPECIALLY Delphi) and consider us very fortunate. I was just looking for a btree for Delphi and it was some external component. The only container is the List (I don't even know if its a list or just a dynamically sized array, at that).
Then again, I'm nowhere with software design, it's just my lay two cents' worth.
Joel
Containers are a "duh" answer. STL and STL all the way. Compare C++ to other languages (ESPECIALLY Delphi) and consider us very fortunate. I was just looking for a btree for Delphi and it was some external component. The only container is the List (I don't even know if its a list or just a dynamically sized array, at that).
Then again, I'm nowhere with software design, it's just my lay two cents' worth.
Joel
-
- wxWorld Domination!
- Posts: 1339
- Joined: Wed Aug 03, 2005 8:10 am
- Location: BANGALORE, INDIA
- Contact:
I you had a strong base in MFC and moved to wxWidgets, that statement will be different.lowjoel wrote:IMHO, the single largest horrible use of macros in wxWidgets is the event handling system. I know it's hard for events, but somehow I think templates can achieve the same thing with less clutter.
Joel
STL is a pain in the behind debugging (unless your debugger supports it). I don't know about performance penalties but my experience is that it makes no difference at all for desktop applications.Trikko wrote:Thanks tierra, good link.
bigpilot: you should be interested in that technologies. They improve performace, debugging and programming time
Soon to be world famous