Linked by ephracis on Mon 23rd Jan 2012 13:18 UTC
General Development This is a call out for help on creating a consistent and native feeling on Mac OS X and Linux. As I have never owned a Mac and haven't used Linux as my main OS for over 3 years I need the community of OSNews to help me do this.
Permalink for comment 504362
To read all comments associated with this story, please click here.
DeadFishMan
Member since:
2006-01-09

Off the top of my head, I can think of at least two well known projects that have done something along these lines - but perhaps not as ambitious to try to cover all the major platforms as yours - and those are Avidemux and Transmission. I don't know what the Windows version of Avidemux uses (Qt?) but in Linux, there is a core package and then a plug-ins package and finally two different UIs packages: one for GTK and another for Qt. I don't know if Transmission has a Windows version but it also has two different front-ends in Linux (This is on Debian Sid, it may be packaged differently on other distros):

avidemux - Free video editor (GTK version).
avidemux-cli - Free video editor (command line version).
avidemux-common - Free video editor (Internationalization files).
avidemux-plugins - Free video editor (plugins).
avidemux-qt - Free video editor (QT version).
...
transmission - lightweight BitTorrent client
transmission-cli - lightweight BitTorrent client (command line programs)
transmission-common - lightweight BitTorrent client (common files)
transmission-daemon - lightweight BitTorrent client (daemon)
transmission-dbg - lightweight BitTorrent client (debug symbols)
transmission-gtk - lightweight BitTorrent client (GTK interface)
transmission-qt - lightweight BitTorrent client (Qt interface)

The separation of functionality from the UI even allows some niceties such as the web front-end for the Transmission daemon that actually used to be a separate project (Clutch) but that has been absorbed into the main app a few iterations ago and it is really well done (In fact, it looks like an OS X app).

You might want to take a look and see their respective coding styles, roadmaps, check the lessons learned, what pitfalls to avoid, etc to help you to define yours.

If I had to be bothered to create a multi-platform application and Java SWT/Swing is not on the cards due to its inherent ugliness, I'd definitely have gone with Qt, though. It just sounds more reasonable and less troublesome for the long haul to maintain just one codebase and compile for different platforms or desktop environments as needed if the price to pay is just a few widgets that *might* look slightly off in a few corner cases.

Edited 2012-01-24 17:21 UTC

Reply Score: 2