LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices


Reply
  Search this Thread
Old 06-27-2008, 04:22 AM   #1
fox_hound_33
LQ Newbie
 
Registered: May 2008
Posts: 6

Rep: Reputation: 0
GUI builder advice needed ......


Hello all,

I need to develop an application that would be used as a simulator to test various custom algorithms. As I have never embarked on this kind of work, I need some advice:

1. Which GUI library to use in Linux, GTK+ or FLTK? The simulator application needs to output various non-standard GUI widgets like time-line plots, various graphs like trees, bar charts, pie charts etc. The input from the user can also be visual, for example the user must be able to draw small circles or rectangles or arrows, drag to move these to a new location, expand/contract them etc. I guess these won’t come already built-in, meaning, I will be coding them. In such a case which of the libraries would be easier? Or is there any library that has these non-standard features already built-in?

2. C or C++? I have experience in C, however not much in C++. For the kind of application mentioned above which would offer a better, meaning, a more intuitive and flexible means of programming?

3. Does Linux have the equivalent of dll files as in Windows?

Thanks.
 
Old 06-27-2008, 05:38 AM   #2
pinniped
Senior Member
 
Registered: May 2008
Location: planet earth
Distribution: Debian
Posts: 1,732

Rep: Reputation: 50
1. GTK2+ is probably the best widget set to use, especially if you might port things later.

2. Use whatever language you're comfortable with. I don't know the details of your requirements so I have no idea if C++ would have any particular advantage over C.

3. On GNU/Linux systems the shared libraries are *.so (shared object) These are the equivalent of the WinDuhs DLLs (dynamically linked libraries). Of course if you meant "Active X" objects, that's a different story - they're not typically used on Linux systems.
 
Old 06-27-2008, 07:16 AM   #3
matthewg42
Senior Member
 
Registered: Oct 2003
Location: UK
Distribution: Kubuntu 12.10 (using awesome wm though)
Posts: 3,530

Rep: Reputation: 65
1. Don't forget QT. It's an awesome GUI development framework, and is portable too.

2. The C++ way of doing things fits quite well with GUI development, although it's a whole lot of a language to learn on short notice.

3. What pinniped said.
 
Old 06-29-2008, 01:17 AM   #4
iwasapenguin
Member
 
Registered: Jul 2007
Posts: 110

Rep: Reputation: 15
Once you get used to proper object orientated programming C++ offers the advantage that you can have
something that acts like a variable but contains functions inside of it.

For example to search for a word in a string (list of letters) stringName.find("word");

I would also suggest QT because it is what i am used to and the official documentation is very
good.
 
Old 06-29-2008, 02:21 AM   #5
rogx
LQ Newbie
 
Registered: Jan 2005
Location: Roma, Italy
Distribution: slackware, slamd64
Posts: 23

Rep: Reputation: 15
I suggest FLTK.

It is very light, very very fast (both at develop time and at run time),and it is really multi-platform.
Is from many years that i compile my sources, WHITOUT changing a single char, under Linux (32 and 64 bits), windows(32 and 64 bits) and AIX(64 bits). (only Makefiles must be a little different)
It has Fluid, a simple and powerful GUI editor.
And simple and powerful is the integration with OpenGl.

from http://www.fltk.org/
"FLTK is designed to be small and modular enough to be statically linked, but works fine as a shared library. FLTK also includes an excellent UI builder called FLUID that can be used to create applications in minutes."

from http://www.fltk.org/documentation.ph...tro.html#intro
"# The "core" (the "hello" program compiled & linked with a static FLTK library using gcc on a 486 and then stripped) is 114K.
# The FLUID program (which includes every widget) is 538k."

and more, don't worry about C or C++.
Fltk apis are C++, but I use to develop my applications and routines in C (also using Fluid)
they stay very well together!

Bye!
P.S. I'm sorry for my bad English.
 
Old 06-29-2008, 09:52 PM   #6
fox_hound_33
LQ Newbie
 
Registered: May 2008
Posts: 6

Original Poster
Rep: Reputation: 0
Thanks for all the great input. I will look into QT along with wxWidgets too.

As someone mentioned, certain builders like FLTK seem to prefer C++ or object oriented style of programming and others like GTk+ seem to be Cish in nature(i could be wrong here though). I was just wondering if using C/C++ with such builders would cause any difficulties or handicaps for me.

Anyway, thanks again guys.
 
Old 06-29-2008, 10:00 PM   #7
estabroo
Senior Member
 
Registered: Jun 2008
Distribution: debian, ubuntu, sidux
Posts: 1,126
Blog Entries: 2

Rep: Reputation: 124Reputation: 124
If you want to use gtk with C++, use the gtkmm libraries. It provides very nice class wrappers for pretty much everything in gtk.
 
Old 06-29-2008, 10:05 PM   #8
matthewg42
Senior Member
 
Registered: Oct 2003
Location: UK
Distribution: Kubuntu 12.10 (using awesome wm though)
Posts: 3,530

Rep: Reputation: 65
You're not limited to C and C++. For example, QT has excellent python bindings.
 
Old 07-02-2008, 02:10 PM   #9
skuzye
Member
 
Registered: Jul 2008
Location: São Paulo - Brazil
Distribution: Fedora 17
Posts: 97

Rep: Reputation: 15
<sorry for double posting>

Last edited by skuzye; 07-02-2008 at 03:06 PM.
 
Old 07-02-2008, 02:10 PM   #10
skuzye
Member
 
Registered: Jul 2008
Location: São Paulo - Brazil
Distribution: Fedora 17
Posts: 97

Rep: Reputation: 15
Hello, I was following this topic and I'm also very interest in doing programs for linux, not very sophisticated though.

I'm not very experienced on programming (used to to some small things in Object Pascal - Delphi) and now I'm using linux. I'd like very much to learn C++ to make GUI apps for linux.

What do you suggest me: QT or GTK2?

I read about Qt on its official website and I reckon it's very tempting.

Regards,

Skuzye
 
Old 07-02-2008, 02:59 PM   #11
matthewg42
Senior Member
 
Registered: Oct 2003
Location: UK
Distribution: Kubuntu 12.10 (using awesome wm though)
Posts: 3,530

Rep: Reputation: 65
Try both and see which fits your brain better. I prefer QT, but I think Gtk is also quite nice. Either way, C++ is an ugly language.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
TCL/TK GUI Builder liguorir Linux - Software 3 04-10-2010 04:14 PM
IS there a GUI Builder in Linux ? old6598 Programming 15 07-04-2007 06:32 AM
GUI builder for GTK2? General Linux - Software 1 05-23-2006 11:55 PM
First Time Computer Builder...Need Advice genelake General 36 03-19-2004 11:52 PM
Which GUI Builder? chris.hicks Linux - Software 1 09-25-2003 07:29 AM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 08:31 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration