Linked by Thom Holwerda on Tue 27th Oct 2009 11:02 UTC
Qt The Haiku alpha is barely out the door, and we already have another important news item about the open source reimplementation of the BeOS. About 18 months ago, Evgeny Abdraimov started porting the Qt4 graphical toolkit to Haiku, and now, we ave some seriously epic screenshots showing a multitude of Qt4 applications running in Haiku, as well as a developer preview release.
Thread beginning with comment 391432
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[5]: qt, not native
by leos on Tue 27th Oct 2009 18:01 UTC in reply to "RE[4]: qt, not native"
leos
Member since:
2005-09-21

For example, lets say you are targeting MacOS X, then maybe your usage of some CoreXXX APIs is what will set your application from the rest. Or if you are targeting Windows, maybe there are also some Win32 API calls that will make your application shine, when compared with the available applications.

This is of course an experience that cannot be made multiplatform.

Sometimes you can only target a specific platform.


I just have to correct this, because for some reason this is a mistake I see so often from people when talking about cross-platform toolkits (most recently Google made this mistake).

Just because you use Qt doesn't mean you can't put in platform specific stuff. I have apps that run on Windows, Mac, and Linux using Qt. 98% of the code is cross platform using Qt. On Windows there is platform-specific code to do things like speech synthesis and some specific Windows behaviour that's not in Qt. On Mac I have mac-specific code to integrate into system services like spell checking.

Qt doesn't stop you from adding platform specific code to integrate into the environment. If a cross-platform toolkit doesn't provide 100% of people's needs, they seem to be inclined to throw the baby out with the bathwater and just start from scratch. We'll I'd much rather share 98% of my code between platforms than rewrite the UI on every single one.

Reply Parent Bookmark Score: 4

RE[6]: qt, not native
by moondevil on Tue 27th Oct 2009 22:31 in reply to "RE[5]: qt, not native"
moondevil Member since:
2005-07-08

I partially agree with you, but only when it makes sense to re-implement the missing 2%.

Just for the sake of the example, lets say your application makes heavy use of OLE/COM in Windows. What would you do in another platforms, implement it from scratch? What for? No other application would understand it.

Or your application makes heavy use of the BeOS filesystem metadata. How are you going to provide similiar funcionality in another platforms?

Sometimes the 2% are just too much effort.

Reply Parent Bookmark Score: 1

RE[7]: qt, not native
by leos on Wed 28th Oct 2009 00:53 in reply to "RE[6]: qt, not native"
leos Member since:
2005-09-21

Just for the sake of the example, lets say your application makes heavy use of OLE/COM in Windows. What would you do in another platforms, implement it from scratch? What for? No other application would understand it.


Well what are we using COM for? To allow other applications to control/embed ours? Then we can use Apple events or whatever the equivalent is on OSX, and dbus on Linux.

If we're embedding some OLE app into ours, then that might be a feature we can only offer on Windows. Not the end of the world.

Or your application makes heavy use of the BeOS filesystem metadata. How are you going to provide similiar funcionality in another platforms?


Fake it with an internal database. Whatever, this is completely beside the point. If you didn't use a cross-platform toolkit, you'd be implementing 100% of the functionality on each platform, including that difficult 2%.

Of course there are certain apps that are so dependent on the unique features of a certain platform that they make no sense on others, but that is the extreme minority, and not the subject of this discussion. The whole point here is how to make cross platform apps with minimum effort, while still fitting in on each platform.

Reply Parent Bookmark Score: 3