comp.lang.ada
 help / color / mirror / Atom feed
From: root <""root\"@(none)>
Subject: Re: GNAT and cross-platform GUI
Date: Tue, 28 Jan 2003 08:51:03 -0600
Date: 2003-01-28T08:51:03-06:00	[thread overview]
Message-ID: <v3d6eh18p52mb5@corp.supernews.com> (raw)
In-Reply-To: 3E35EC94.345831A7@sympatico.ca

Thanks for the ideas.

 >Good luck since there is a much work just to
decide which one will fit your needs best:

I noticed that! At least I can drop the 'Ada straight to graphic 
hardware' choice. It doesn't seem likely that this project will
ever run on a machine that isn't XWindow/MSWindoze/or QNX/Photon.

Me



David Marceau wrote:
> achrist@easystreet.com wrote:
> 
>>Here's another candidate:
>>
>>http://www.japi.de/
>>
>>I just noticed this looking at the GUI toolkit page the other day.
>>It says that it has an Ada binding.  It provides an interface from
>>a subset of the java GUI toolkit to other langues, including Ada.
>>
>>Haven't tried it.
>>
>>Al
>>
>>root wrote:
>>
>>>Is there any consensus on the best (quickest?) way to write GUI programs
>>>in Ada?  I'm looking the links to the (free) packages I'd need. The plan
>>>is to write the programs under Linux, but (unfortunately) a MSWindows
>>>version will also be required.
>>>
>>>I don't have much experience with GTK yet -- guess that is about to change.
>>>
>>>Me
>>
> 
> Hi there,
> 
> I took a look at JAPI you mentioned above. 
> 
> IMHO:
> -most of the JDK api is missing i.e. AWT/SWING/JOBJECT services
> -as a result Runnable Objects and Thread Objects may not be
> instantiated.  This is important if you want any multi-task multi-thread
> gui going on.
> -the creation of the gui elements do have a flaw that japi team may have
> regarded as a strength.  
> JAPI GridLayout example creates a frame, creates four buttons, packs the
> frame and then shows the frame.  
> Where I would suggest more work into japi is to separate the concerns 
> of creating the button instance from associating it with the frame as
> done by default in just one step.   There should be many steps and for
> good reason. 
> i.e. step 1)create step 2)add ...
> Why?  
> In the japi context when you create the button, your layout order is the
> same as the gui object creation order.
> There may be cases where this might not be possible 
> and especially if we're talking a multi-threaded gui which is
> dynamically 
> adding/removing runnable-gui-objects on the fly 
> from a thread pool after the runnable has terminated. 
> i.e. button1-4 could be associated to runnables.
> -In this context you're going to need more information of
> layout/ordering-gui-elements for on-the-fly packing/repacking. japi
> doesn't have this.
> -then there are the steps involved concerning removing listeners
> on-the-fly and adding listeners on-the-fly. japi doesn't have this
> either.  Please correct me if I am wrong.
> -last but not least GridBagLayout is the most powerful layout manager
> and should be supported.  japi doesn't have this.  Please correct me if
> I am wrong.  I did see GridLayout but not GridBagLayout which is a whole
> different ball-o-wax.
> 
> I don't want to be harsh on japi but I do want to highlight that when
> there might be smoke and mirrors involved I prefer lifting up the fog to
> put it on an even-level with the other GUI API's out there for ADA. 
> Another way to measure bang per SDK would be LOCS if you have access to
> source :)
> 
> IMHO Here are your alternatives for multi-platform GUI with Ada:
> -Ada with Proprietary Microsoft COM.  Bristol Technologies sell a COM
> implementation for Unix but only runs on certain unix os'es.
> -Ada with OpenSource GNU AdaGTK runs on any UNIX/LINUX/Windows
> -Double your gui effort and do it win32/Ada/COM route then do it in
> Ada/X-Window
> -do it with Ada to Java and maybe end up using it on anything that has a
> jvm and an ada compiler i.e. J2ME/JAVACARD/JAVA bytecode
> Goto the adapower site for ada-to-java solutions.
> http://www.adapower.com
> among them if I recall there is jgnat, cafe1815, adajni.  Now japi :)
> There are others.
> -Ada/TCL/TK/TASH
> -Ada and straight to graphic hardware from Win32/UNIX without X.
> -Ada straight to hardware both graphic and everything else.  No X no
> Win32, so I gather this alternative is not for you :)
> 
> I hope this helps a bit. Good luck since there is a much work just to
> decide which one will fit your needs best:)
> 
> Cheers,
> David Marceau





  parent reply	other threads:[~2003-01-28 14:51 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-01-27 20:36 GNAT and cross-platform GUI root
2003-01-27 22:56 ` achrist
2003-01-27 22:57 ` achrist
2003-01-28  2:36   ` David Marceau
2003-01-28 14:48     ` root
2003-01-28 14:51     ` root [this message]
2003-01-28 23:23 ` R. Srinivasan
2003-01-29 12:27   ` Marc A. Criley
2003-01-29 17:15     ` Jano
2003-01-29 18:48       ` I. Marks
  -- strict thread matches above, loose matches on Subject: below --
2003-01-29 17:56 David C. Hoos
replies disabled

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