473,395 Members | 1,411 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

Please use wxWidgets


PLEASE USE WXWIDGETS

Please use wxWidgets, the multiplatform C++ class library. It's free, open-source
and non-commercial. It's modelled after MFC but it produces code which can
be compiled (using conditional compilation) into native code executables with
the speed and UI look of the platform for which the compile is targeted. So
the Windows executable looks (and is) a real Windows program, the Mac OS X
executable looks (and is) a native Mac OS X program and the Linux executable
is and looks like a real Linux/GTK+ application. It has been in development
by a band of open-source programmers led by Julian Smart for over a decade
(12 years to be exact)!

So code in wxWidgets and your program will run on both Windows, Mac OS X and
Linux, natively. Three for the price of one! And it's much easier to use than
MFC. Dialogs and Windows are easy to design using the DialogBlocks WYSIWYG
UI creator (not free and commercial, but low cost). So prepare your software
to be independent of platform and be prepared for the future.

See http://www.wxwidgets.org for more information.
Jul 22 '05 #1
10 2551
Nomen Nescio wrote:
PLEASE USE WXWIDGETS

Please use wxWidgets, the multiplatform C++ class library. [..]


Besides "free", what are the advantages of it over, say, Qt?

V
Jul 22 '05 #2
So code in wxWidgets and your program will run on both Windows, Mac OS
X and Linux, natively.


Windows and Mac OS use different CPU types and hence have different CPU
instructions... how can you have an executable that will run on both... ? Is
there a virtual machine involved at all... ?

As for Windows and Linux... Windows has some sort of PE executable file
format, does Linux have the same... ?
-JKop
Jul 22 '05 #3
"Victor Bazarov" <v.********@comAcast.net> wrote in message
news:3o****************@newsread1.dllstx09.us.to.v erio.net...
Nomen Nescio wrote:
PLEASE USE WXWIDGETS

Please use wxWidgets, the multiplatform C++ class library. [..]


Besides "free", what are the advantages of it over, say, Qt?


Other than Qt, would you know any other comparable library?

One advantage of wx might be that, as the OP mentioned, it always
uses native widgets of the target platform. Last I checked, Qt
was using custom-drawn widgets, which don't always have the look
and feel of the target platform.

Other than that, Wx does not use a special preprocessor (Qt's MOC),
however it tends to use MFC-style macros for message maps (although
you can do without them). Its license allows it to be used in any
project for free, including non-open source.
Qt, while being GPL on linux only, is commercial on other platforms.
It is also more polished overall.

While Qt is used as a basis for the KDE desktop (as far as I know),
wxWidgets has a Python binding (wxPython) that has also become a de
facto standard for Python GUI development.

Btw, both Qt and Wx, share a set of common flaws:
- Tendency to use custom container and string classes
instead of the standard library.
- Use of a MOC or Macros to implement a callback/messaging
mechanisme while a pure C++ equivalent is possible today
- Single-rooted object hierarchies and "emulated" RTTI
- Excessively monolithic design -- intrication of various
modules/components makes it difficult to use only a subset
of the library.

(Disclaimer: I haven't reviewed the latest version of Qt).
I would welcome further constructive/informative comments
about how these two libraries compare...

Cheers,
Ivan
--
http://ivan.vecerina.com/contact/?subject=NG_POST <- email contact form
Jul 22 '05 #4
On Wed, 06 Oct 2004 17:40:02 +0200, Nomen Nescio wrote:

PLEASE USE WXWIDGETS

I thought I was reading comp.lang.c++ not comp.lang.ads
I hope the author of this post is in no way associated with wxWidgets,
that alone would make me stay far, far away from that toolkit.

Jul 22 '05 #5

"JKop" <NU**@NULL.NULL> wrote in message
news:fr*******************@news.indigo.ie...
So code in wxWidgets and your program will run on both Windows, Mac OS
X and Linux, natively.
Windows and Mac OS use different CPU types and hence have different CPU
instructions... how can you have an executable that will run on both... ?

Is there a virtual machine involved at all... ?


I would assume that by "code", the OP was talking about "source code", not
an executable that will run on both. We discuss cross-platform issues here
often, and I'm pretty sure we're talking about source code that is platform
independent. Right?

-Howard
Jul 22 '05 #6
Howard wrote:
[..]
I would assume that by "code", the OP was talking about "source code", not
an executable that will run on both. We discuss cross-platform issues here
often, and I'm pretty sure we're talking about source code that is platform
independent. Right?


Right. There is another "problem", however. To use such libraries, one
has to either begin fresh or totally rewrite the UI code that has been
already written. Solutions that allow one to take the code written for
a particular platform and just recompile it on another platform and
expect it to run and do what it does on the original platform, are few
and far between. Not to mention that they are very expensive.

We're falling off the topic very rapidly, BTW.

V
Jul 22 '05 #7

"Nomen Nescio" <no****@dizum.com> wrote in message
news:57******************************@dizum.com...

PLEASE USE WXWIDGETS


Please keep material posted here topical.

-Mike
Jul 22 '05 #8
> >> Please use wxWidgets, the multiplatform C++ class library. [..]

Besides "free", what are the advantages of it over, say, Qt?
Other than Qt, would you know any other comparable library?

[snip] I would welcome further constructive/informative comments
about how these two libraries compare...


http://freshmeat.net/articles/view/928/

--
Peter van Merkerk
peter.van.merkerk(at)dse.nl
Jul 22 '05 #9
Ivan Vecerina wrote:

I would welcome further constructive/informative comments
about how these two libraries compare...

I don't know about Qt, but the screenshots on WxWidgets page might
look good compared to the sucko Motif and other X GUI designs, but
they suck compared to the MAC/PC state of the art.
Jul 22 '05 #10
Nomen Nescio wrote:
program and the Linux executable is and looks like a real Linux/GTK+


But I don't use GTK+, so how is that native to my Linux environment?

--
"If our hypothesis is about anything and not about some one or more
particular things, then our deductions constitute mathematics. Thus
mathematics may be defined as the subject in which we never know what we
are talking about, nor whether what we are saying is true." - Bertrand
Russell

Jul 22 '05 #11

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
by: USCode | last post by:
I've been poking around the wxPython website and am unclear if wxPython has a wrapper for ALL wxWidget classes or just the GUI-related classes? Does wxPython also provide a python wrapper for the...
5
by: py | last post by:
i need to design a GUI for my python app. i heard of wxWidgets and was going to look into that, but then I saw wxPython. Why would I use wxPython over wxWidgets? thanks
5
by: Tudman Todmorden | last post by:
Please use wxWidgets, the multiplatform C++ class library. It's free, open-source and non-commercial. It's modeled after MFC but it produces code which can be compiled (using conditional...
1
by: sc | last post by:
I'm hoping to hear from anyone who has had extensive experience with writing cross-platform GUI apps using wxWidgets? I'm particularly interested in "advanced" features such as Outlook or Google...
3
by: Alfay | last post by:
Hi everybody! I've got a problem: I want to compile a lot of mini-utilities with WxWidgets, but every executable is about 3 or 5 MB. Then I want to give separately the wxwidgets dlls, but I don't...
1
DeMan
by: DeMan | last post by:
I built a project using wxWidgets (2.8.3) using codeBlocks, with wxWidgets built MOLITHIC=1, SHARE=0, BUILD=debug and everything was fine and dandy (asside from the 25MB exe). I tried the same by...
17
by: marks542004 | last post by:
Hi all , I am an old programmer now hobbyist who has used cobol, basic, and RPG . I am new to c++ but have Microsoft Visual Studio 6.0. I have a program in Basic that reads a file , looks for...
1
by: Marcin Kalicinski | last post by:
I have an application written in C++ that uses wxWidgets for GUI. I use embedded Python for scripting inside of this application. I want to use wxPython to add GUI to my scripts - because my C++...
7
by: Protected | last post by:
Hello. I'm a complete newbie trying to learn Python. I decided to try some Tkinter examples, including the one from the library reference, but they don't seem to do anything! Shouldn't there be,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.