comp.lang.ada
 help / color / mirror / Atom feed
* GUI development: Windex vs. GTK vs. Anything else
@ 2001-01-02 20:58 Jesse Farmer
  2001-01-02 22:18 ` David Botton
                   ` (3 more replies)
  0 siblings, 4 replies; 11+ messages in thread
From: Jesse Farmer @ 2001-01-02 20:58 UTC (permalink / raw)


Sub. says most of it.
I'm looking for opinions on what to use for developing a GUI for an
application that is intended to be developed across Win, Mac, and Linux
platforms.  This application will quite likely need some specialized gui
work, so standard widgets won't get it entirely done.

Best approach?  Use api bindings like Windex and the respective binding for
Mac, and Xwindows-gnome stuff?
Or try using GTK since it is supported across all of those platforms?

It should be obvious that the application in question is being coded in Ada.
Windows in the primary development target, all others are secondary
concerns.

Any advice would be welcome!
-Jesse Farmer





^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: GUI development: Windex vs. GTK vs. Anything else
  2001-01-02 20:58 GUI development: Windex vs. GTK vs. Anything else Jesse Farmer
@ 2001-01-02 22:18 ` David Botton
  2001-01-02 23:01   ` Ted Dennison
  2001-01-02 22:30 ` r_srinivasan
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 11+ messages in thread
From: David Botton @ 2001-01-02 22:18 UTC (permalink / raw)
  To: comp.lang.ada

Your multi-platform choices are GtkAda (www.adapower.com/gtkada) or TASH
(www.adatcl.com). Both have GUI builders (TASH has more the one). Both
Modified GPL.

For Win32 development your best bets are CLAW (www.rrsoftware.com) or
GWindows (www.adapower.com/gwindows), with GWindows having a Modified GPL
lic.

What sort of specialized GUI work are you referring to?

David Botton


----- Original Message -----
From: "Jesse Farmer" <tujuggernaut@gmx.net>


> Sub. says most of it.
> I'm looking for opinions on what to use for developing a GUI for an
> application that is intended to be developed across Win, Mac, and Linux
> platforms.  This application will quite likely need some specialized gui
> work, so standard widgets won't get it entirely done.
>
> Best approach?  Use api bindings like Windex and the respective binding
for
> Mac, and Xwindows-gnome stuff?
> Or try using GTK since it is supported across all of those platforms?
>
> It should be obvious that the application in question is being coded in
Ada.
> Windows in the primary development target, all others are secondary
> concerns.
>
> Any advice would be welcome!
> -Jesse Farmer






^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: GUI development: Windex vs. GTK vs. Anything else
  2001-01-02 20:58 GUI development: Windex vs. GTK vs. Anything else Jesse Farmer
  2001-01-02 22:18 ` David Botton
@ 2001-01-02 22:30 ` r_srinivasan
  2001-01-03  2:20   ` tmoran
  2001-01-02 22:31 ` John English
  2001-01-03  0:24 ` Jesse Farmer
  3 siblings, 1 reply; 11+ messages in thread
From: r_srinivasan @ 2001-01-02 22:30 UTC (permalink / raw)


GTK should be a strong contender. I would also consider Jgnat
seriously (Ada targeted to the JVM).

IMHO -- Win32 development is a moving target and the only viable option
if you really decide to pursue this direction will be via BINDCOM. Other
API's that I have seen are either somewhat incomplete or otherwise
fraught with pitfalls.

In article <t54gaub18soia8@corp.supernews.com>,
  "Jesse Farmer" <tujuggernaut@gmx.net> wrote:
> Sub. says most of it.
> I'm looking for opinions on what to use for developing a GUI for an
> application that is intended to be developed across Win, Mac, and
Linux
> platforms.  This application will quite likely need some specialized
gui
> work, so standard widgets won't get it entirely done.
>
> Best approach?  Use api bindings like Windex and the respective
binding for
> Mac, and Xwindows-gnome stuff?
> Or try using GTK since it is supported across all of those platforms?
>
> It should be obvious that the application in question is being coded
in Ada.
> Windows in the primary development target, all others are secondary
> concerns.
>
> Any advice would be welcome!
> -Jesse Farmer
>
>


Sent via Deja.com
http://www.deja.com/



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: GUI development: Windex vs. GTK vs. Anything else
  2001-01-02 20:58 GUI development: Windex vs. GTK vs. Anything else Jesse Farmer
  2001-01-02 22:18 ` David Botton
  2001-01-02 22:30 ` r_srinivasan
@ 2001-01-02 22:31 ` John English
  2001-01-03  0:24 ` Jesse Farmer
  3 siblings, 0 replies; 11+ messages in thread
From: John English @ 2001-01-02 22:31 UTC (permalink / raw)


Jesse Farmer wrote:
> I'm looking for opinions on what to use for developing a GUI for an
> application that is intended to be developed across Win, Mac, and Linux
> platforms.  This application will quite likely need some specialized gui
> work, so standard widgets won't get it entirely done.

Give us a clue? What would you need beside buttons, checkboxes,
editboxes,
all the "standard widgets" stuff? What level of composability are you
after
here?

> Best approach?  Use api bindings like Windex and the respective binding for
> Mac, and Xwindows-gnome stuff?
> Or try using GTK since it is supported across all of those platforms?
> 
> It should be obvious that the application in question is being coded in Ada.
> Windows in the primary development target, all others are secondary
> concerns.

Hmm. Can look at http://www.comp.it.bton.ac.uk/je/jewl/, but at present
this is Windows only (JDK for jgnat is in progress, but very early days
yet!) and it provides only "standard widgets".

> Any advice would be welcome!

So would more clues... :-)

Happy new millenium!

-----------------------------------------------------------------
 John English              | mailto:je@brighton.ac.uk
 Senior Lecturer           | http://www.comp.it.bton.ac.uk/je
 Dept. of Computing        | ** NON-PROFIT CD FOR CS STUDENTS **
 University of Brighton    |    -- see http://burks.bton.ac.uk
-----------------------------------------------------------------



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: GUI development: Windex vs. GTK vs. Anything else
  2001-01-02 22:18 ` David Botton
@ 2001-01-02 23:01   ` Ted Dennison
  2001-01-08 12:26     ` charlet
  0 siblings, 1 reply; 11+ messages in thread
From: Ted Dennison @ 2001-01-02 23:01 UTC (permalink / raw)


In article <00d901c07509$f0e886a0$f8ffa8c0@dbdell2000>,
  comp.lang.ada@ada.eu.org wrote:
> Your multi-platform choices are GtkAda (www.adapower.com/gtkada) or
> TASH

Don't forget Java. That's the only option that I know for sure will work
on MacOS too.

> What sort of specialized GUI work are you referring to?

He's probably referring to a need to create custom controls (eg: a
volume knob or an old-fashioned sliding radio dial indicator); something
you wouldn't find in a standard widget set.

--
T.E.D.

http://www.telepath.com/~dennison/Ted/TED.html


Sent via Deja.com
http://www.deja.com/



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: GUI development: Windex vs. GTK vs. Anything else
  2001-01-02 20:58 GUI development: Windex vs. GTK vs. Anything else Jesse Farmer
                   ` (2 preceding siblings ...)
  2001-01-02 22:31 ` John English
@ 2001-01-03  0:24 ` Jesse Farmer
  2001-01-03  1:07   ` David Botton
  2001-01-03  2:20   ` tmoran
  3 siblings, 2 replies; 11+ messages in thread
From: Jesse Farmer @ 2001-01-03  0:24 UTC (permalink / raw)


In more detail:
I need to create a piano roll editor, which is something found in most midi
sequencing packages.
It consists of basically a piano keyboard, drawn vertically on the left edge
of the screen, and a series of lines extending from every other key on the
piano, horizontally across the screen.
Vertically, across the top of the screen are measure division (a measure is
a unit of time in music), which have corresponding lines that run vertically
across the screen.

The user needs to be able to zoom in and out in terms of scaling both
horizontally and vertically.  For example, the user may need to see the
entire range of the keyboard on the left, but across the top, want only one
measure, which takes up the whole screen.  Or various other arrangements of
scaling.  I hope this makes sense.

Also needed is a sort of Windows Explorer type interface screen, for
interfacing to our proprietary data structure.  Note: this has nothing to do
with the actual hard drive, or files on it.  This would end up being a two
or possibly 3 pane screen, with a hiearchical folder thing on the left, and
lists of events on the right.

Also needed is a graphical mixing counsole, which attempts to look like a
simplified real mixer, meaning vertical sliders, and knobs, which I want so
that you can click on them, and move the mouse vertically to increment or
decrement them, instead of trying to turn the knob with a semi circular
motion of the mouse.  I hope that makes sense.

So these are the specific GUI problems we are expecting to encounter.  Most
of the rest of this application can be done with standard type widgets, like
buttons, text boxes, label controls, etc....

Again, any help would be appreciated.  Like I said, the Win32 platform is of
most concern here, but we would like the ability to port in the future
relatively easily, since the vast majority of the code is being written with
portability in mind.  Thanks for your suggestions/help!
-Jesse Farmer





^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: GUI development: Windex vs. GTK vs. Anything else
  2001-01-03  0:24 ` Jesse Farmer
@ 2001-01-03  1:07   ` David Botton
  2001-01-03  2:20   ` tmoran
  1 sibling, 0 replies; 11+ messages in thread
From: David Botton @ 2001-01-03  1:07 UTC (permalink / raw)
  To: comp.lang.ada

Any one of the packages (and JGNAT that I did not mention) could fulfill
your requirements. Perhaps each with slightly different techniques, but
certainly possible.

In general I prefer not to use portable libraries, but to write my code in a
portable fashion abstract from the GUI and then connect the two together.
This allows me to take full advantage of the host platform.

For example with GWindows (and GNATCOM of course) I can easily access all
the standard Win32 controls, ActiveX controls, embed a TK window and have
access to all that TCL/TK has to offer, embed Internet Explorer in a window
and have DHTML, VRML or any other GUI web related elements inside my App,
embed the acrobat reader in to a window and much more.

It is also possible to combine technologies to get some where in the middle.
For example you could do most of your work with GtkAda and then when needed
use GWindows to attach to the GtkAda window and add ActiveX controls or make
Win32 specific call on the window.

David Botton

----- Original Message -----
From: "Jesse Farmer" <tujuggernaut@gmx.net>

> In more detail:

<CLIP>

> Thanks for your suggestions/help!
> -Jesse Farmer






^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: GUI development: Windex vs. GTK vs. Anything else
  2001-01-02 22:30 ` r_srinivasan
@ 2001-01-03  2:20   ` tmoran
  0 siblings, 0 replies; 11+ messages in thread
From: tmoran @ 2001-01-03  2:20 UTC (permalink / raw)


>IMHO -- Win32 development is a moving target and the only viable option
>if you really decide to pursue this direction will be via BINDCOM. Other
>API's that I have seen are either somewhat incomplete or otherwise
>fraught with pitfalls.
  There are also some advantages to using Ada-style concepts in a "thick"
binding.  See our Tri-Ada paper on-line at www.rrsoftware.com for
discussion.



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: GUI development: Windex vs. GTK vs. Anything else
  2001-01-03  0:24 ` Jesse Farmer
  2001-01-03  1:07   ` David Botton
@ 2001-01-03  2:20   ` tmoran
  2001-01-03 22:54     ` Jesse Farmer
  1 sibling, 1 reply; 11+ messages in thread
From: tmoran @ 2001-01-03  2:20 UTC (permalink / raw)


>Also needed is a graphical mixing counsole, which attempts to look like a
>simplified real mixer, meaning vertical sliders, and knobs, which I want so
  Some years ago I captured some video shots, then displayed those with
appropriate code to follow the mouse & move things.  That was for a video
editor in MSDOS and, IMHO, looked pretty good.  Would a "GUI by Netscape"
with Java applet portable interface, talking to a (nearly) system
independent back end, be a reasonable approach?



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: GUI development: Windex vs. GTK vs. Anything else
  2001-01-03  2:20   ` tmoran
@ 2001-01-03 22:54     ` Jesse Farmer
  0 siblings, 0 replies; 11+ messages in thread
From: Jesse Farmer @ 2001-01-03 22:54 UTC (permalink / raw)


Probably not.  One of the reasons we chose to use ada for this program is
that we needed as near to real time as we could get for some parts of the
program.  The ada real time library provides at least close to the timing
accuracy and precision that we wanted, and exists across platforms (although
I admit, we haven't tested it on any other platforms yet).

Speed and stability were the main reason that Java wasn't used.  Since
AFAIK, Java needs a runtime enviroment on all but java-specific platforms,
its speed is signifigantly reduced, and memory requirements are increased.
I may be overestimating the degregation in performance caused by the JRE,
but never the less, Ada was our first choice, C++ our second.

Because of this, I'd really like to avoid using Java (especially considering
I don't know it.. but I didn't know Ada either).  However, I've never used
Jgnat or a java applet as a gui interface before.  But I get the feeling
that Java seems to be more for quick development, rather than good, solid
performance.  Perhaps I'm wrong on this.

In any case, I plan on investigating several of the options mentioned, to
see which seems the most viable.  Thanks.
-Jesse Farmer


<tmoran@acm.org> wrote in message
news:E%v46.77002$A06.2601489@news1.frmt1.sfba.home.com...
> >Also needed is a graphical mixing counsole, which attempts to look like a
> >simplified real mixer, meaning vertical sliders, and knobs, which I want
so
>   Some years ago I captured some video shots, then displayed those with
> appropriate code to follow the mouse & move things.  That was for a video
> editor in MSDOS and, IMHO, looked pretty good.  Would a "GUI by Netscape"
> with Java applet portable interface, talking to a (nearly) system
> independent back end, be a reasonable approach?





^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: GUI development: Windex vs. GTK vs. Anything else
  2001-01-02 23:01   ` Ted Dennison
@ 2001-01-08 12:26     ` charlet
  0 siblings, 0 replies; 11+ messages in thread
From: charlet @ 2001-01-08 12:26 UTC (permalink / raw)



> He's probably referring to a need to create custom controls (eg: a
> volume knob or an old-fashioned sliding radio dial indicator);
something
> you wouldn't find in a standard widget set.

Creating new and composite widgets with GtkAda is really
trivial and one of the advantages of GtkAda.

Arno


Sent via Deja.com
http://www.deja.com/



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2001-01-08 12:26 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-01-02 20:58 GUI development: Windex vs. GTK vs. Anything else Jesse Farmer
2001-01-02 22:18 ` David Botton
2001-01-02 23:01   ` Ted Dennison
2001-01-08 12:26     ` charlet
2001-01-02 22:30 ` r_srinivasan
2001-01-03  2:20   ` tmoran
2001-01-02 22:31 ` John English
2001-01-03  0:24 ` Jesse Farmer
2001-01-03  1:07   ` David Botton
2001-01-03  2:20   ` tmoran
2001-01-03 22:54     ` Jesse Farmer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox