Solved

Custom GUI (Platform Independent)

Posted on 2004-08-18
8
526 Views
Last Modified: 2013-12-03
Hi all,
What I'm looking for is a clear and consise description of a strategy for developing a custom designed user interface that will be easy to port across to different platforms. I have a some experience in developing Windows apps and that will be my initial choice of platform, but I want to make sure that if it becomes necessary, I can easily port my application across to Unix and other platforms (of which I have very little experience of, hence this question). I'm guessing that developing anything in MFC is a bad move right?!!

So what do people recommend? I'm just asking for an outline of the strategy, and maybe links to any resources that people would think I would find particularly useful.

Regards

Andy
0
Comment
Question by:fxnut
  • 3
  • 2
  • 2
  • +1
8 Comments
 
LVL 3

Assisted Solution

by:Tyrsis
Tyrsis earned 100 total points
ID: 11828755
Hello,

I would suggest giving Borland products a try.  C Builder is a good choice as an alternative to MFC, with the added bonus of Kylix, which you can use to create cross-platform applications to linux.  Also, if you are willing to try Delphi, you are given the added bonus of the freepascal.org project that is porting Delphi and their VCL classes (the base classes which basically wrap system calls) to other platforms including MacOS, etc.  I would suggest investigating it and evaluating it yourself.  As trying to create highly portable code from scratch right from pure system calls and porting it from platform to platform using other methods was a nightmare for myself.  Using delphi it took me less than 5 hours to port a very large project to linux from Windows using Delphi.

Hope this helps!

Tyrsis
0
 
LVL 55

Assisted Solution

by:Jaime Olivares
Jaime Olivares earned 100 total points
ID: 11828782
You can use a portable GUI like wxWindows (wxwidgets.org) or QT (http://www.trolltech.com/products/qt).
You can download both for free, but notice that second one has a big price for commercial windows version licence.
0
 
LVL 3

Accepted Solution

by:
str_ek earned 300 total points
ID: 11828847
delphi/kylix is good as a rad tool, but if you prefer c/c++ there are few quite eazier and more flexible solutions...

wxWindows - http://www.wxwindows.org/
a widgets wrapper lib for us on many platforms... jsut hadle gui threw it (yes there's a lotta lernin' to do) nad only pletform dependant code(like wgl, winapi etc...) is a porting problem, and there is always a way to avoid platform dependency somehow.... so it makes possible to write gui apps with corssplatform enabled code :)

ther are more great x-platfotm gui libs, and many,many more x-platform support libs for wrapping platform specyfic codes, like wgl,xgl ...

one more suggestion
http://www.fltk.org/ - fast lighttool kit, another great gui lib

that'e also a great lib...but it's shredded into many branches, and it makes a little bit difficult to keep yourself up to date and trace changes

there are always other x-platform libs for gui development ... just like the ported gtk, but in my opinion the wisest choise it wxwindows, or fltk..
0
 
LVL 1

Author Comment

by:fxnut
ID: 11829087
Thanks for the quick responses guys. I've checked out the links you posted, and FLTK seems to be a good option. Version 1.2 of FLTK currently in development is going to allow for application "skins", which I would hope will allow me to create a custom look to the interface.

My initial phrasing of my question was a little unclear on what I want to do exactly. Basically, I'm thinking of writing a 3D modelling application and I was wondering how packages like Maya implement their cross platform interfaces. Writing an app like this is would require various custom UI controls and the design and implementation of the architecture is obviously extremely important.

So any 3rd party library would ideally have to support customisable control appearance, custom controls and possibly custom events.

Do the libraries mentioned so far provide this functionality?

0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 
LVL 55

Expert Comment

by:Jaime Olivares
ID: 11829179
for cross-platform 3d application I recommend you to use any OpenGL wrapper. Take a look at www.sourceforge.com (write "opengl" on the search form)
 
0
 
LVL 3

Expert Comment

by:str_ek
ID: 11829189
peep at efltk (one of branches) as well ;)

and bout fltk and customwidgets take a look at http://www.fltk.org/documentation.php/doc-1.1/subclassing.html#subclassing
with custom events it's a little more complicated problems, but it all can be should be possible to achieve threw widget subclassing
0
 
LVL 3

Expert Comment

by:str_ek
ID: 11829227
fltk provides with a corss-platform opengl wrapper :)
0
 
LVL 1

Author Comment

by:fxnut
ID: 11831546
Thanks guys for your help :-)
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Run Program using VBScript 3 58
Nest Related files not working in Visual Studio 4 76
Dir function fails on mapped drives 28 123
Post a good COM tutorial 1 50
This article shows how to make a Windows 7 gadget that accepts files dropped from the Windows Explorer.  It also illustrates how to give your gadget a non-rectangular shape and how to add some nifty visual effects to text displayed in a your gadget.…
With most software applications trying to cater to multiple user needs nowadays, the focus is to make them as configurable as possible. For e.g., when creating Silverlight applications which will connect to WCF services, the service end point usuall…
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
Hi friends,  in this video  I'll show you how new windows 10 user can learn the using of windows 10. Thank you.

864 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

23 Experts available now in Live!

Get 1:1 Help Now