wxWidgets 2.6.0 was released yesterday. This is the first stable release in over 18 months. Release notes and downloads are available here.
wxWidgets 2.6.0 was released yesterday. This is the first stable release in over 18 months. Release notes and downloads are available here.
Wohoo!!!
Now can use GTK 2.x.
I like wxWidgets. Available for many platforms, native widgets (unlike Qt), lots of features, language bindings for Python and Perl and unrestrictive licensing. What more could I want?
I am so pleased that a new version of wxWidgets has been released. Don’t let the minor version number change fool you (2.4 -> 2.6) because this version has a significant amount of new features.
A great amount of effort has gone into making the behavior as consistant as possible across platforms. One of the key differences between this and other cross-plaform toolkits is that this one uses native widgets. Applications written with wxWidgets don’t just “look” native, they are native applications.
At last VideoLan Client, Bittorrent and aMule (and I guess others as well) are GTK2 application. They look much more integrated now.
I wonder how long they will continue to support them…
The widgets look very good on OS X. Now, if only they had something similar to Qt designer for free, this would be an excellent toolkit. Also, I’m not too keen on the MFC style macros….
How hard is it to port wxWindows to new platforms?
Could wxWindows be used as a replacement for Windows.forms in Mono/.NET or as a replacement for Swing (or whatever) in Java?
The goal here being to create a crossplatform windowing/widget system for one or all of the bytecode languages, so that we can compile once and run everywhere (sort of like the only way an open source/standards Linux “platform” will ever work).
The widgets look very good on OS X. Now, if only they had something similar to Qt designer for free, this would be an excellent toolkit
Maybe Glade integration could be possible.
Does anyone know of a GUI builder for wxWidgets that would be comparable to QT Designer or Visual Studio? Also, can I use wxWidgets with Mono? A cross platform, native looking, .NET application would be pretty sweet.
GUI builder:
http://wxglade.sourceforge.net/
Could wxWindows be used as a replacement for Windows.forms in Mono/.NET or as a replacement for Swing (or whatever) in Java?
Have a look at wx.NET and wx4j to see if they do what you like. These are bindings for .NET and Java respectively.
> native widgets (unlike Qt)
Where does wx use native Widgets where Qt does not?
Use of macros is not strictly necessary. You can use the Connect() function of a control/window. Check this out http://www.wxwindows.org/hworld2.txt
The connect is not as well documented as are the macros, but so far I was able to use it everywhere.
It’s now official!
…that drynwhyl has absolutely no sense of humor
Please moderators, dont let this threat convert to a Qt license issue.
“Where does wx use native Widgets where Qt does not?”
wxWindows literally wraps the native widget set, e.g: MFC, GTK+, Carbon, etc. This usually means providing large levels of indirection to effectively provide a consistent API across platforms.
Advantages: 100% native look and feel.
Disadvantages: Speed.
Qt uses low-level drawing APIs and draws all of it’s own widgets. It does however do an excellent job of mimicking the native widget style. It even uses the native theming APIs on Windows and OSX. The drawing approach is provably faster, mostly due to the lack of multiple layers of functions that are required for wrapping a widget set.
Advantages: Speed.
Drawbacks: 99% look and feel.
Hopefully, with wxWidgets 2.6, the speed issues (flickering, etc) have been mitigated. If so, the net effect on the user of either approach is NONE and the point is mute.
p.s. Qt uses some standard native dialogs to ensure consistency, i.e. the file dialog.
Maybe because they charge $1,700 for it,
They can charge any price they want, it’s their product after all.
And if after so many years a small company like TrollTech is not only in business, but profitable, that means that other companies can afford that fee without problems. Only on OSNews we read such silly complaints.
“wxWindows literally wraps the native widget set, e.g: MFC, GTK+, Carbon, etc.” True enough. Of course, on my everyday platform (KDE), Qt *is* the native widget set, which wins it some points for me
wxWidgets doesn’t wrap MFC, rather Win32 API.
“They can charge any price they want, it’s their product after all.
And if after so many years a small company like TrollTech is not only in business, but profitable, that means that other companies can afford that fee without problems. Only on OSNews we read such silly complaints.”
So true. Our company didn’t balk at the price tag and I’d be suprised if any real commercial companies do. For the FOSS people (Trolls or otherwise) there are plenty of alternatives.
Personally, if I code at home, I’ll use Qt GPL. If I ever want to write closed-source code, I’ll pay for a Qt license. If I don’t expect to at least make back that $1700 from charging for my program, then my program clearly isn’t very good!
On a totally different note: I’d love to hear posts from any programmers working on cross-platform projects with wxWindows and hear how that is working out.
If I don’t expect to at least make back that $1700 from charging for my program, then my program clearly isn’t very good!
It does’t matter how good your program may be, if there are cheaper alternatives that can do the same your program can, customers won’t buy your but others.
Because a $1,700 cost in development make the final product more expensive, you have to analize other points of view, Qt is not always a good choise for development.
> Qt is not always a good choise for development.
True for some border cases, but not for the vast majority of Free Software and commercial successful applications.
True for some border cases, but not for the vast majority of Free Software and commercial successful applications.
For free software may be if you won’t charge for it you can use whatever tool you want, it is your time anyway.
For Comercial software if your company is big enough to afford it, may be, but for other type of market that wants to reduce costs like 3rth world countries, small bussines of 1-5 employees or even a big company with a fear competence in prices wxWidgeds may feet, and there’s a lot of market for it.
On a totally different note: I’d love to hear posts from any programmers working on cross-platform projects with wxWindows and hear how that is working out.
—
It generally works fine, but from time to time you run across several subtle differences between windows and gtk; these are usually easy to work around.
Also it’s good to remember that there’s wxUniversal, which draws its own controls regardless of the platform (Win32 GDI, X11, some embedded platforms) – when I last used it it was quite feature complete and its behavior was very consistent between platforms.
The real pain of cross-platform development is when you need a component which isn’t part of wxWidgets – perhaps a media player or a feature-complete browser. The latter is being addressed by wxMozilla.
Because a $1,700 cost in development make the final product more expensive, you have to analize other points of view, Qt is not always a good choise for development.
That’s true, there’s no “perfect” tool.
But you fail to see other (very) important points in the software development process:
– rapidity of development: sometimes (well, quite often) it is more important to complete a product before the competitors; the final price is not so important
– documentation: Qt is well known to have the best docs available, even better than MSDN
– easy of use: everyone who has tried Qt will agree that its APIs are the state-of-the-art
– money: as you say, for a little shareware company Qt may not be the best solution; for all the others, it is
As you can see, there are far more variables that a company takes in consideration when deciding the toolkit to use, not only “cost”.
Why would the choise of QT be KDE’s downfall?
P.S. Java will start using native Gtk+ widgets too in its next release
You forgot to add “only if you use the Gtk L&F”…
oh, and by the way: swing.. and gtk on top of it =) i’m sure that’ll be blazing fast, right *wink* *wink*
“Put it this way. If glibc was dual-licensed as Qt is right now then, there would have to be a replacement. You can’t have the future of the unix desktop controlled by some small norweigian company.”
You’re being quite alarmist here. The future of the UNIX desktop is not, never has been and never will be controlled by Trolltech.
“KDE’s decision to use QT as its toolkit will be its downfall. And that’s a shame because Qt and KDE are both superior frameworks to Gtk+/Gnome.”
How will it be it’s downfall?
“Too bad that someone like IBM didn’t buy Trolltech out years ago.”
OK, it’s bad for (some small norweigian company) to control UNIX (which it doesn’t), but okay for IBM?
“P.S. Java will start using native Gtk+ widgets too in its next release”
That’s lovely. I hope it doesn’t on Windows though, because GTK _still_ doesn’t look right on that platform.
man i was toatally kidding and even put a smiley face at the end AFTER i quoted the guy above me verbatim (sp?). where has everyones sense of humor gone?
I think we should have an international “OSNews Commenter’s Battle” where we can all fly in to a major city and fight. It would be great. Endless bloody nerds fighting like little girls.
-adam.
As you can see, there are far more variables that a company takes in consideration when deciding the toolkit to use, not only “cost”.
The “It is easier to use” barrier of Qt and “better documentation” its ok for starters in programing,for someone who has experience in programing won’t botter to much, the truth is this, GTK+, wxWidgeds etc.. are really becaming an option, they are not as simple as before, now are better documented and more supported and now easier to use, the plus Qt has over them has shrinked, Troll Tech needs to come out with something to justify the expensive license they sell, because they may have some points better for now, but in the future I don’t think so, gratis tool kits are progressing really fast, big companies are using it, it is a reality, I thing wxWidgeds and GTK+ will be more used by comercial companies, they are here to stay because they are needed and tehere is marked for them.
I tried all major toolkits and went back to MFC. The point is that MFC is not great but taken as a whole is a lot better than everything else. Btw, wxWidget lately has been trying to become MFC like without the IDE integration that makes MFC better.
I was a great fan of wxWindows and I still see the advantages of it. But I think it is impossible to write an application with it, which comes up all the Human Interface Guidelines for all the supported platforms and toolkits. This is a problem wxWindows will never be able to solve. So, if you want to write an application which fits really perfectly into a desktop environment, you won’t use wxWindows.
I was a great fan of wxWindows and I still see the advantages of it. But I think it is impossible to write an application with it, which comes up all the Human Interface Guidelines for all the supported platforms and toolkits.
Vendors don’t respect HIG anyway.
“I tried all major toolkits and went back to MFC. The point is that MFC is not great but taken as a whole is a lot better than everything else. Btw, wxWidget lately has been trying to become MFC like without the IDE integration that makes MFC better.”
Ha-ha. That was obviously a joke!
wxGlade looks quite good. It’s basically Glade with the ability to generate wxWidgets source code instead of Gtk+. Runs nicely on OS X, and it doesn’t require X11 to boot!
Might have a play around with it some more.
wx2.6.0 is a pretty nice release with a lot of improvements, but it still needs work as a multiplatform toolkit. For one thing, we (the OSS project I’m working with) keep running into issues where wxMac behaves badly and/or inconsistently compared to wxGTK, which is what most of the devs use. We luckily haven’t been focusing much on the wxMSW yet, but that looks to be yet another headache, though probably less of a headache since wxMSW is much more mature. Still, kudos to the wxDevs for a good toolkit which promises to become better.
Ahh, how nice to hear from someone actually using wx to do crossplatform development, sadly the loudest wx fans never do. Not surprisingly you say wxMAC has issues, given it being less mature. Can you give some examples of this, just to give clearer picture of what kind of problems you can have trying to do crossplatform work with wx. And how good are the support from the wx developers on those issues, things like bug/issue fixes and help with workarounds? I’m curious to see how a real wx user see these things, getting some real life data on wx.
It would be interesting to hear exactly what kind of issues you are having. Could the issues be due to the different way the Mac works, compared to Gtk? Remember, wxWidgets is actually wrapping _native_ controls, and as such the behavior should match the underlying OS and some minor differences are expected as you wouldn’t want a Mac app behaving like a GNOME app and vice versa.
If your running windows you might want to consider http://wxdsgn.sourceforge.net . Don’t know how good it is though
…I wrote an app for work that used wxWidgets and python (wxPython) on Windows XP… I moved it to my Mac at home and, with minimal changes (to use a different database) it worked fine.
Fonts seem a little screwy on the mac… 8pt looked fine on Windows for my log window, looks teensy tiny on MacOS, so I had to bump them up a bit.
For those people who want to see some examples of real desktop apps, take a look at our indutrial control products at:
http://www.leiosoft.com/products.htm
All of our software use wxWindows to build UI.
Well, I can’t tell you much about the responsiveness of the devs regarding wxMAC issues, as I don’t have a mac and as such rarely deal directly with those issues. However, from my experience of hanging around in the wx IRC channel, I’d say that the dev-team is quite responsive.
It’s been a number of different issues. As I said, badly and/or inconsistently compared to wxGTK. Looking through our bugtracker these are some of the problems:
– Very poor performance when adding lots of text to a wxTextCtrl (due to verbose logging being enabled in our case).
– wxNotebooks not properly removing pages.
– Fonts changed in wxTextCtrl after having called Clear().
Hope that helps.
In addition to wxGlade, there’s also a new GUI editor at http://wxformbuilder.software-libre.org
It’s nice to see this new release of wxWidgets. I used to hate it with a passion, but it’s gotten much better recently.
I wouldn’t use this until they fix the redrawing problems on Windows. Resize the demo application and watch the flickering.
http://visualwx.altervista.org
And you cand edit the sourcefiles directly and it has support for C++/Python/Luad and some other script languages.
Hi,
I’m using wx in Gungirl Sequencer (ggseq.sf.net) and although it’s very good and has extensive Documentation, it has it’s shortcomings. (bugs/bloat)
Version 2.6 provides much better experience on win32, 2.4 sucked in this respect (mostly eliminating redraw flicker involved large amount of work)
It provides lot’s of advanced widgets and useful helper classes.
However, I am looking forward to use fltk in my next project, because I believe that it’s better suited for the kind of multimedia-applications that I’m developing. This doesn’t mean that I wouldn’t chose wx for a different project, it’s just not the right tool for this job.
-Richard
Whoever claimed that there are no GUI designers for wxWidgets was wrong. There are even two commercial ones. wxDesigner http://www.roebling.de/ and DialogBlocks http://wxpython.org/ . There are also two free ones XRCed http://xrced.sourceforge.net/ and wxGlade http://wxglade.sourceforge.net . All these tools ise XRC (XML resources) http://wiki.wxpython.org/index.cgi/UsingXmlResources . You can find out all that by clicking on “Resource” and then “Applications” on the wxWidgets home page.
one more GUI builder: wx-devcpp http://wxdsgn.sourceforge.net
Real desktop apps using wx?
AUDACITY!
http://audacity.sf.net