wxWindows for Cross-Platform Coding
Creating a simple application class is easy. Listing 1 provides a basic sample of creating a wxApp class.
As you can see, creating a main wxWindows application is rather easy, and those of you familiar with MFC may be rubbing your chin thoughtfully. You'll be glad to know there is no MFC in it, nor will there ever be MFC in it, but the classes are a simple transition from MFC. It has few things MFC doesn't, and it does not support OLE.
An empty Event table is present in Listing 1, which allows you to handle events, such as a mouse click or a key pressed or your own custom events. Of course, this code shows a rather boring main application that sits there and stares at you without even blinking.
Working examples abound with the library; every single class appears to have an example demonstrating its usage. One example is the event-handling sample, by Vadim Zeitlin. This example is used because many developers beginning to use the wxWindows library seem to have some problems with events; you'll now be ahead of the game. You need the wxWindows library to try this, and if you do, you get the full source code for it under the Samples directory.
There's even a Wiki linked to from the site, so you can access the latest documentation quickly and even correct it if you find something to add.
Aside from the cast of thousands, a core development team should receive special mention and thanks:
These developers frequently are seen helping users of the wxWindows library on a daily, if not hourly, basis on the wx-user mailing list.
The release of version 2.4.0 of the wxWindows library was followed by requests from the development team for what they would like to see in version 3.0. New ports are always in the works, and the next release should be no different. One of the ports expected is the Windows CE port from Marco Cavallini and Robert Roebling.
Winelib support also is on the way, courtesy of the Winelib team, and proprietary tools for porting from MFC to wxWindows are being worked on by Julian Smart and Stefan Csomor.
With more and more companies wanting to use Linux, they will be looking for ways to port their MFC code to Linux, and one of the simplest is with the wxWindows library. The cost alone makes it worthwhile. Development issues for porting from the MFC are minimalized due to the simplicity of the library itself. Thus, if a company is looking to change from a Windows-based system to a Linux-based system, they can expect an easy porting of any code that they have. A wxNet port is even in progress.
Perhaps you have something to add to the many applications done with wxWindows. An up-to-date list of wxWindows applications is available at wxWindows.org.
Taran Rampersad is a software developer with 14 years of experience, presently doing consultation, development and writing from Trinidad and Tobago. He's actively involved with local computer societies, process management and assisting in organizing the Caribbean FLOS Conference (floscaribbean.org). His personal web site is KnowProSE.com.
Webinar: 8 Signs You’re Beyond Cron
On Demand NOW
Join Linux Journal and Pat Cameron, Director of Automation Technology at HelpSystems, as they discuss the eight primary advantages of moving beyond cron job scheduling. In this webinar, you’ll learn about integrating cron with an enterprise scheduler.View Now!
|Dr Hjkl on the Command Line||May 21, 2015|
|Initializing and Managing Services in Linux: Past, Present and Future||May 20, 2015|
|Goodbye, Pi. Hello, C.H.I.P.||May 18, 2015|
|Enter to Win Archive DVD + Free Backup Solution||May 18, 2015|
|Using Hiera with Puppet||May 14, 2015|
|Urgent Kernel Patch for Ubuntu||May 12, 2015|
- Initializing and Managing Services in Linux: Past, Present and Future
- Dr Hjkl on the Command Line
- Goodbye, Pi. Hello, C.H.I.P.
- Using Hiera with Puppet
- Gartner Dubs DivvyCloud Cool Cloud Management Vendor
- Enter to Win Archive DVD + Free Backup Solution
- Mumblehard--Let's End Its Five-Year Reign
- Infinite BusyBox with systemd
- It's Easier to Ask Forgiveness...
- Apache Web Servers and SSL Encryption