comp.lang.ada
 help / color / mirror / Atom feed
* Ada_GUI
@ 2022-04-05 16:26 AdaMagica
  2022-04-05 19:30 ` Ada_GUI Jeffrey R.Carter
  0 siblings, 1 reply; 46+ messages in thread
From: AdaMagica @ 2022-04-05 16:26 UTC (permalink / raw)


I'm playing around with Ada_GUI. The idea is excellent doing without callbacks. But it seems more like a prove of concept.
While the features as far as available are quite easy to use and fulfil all basic needs of a gui, it's extremely cumbersome to get a halfway nice layout.
A few questions:
The icon in Set_Up is not displayed. Why?
Is it possible to define Text_Boxes read only?

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

* Re: Ada_GUI
  2022-04-05 16:26 Ada_GUI AdaMagica
@ 2022-04-05 19:30 ` Jeffrey R.Carter
  2022-04-06  7:21   ` Ada_GUI Jeffrey R.Carter
  0 siblings, 1 reply; 46+ messages in thread
From: Jeffrey R.Carter @ 2022-04-05 19:30 UTC (permalink / raw)


On 2022-04-05 18:26, AdaMagica wrote:
> While the features as far as available are quite easy to use and fulfil all basic needs of a gui, it's extremely cumbersome to get a halfway nice layout.

The layout is solely automatic, at least for now. The combination of display 
areas and alignment can make up for its limitations in many cases, but for those 
designs where they don't, Ada GUI is not currently a suitable choice.

You could open an issue with a description of what you're unable to achieve, and 
ideas for an interface to achieve it, if you'd like this to be considered.

> A few questions:
> The icon in Set_Up is not displayed. Why?

The icon is always displayed for me; the file is always in the working 
directory, given as a simple file name. If the file is not in the working 
directory then a path is needed. Without more detail I cannot guess why you 
don't get it.

> Is it possible to define Text_Boxes read only?

It would be possible to add such a feature for the modifiable text widgets, and 
I will treat this as a feature request, but you might like to use a 
Background_Text for read-only output.

-- 
Jeff Carter
"When danger reared its ugly head, he bravely
turned his tail and fled."
Monty Python and the Holy Grail
60

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

* Re: Ada_GUI
  2022-04-05 19:30 ` Ada_GUI Jeffrey R.Carter
@ 2022-04-06  7:21   ` Jeffrey R.Carter
  2022-04-06 15:29     ` Ada_GUI AdaMagica
  2022-04-06 15:31     ` Ada_GUI Jeffrey R.Carter
  0 siblings, 2 replies; 46+ messages in thread
From: Jeffrey R.Carter @ 2022-04-06  7:21 UTC (permalink / raw)


On 2022-04-05 21:30, Jeffrey R.Carter wrote:
> 
> The icon is always displayed for me; the file is always in the working 
> directory, given as a simple file name. If the file is not in the working 
> directory then a path is needed. Without more detail I cannot guess why you 
> don't get it.

Update: the icon had been displaying for me, but in reviewing this I see that 
this is no longer the case. I don't know why this has changed. I will look into it.

-- 
Jeff Carter
"We'll make Rock Ridge think it's a chicken
that got caught in a tractor's nuts!"
Blazing Saddles
87

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

* Re: Ada_GUI
  2022-04-06  7:21   ` Ada_GUI Jeffrey R.Carter
@ 2022-04-06 15:29     ` AdaMagica
  2022-04-06 15:38       ` Ada_GUI Jeffrey R.Carter
  2022-04-06 15:31     ` Ada_GUI Jeffrey R.Carter
  1 sibling, 1 reply; 46+ messages in thread
From: AdaMagica @ 2022-04-06 15:29 UTC (permalink / raw)


Hi Jeff,
I observe very strange behaviour wrt icon.
Today it suddenly appeared with yesterday's executable. It's your favicon.ico. I deleted the file, and very strangely, if I start the executable again, favicon is still there.
More strange behaviour: I replaced it by my own Ada.ico - drum roll: favicon is still there. When I kill the exe, I get:
2022-04-06 17:18:35.69 : Deleting connection - 1
2022-04-06 17:18:35.70 : Connection error ID-1 with message : raised ADA.IO_EXCEPTIONS.LAYOUT_ERROR : Subscript error

2022-04-06 17:18:35.71 : HTTP Server Stopping
2022-04-06 17:18:35.74 : Normal exit of task: main_task_00000000009D5710
[2022-04-06 17:18:35] process terminated successfully, elapsed time: 08.79s

Christoph

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

* Re: Ada_GUI
  2022-04-06  7:21   ` Ada_GUI Jeffrey R.Carter
  2022-04-06 15:29     ` Ada_GUI AdaMagica
@ 2022-04-06 15:31     ` Jeffrey R.Carter
  1 sibling, 0 replies; 46+ messages in thread
From: Jeffrey R.Carter @ 2022-04-06 15:31 UTC (permalink / raw)


On 2022-04-06 09:21, Jeffrey R.Carter wrote:
> 
> Update: the icon had been displaying for me, but in reviewing this I see that 
> this is no longer the case. I don't know why this has changed. I will look into it.

Displaying the icon is done by boot.html. At some point the HTML that displays 
it was removed in the copy that I made from Gnoga. The relevant lines are

       <meta name="generator" content="Gnoga" />
       <link rel="shortcut icon" href="favicon.ico">

However, restoring the HTML to include this now results in the program hanging 
on startup. This appears to be an HTML/browser issue that needs further 
investigation.

-- 
Jeff Carter
"We'll make Rock Ridge think it's a chicken
that got caught in a tractor's nuts!"
Blazing Saddles
87

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

* Re: Ada_GUI
  2022-04-06 15:29     ` Ada_GUI AdaMagica
@ 2022-04-06 15:38       ` Jeffrey R.Carter
  2022-04-06 15:52         ` Ada_GUI AdaMagica
  0 siblings, 1 reply; 46+ messages in thread
From: Jeffrey R.Carter @ 2022-04-06 15:38 UTC (permalink / raw)


On 2022-04-06 17:29, AdaMagica wrote:
> Hi Jeff,
> I observe very strange behaviour wrt icon.
> Today it suddenly appeared with yesterday's executable. It's your favicon.ico.

Curious, see my post of a few minutes ago.

 >I deleted the file, and very strangely, if I start the executable again, 
favicon is still there.
> More strange behaviour: I replaced it by my own Ada.ico - drum roll: favicon is still there.

Browsers cache things.

 >
When I kill the exe, I get:
> 2022-04-06 17:18:35.69 : Deleting connection - 1
> 2022-04-06 17:18:35.70 : Connection error ID-1 with message : raised ADA.IO_EXCEPTIONS.LAYOUT_ERROR : Subscript error
> 
> 2022-04-06 17:18:35.71 : HTTP Server Stopping
> 2022-04-06 17:18:35.74 : Normal exit of task: main_task_00000000009D5710
> [2022-04-06 17:18:35] process terminated successfully, elapsed time: 08.79s

The exception msg always occurs when the program ends. At that point it doesn't 
seem important, so I haven't put much effort into suppressing it.

-- 
Jeff Carter
"We'll make Rock Ridge think it's a chicken
that got caught in a tractor's nuts!"
Blazing Saddles
87

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

* Re: Ada_GUI
  2022-04-06 15:38       ` Ada_GUI Jeffrey R.Carter
@ 2022-04-06 15:52         ` AdaMagica
  2022-04-08 14:05           ` Ada_GUI AdaMagica
  0 siblings, 1 reply; 46+ messages in thread
From: AdaMagica @ 2022-04-06 15:52 UTC (permalink / raw)


> > More strange behaviour: I replaced it by my own Ada.ico - drum roll: favicon is still there.
> Browsers cache things.
You're right, I deleted the cash and favicon is gone - but Ada.ico does not appear.

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

* Re: Ada_GUI
  2022-04-06 15:52         ` Ada_GUI AdaMagica
@ 2022-04-08 14:05           ` AdaMagica
  2022-04-08 14:31             ` Ada_GUI Jeffrey R.Carter
  0 siblings, 1 reply; 46+ messages in thread
From: AdaMagica @ 2022-04-08 14:05 UTC (permalink / raw)


More findings:
Surprisingly, even background text generates an event when clicked upon.
My icon Ada.ico is not displayed. If favicon.ico is present in the current directory, it is displayed even if Ada.ico is given in Set_Up.
Very strange.

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

* Re: Ada_GUI
  2022-04-08 14:05           ` Ada_GUI AdaMagica
@ 2022-04-08 14:31             ` Jeffrey R.Carter
  2022-04-08 20:56               ` Ada_GUI Jeffrey R.Carter
  2022-04-09 11:59               ` Ada_GUI AdaMagica
  0 siblings, 2 replies; 46+ messages in thread
From: Jeffrey R.Carter @ 2022-04-08 14:31 UTC (permalink / raw)


On 2022-04-08 16:05, AdaMagica wrote:
> More findings:
> Surprisingly, even background text generates an event when clicked upon.

All widgets generate mouse-click events.

> My icon Ada.ico is not displayed. If favicon.ico is present in the current directory, it is displayed even if Ada.ico is given in Set_Up.
> Very strange.

Have you cleared cache between displaying favicon.ico and trying with Ada.ico? 
Have you tried renaming Ada.ico to favicon.ico?
Does your boot.html contain the string "favicon.ico"?

I upgraded to a new version of Firefox last night and now favicon.ico is 
appearing again if I have boot.html without "favicon.ico" in it. It still hangs 
on startup for the version of boot.html with it.

ada_gui-gnoga-server-connection.adb at line 574 modifies boot.html to replace 
"favicon.ico" with the icon name passed to Set_Up, if it contains that string 
and a non-null icon name was given. Apparently that, or processing the modified 
file, hangs. If boot.html does not contain that string, apparently favicon.ico 
is used if it exists.

So currently it seems that if you want an icon, it has to be named favicon.ico 
and the string passed to Set_Up is ignored.

I'll investigate further.

-- 
Jeff Carter
"Blessed are they who convert their neighbors'
oxen, for they shall inhibit their girth."
Monty Python's Life of Brian
83

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

* Re: Ada_GUI
  2022-04-08 14:31             ` Ada_GUI Jeffrey R.Carter
@ 2022-04-08 20:56               ` Jeffrey R.Carter
  2022-04-09 11:59               ` Ada_GUI AdaMagica
  1 sibling, 0 replies; 46+ messages in thread
From: Jeffrey R.Carter @ 2022-04-08 20:56 UTC (permalink / raw)


On 2022-04-08 16:31, Jeffrey R.Carter wrote:
> 
> I upgraded to a new version of Firefox last night and now favicon.ico is 
> appearing again if I have boot.html without "favicon.ico" in it. It still hangs 
> on startup for the version of boot.html with it.
> 
> ada_gui-gnoga-server-connection.adb at line 574 modifies boot.html to replace 
> "favicon.ico" with the icon name passed to Set_Up, if it contains that string 
> and a non-null icon name was given. Apparently that, or processing the modified 
> file, hangs. If boot.html does not contain that string, apparently favicon.ico 
> is used if it exists.

The replacement is done with procedure String_Replace, in Ada_Gui.Gnoga:

    procedure String_Replace
      (Source      : in out Ada.Strings.Unbounded.Unbounded_String;
       Pattern     : in     String;
       Replacement : in     String);
    --  Replace all instances of Pattern with Replacement in Source

However, there is a logic error in String_Replace: if Pattern = Replacement, it 
becomes an infinite loop. So the default value of Icon for Set_Up, or an 
explicit value of "favicon.ico", results in an infinite loop when this 
replacement is done.

Correcting it to return immediately in that case, and using the version of 
boot.html that contains the text that results in the replacement being 
performed, I get favicon.ico with the default value for Icon, and the specified 
file with an explicit value, provided that I clear cache between runs.

I will update Github with the correction soon, but in the meantime, interested 
persons can make the change themselves to use a different icon file.

-- 
Jeff Carter
"Blessed are they who convert their neighbors'
oxen, for they shall inhibit their girth."
Monty Python's Life of Brian
83

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

* Re: Ada_GUI
  2022-04-08 14:31             ` Ada_GUI Jeffrey R.Carter
  2022-04-08 20:56               ` Ada_GUI Jeffrey R.Carter
@ 2022-04-09 11:59               ` AdaMagica
  2022-04-09 13:38                 ` Ada_GUI Jeffrey R.Carter
  1 sibling, 1 reply; 46+ messages in thread
From: AdaMagica @ 2022-04-09 11:59 UTC (permalink / raw)


Jeffrey R.Carter schrieb am Freitag, 8. April 2022 um 16:31:51 UTC+2:
> On 2022-04-08 16:05, AdaMagica wrote: 
> > My icon Ada.ico is not displayed. If favicon.ico is present in the current directory, it is displayed even if Ada.ico is given in Set_Up. 
> > Very strange.
> Have you cleared cache between displaying favicon.ico and trying with Ada.ico? 
> Have you tried renaming Ada.ico to favicon.ico? 

I renamed it, leaving Ada.ico in Set_Up -- and lo and behold, it is displayed.
Seems the name given in Set_Up is ignored and favicon is used if it exists.

> Does your boot.html contain the string "favicon.ico"?

No, it's what is in the current download. I didn't touch any file.

> I will update Github with the correction soon

Fine, I'll wait for the new version.

Further defects  that I found:
There is no dialog with just one OK button. A work-around is using an empty string as a second button (it does not show prominently).
LF does not work in the Ada_GUI.Dialogs.Selected_Button Text parameter. I would need a long Text extending over several lines, for instance "Instructions ...".
Displaying "&euro;" in a Text_Box (via Set_Text) does not work as expected (the HTML string appears, not the € sign).
However directly typing € in the Text_Box works.

But don't worry. I'm just playing around - no real application.

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

* Re: Ada_GUI
  2022-04-09 11:59               ` Ada_GUI AdaMagica
@ 2022-04-09 13:38                 ` Jeffrey R.Carter
  2022-04-10 11:45                   ` Ada_GUI AdaMagica
  2022-04-10 12:12                   ` Ada_GUI AdaMagica
  0 siblings, 2 replies; 46+ messages in thread
From: Jeffrey R.Carter @ 2022-04-09 13:38 UTC (permalink / raw)


On 2022-04-09 13:59, AdaMagica wrote:
> 
> I renamed it, leaving Ada.ico in Set_Up -- and lo and behold, it is displayed.
> Seems the name given in Set_Up is ignored and favicon is used if it exists.

This is the behavior with the version of boot.html without "favicon.ico".

> Fine, I'll wait for the new version.

The changes have been uploaded to Github, including boot.html with "favicon.ico" 
in it (in the Test directory). With these changes, the icon file name passed to 
Set_Up is used (at least for me on Xubuntu 21.10/Firefox 99.0/GNAT 11.2.0). What 
is your platform/browswer/compiler version?

> Further defects  that I found:
> There is no dialog with just one OK button. A work-around is using an empty string as a second button (it does not show prominently).

Show_Message_Box does this, which is why the precondition on 
Dialogs.Selected_Test only allow two or more buttons. You could also change the 
precondition to allow a length of one.

> LF does not work in the Ada_GUI.Dialogs.Selected_Button Text parameter. I would need a long Text extending over several lines, for instance "Instructions ...".

I haven't tried that. You might also try "<br>", but I suspect button text is a 
single line. I'll look into this at some point.

> Displaying "&euro;" in a Text_Box (via Set_Text) does not work as expected (the HTML string appears, not the € sign).
> However directly typing € in the Text_Box works. HTML attributes do work in the initial text for a Background_Text (and maybe also a label), but not in text provided through Set_Text.

Yes, Text_Areas and Text_Boxes don't handle HTML attributes (or any other kind 
that I've found).

> But don't worry. I'm just playing around - no real application.

The feedback is useful.

-- 
Jeff Carter
"[B]ecause of our experience in security, we are convinced
that C is too error-prone. Its loose typing, its unsafe
bitfields management, too many compiler dependent behaviors,
etc. easily lead to vulnerabilities."
EwoK developers
163

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

* Re: Ada_GUI
  2022-04-09 13:38                 ` Ada_GUI Jeffrey R.Carter
@ 2022-04-10 11:45                   ` AdaMagica
  2022-04-10 13:23                     ` Ada_GUI Jeffrey R.Carter
  2022-04-10 12:12                   ` Ada_GUI AdaMagica
  1 sibling, 1 reply; 46+ messages in thread
From: AdaMagica @ 2022-04-10 11:45 UTC (permalink / raw)


Jeffrey R.Carter schrieb am Samstag, 9. April 2022 um 15:38:36 UTC+2:
> This is the behavior with the version of boot.html without "favicon.ico".
> > Fine, I'll wait for the new version.
> The changes have been uploaded to Github, including boot.html with "favicon.ico" 
> in it (in the Test directory). With these changes, the icon file name passed to 
> Set_Up is used (at least for me on Xubuntu 21.10/Firefox 99.0/GNAT 11.2.0). What 
> is your platform/browswer/compiler version?

I got the latest zip from GitHub and checked, there is a line in boot.html:
      <link rel="shortcut icon" href="favicon.ico">
Now Ada.ico as set in Set_Up is shown on Windows 8.1/Firefox 99.0/Gnat CE 2021.

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

* Re: Ada_GUI
  2022-04-09 13:38                 ` Ada_GUI Jeffrey R.Carter
  2022-04-10 11:45                   ` Ada_GUI AdaMagica
@ 2022-04-10 12:12                   ` AdaMagica
  1 sibling, 0 replies; 46+ messages in thread
From: AdaMagica @ 2022-04-10 12:12 UTC (permalink / raw)


Jeffrey R.Carter schrieb am Samstag, 9. April 2022 um 15:38:36 UTC+2:
> > There is no dialog with just one OK button. A work-around is using an empty string as a second button (it does not show prominently).
> Show_Message_Box does this, which is why the precondition on 

Ah, thanks, I overlooked this feature.
Contrary to New_Button, this text does not observe HTML attributes. I had liked a bold or bigger title line.

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

* Re: Ada_GUI
  2022-04-10 11:45                   ` Ada_GUI AdaMagica
@ 2022-04-10 13:23                     ` Jeffrey R.Carter
  0 siblings, 0 replies; 46+ messages in thread
From: Jeffrey R.Carter @ 2022-04-10 13:23 UTC (permalink / raw)


On 2022-04-10 13:45, AdaMagica wrote:
> 
> Now Ada.ico as set in Set_Up is shown on Windows 8.1/Firefox 99.0/Gnat CE 2021.

Glad to hear it.

-- 
Jeff Carter
"Ada has made you lazy and careless. You can write programs in C that
are just as safe by the simple application of super-human diligence."
E. Robert Tisdale
72

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

* Re: ada gui
  2010-12-30 19:54 ` Randy Brukardt
@ 2010-12-31  8:11   ` Robin
  0 siblings, 0 replies; 46+ messages in thread
From: Robin @ 2010-12-31  8:11 UTC (permalink / raw)


On Dec 30, 12:54 pm, "Randy Brukardt" <ra...@rrsoftware.com> wrote:
> "Robin" <r...@thevoid1.net> wrote in message
>
> news:f90d4677-2381-4b33-85a0-54b3acd7ef0b@l32g2000yqc.googlegroups.com...
>
> > how do you do win 7 gui in ada? wonderi ng.... thanks ifuckwar in ad
>
> I'm partial to Claw myself
> (http://www.rrsoftware.com/html/prodinf/claw/claw.htm) [I should be, I was
> the lead author for it.] But you also could use JEWL, GWindows, or GTkAda
> targeting Windows.
>
> All of these build Win32 GUIs. If you are looking for a .NET based GUI,
> there is a GNAT compiler for .NET which allows you to use the GUI stuff
> directly.
>
>                                    Randy.

thanks, be safe...



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

* Re: ada gui
  2010-12-30 14:27 ada gui Robin
@ 2010-12-30 19:54 ` Randy Brukardt
  2010-12-31  8:11   ` Robin
  0 siblings, 1 reply; 46+ messages in thread
From: Randy Brukardt @ 2010-12-30 19:54 UTC (permalink / raw)


"Robin" <r@thevoid1.net> wrote in message 
news:f90d4677-2381-4b33-85a0-54b3acd7ef0b@l32g2000yqc.googlegroups.com...
> how do you do win 7 gui in ada? wonderi ng.... thanks ifuckwar in ad

I'm partial to Claw myself 
(http://www.rrsoftware.com/html/prodinf/claw/claw.htm) [I should be, I was 
the lead author for it.] But you also could use JEWL, GWindows, or GTkAda 
targeting Windows.

All of these build Win32 GUIs. If you are looking for a .NET based GUI, 
there is a GNAT compiler for .NET which allows you to use the GUI stuff 
directly.

                                   Randy.





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

* ada gui
@ 2010-12-30 14:27 Robin
  2010-12-30 19:54 ` Randy Brukardt
  0 siblings, 1 reply; 46+ messages in thread
From: Robin @ 2010-12-30 14:27 UTC (permalink / raw)


how do you do win 7 gui in ada? wonderi ng.... thanks ifuckwar in ad


fuckit



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

* Re: ada & gui
  2005-07-29  9:25 ada & gui Szymon Guz
                   ` (3 preceding siblings ...)
  2005-07-29 12:31 ` Adrien Plisson
@ 2005-08-02 16:11 ` Lucretia
  4 siblings, 0 replies; 46+ messages in thread
From: Lucretia @ 2005-08-02 16:11 UTC (permalink / raw)


<quote>
thought about wxWindows (I still like this name), but there is no Ada
binding and I want to avoid C and C++ as much as I can.
</quote>

I beg to differ ;-D I just haven't released it yet cos it's no where
near ready, oh well. But if some nice company wants to pay me millions
of £'s to work on it full time and still allow me to release it under
the licence I choose, then O...K...then! ;-D

Luke.




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

* Re: ada & gui
  2005-08-01 13:32               ` Marc A. Criley
@ 2005-08-01 18:49                 ` Jeffrey Carter
  0 siblings, 0 replies; 46+ messages in thread
From: Jeffrey Carter @ 2005-08-01 18:49 UTC (permalink / raw)


Marc A. Criley wrote:
> 
> It helps to look at the effect AdaCore was trying to achieve with the 
> GMGPL.

It helps even more to know the history behind GNAT. GNAT was developed 
by a team at NYU under a contract from the US Govt. (Some team members 
later formed Ada Core Technologies.) The contract specified that the 
compiler must be GPL, but applications compiled with the compiler need 
not be GPL.

The existing gcc was used as a model for how to achieve this. However, 
there was some question about the implications of the Ada run time on 
the 2nd requirement. Making the run time GPL might mean that any 
application that included the run time would be GPL. So lawyers at NYU 
came up with the GMGPL to get around this. The run time would be GMGPL, 
so applications that included the run time need not be GPL.

The GMGPL exception only applies to linking or instantiating; it does 
not apply to modifying the code. So, if you modify the GMGPL code, the 
GPL applies.

Disclaimer: IANAL.

-- 
Jeff Carter
"If a sperm is wasted, God gets quite irate."
Monty Python's the Meaning of Life
56



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

* Re: ada & gui
  2005-07-30  1:27             ` John B. Matthews
  2005-07-30 10:21               ` Georg Bauhaus
  2005-07-30 20:30               ` Simon Wright
@ 2005-08-01 13:32               ` Marc A. Criley
  2005-08-01 18:49                 ` Jeffrey Carter
  2 siblings, 1 reply; 46+ messages in thread
From: Marc A. Criley @ 2005-08-01 13:32 UTC (permalink / raw)


John B. Matthews wrote:

> IANAL either, but I have a different take: 
> 
> The phrase "your code" may be ambiguous. There's "your code" modifying 
> the library, which is clearly covered by the GPL. I'm not so sure about 
> "your code" that uses the library.
> 
> If you modify a GMGPL library and distribute the modified code, you have 
> to provide the modifications, as required by the GPL. Now you choose the 
> license under which to redistribute your modified library. The GPL 
> requires that you "not impose any further restrictions on the 
> recipients' exercise of the rights granted herein." Doesn't that 
> preclude your choosing a license that's more restrictive than GMGPL. If 
> you redistribute under GMGPL, then your code that uses the library would 
> be explicitly exempt from the linking provision, just as it was before 
> you started.
> 
> I can't help wondering if the GNAT modification was designed to achieve 
> just this effect.

It helps to look at the effect AdaCore was trying to achieve with the GMGPL.

AdaCore provides GNAT and sells support to major aerospace and defense 
contractors (among others).  LockMart, Boeing, Raytheon, etc. are hardly 
likely to use any tool that would even hint of anything requiring 
open-source-like release of the software they develop.  (This was my 
biggest "educational issue" when trying to get GNAT considered for use 
on the project I worked on at Lockheed Martin in the late 90s.  The 
first of many myths I had to overcome was that just compiling the code 
with GNAT would require it to be open sourced -- I did prevail, by the 
way :-)

So, these companies will use these tools if they can be convinced that 
they can legally keep their own code proprietary, and only have to make 
available any modifications to the open source software (compiler, 
tools, utilities, etc.) that was provided to them by the vendor, in this 
case AdaCore.

That they can live with, and that is what the GMGPL is designed to permit.

-- Marc A. Criley
-- www.mckae.com
-- DTraq - XPath In Ada - XML EZ Out




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

* Re: ada & gui
  2005-07-30 20:30               ` Simon Wright
@ 2005-08-01  0:02                 ` John B. Matthews
  0 siblings, 0 replies; 46+ messages in thread
From: John B. Matthews @ 2005-08-01  0:02 UTC (permalink / raw)


In article <m23bpwavff.fsf@grendel.local>,
 Simon Wright <simon@pushface.org> wrote:

> "John B. Matthews" <nospam@nospam.com> writes:
> 
> > If you modify a GMGPL library and distribute the modified code, you
> > have to provide the modifications, as required by the GPL. Now you
> > choose the license under which to redistribute your modified
> > library. The GPL requires that you "not impose any further
> > restrictions on the recipients' exercise of the rights granted
> > herein." Doesn't that preclude your choosing a license that's more
> > restrictive than GMGPL. If you redistribute under GMGPL, then your
> > code that uses the library would be explicitly exempt from the
> > linking provision, just as it was before you started.
> >
> > I can't help wondering if the GNAT modification was designed to
> > achieve just this effect.
> 
> Well, that may be so. I guess on the other hand that a corporate legal
> department faced with this might be happy with the use of an
> unmodified GNAT RTL (where the position is clear) but unhappy with the
> required use of a modified GNAT RTL (or other GMGPL library, of
> course) where the position is less clear.

I guess I don't understand what becomes less clear after GMGPL software 
is modified.

-- 
John
jmatthews at wright dot edu
www dot wright dot edu/~john.matthews/



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

* Re: ada & gui
  2005-07-30  1:27             ` John B. Matthews
  2005-07-30 10:21               ` Georg Bauhaus
@ 2005-07-30 20:30               ` Simon Wright
  2005-08-01  0:02                 ` John B. Matthews
  2005-08-01 13:32               ` Marc A. Criley
  2 siblings, 1 reply; 46+ messages in thread
From: Simon Wright @ 2005-07-30 20:30 UTC (permalink / raw)


"John B. Matthews" <nospam@nospam.com> writes:

> If you modify a GMGPL library and distribute the modified code, you
> have to provide the modifications, as required by the GPL. Now you
> choose the license under which to redistribute your modified
> library. The GPL requires that you "not impose any further
> restrictions on the recipients' exercise of the rights granted
> herein." Doesn't that preclude your choosing a license that's more
> restrictive than GMGPL. If you redistribute under GMGPL, then your
> code that uses the library would be explicitly exempt from the
> linking provision, just as it was before you started.
>
> I can't help wondering if the GNAT modification was designed to
> achieve just this effect.

Well, that may be so. I guess on the other hand that a corporate legal
department faced with this might be happy with the use of an
unmodified GNAT RTL (where the position is clear) but unhappy with the
required use of a modified GNAT RTL (or other GMGPL library, of
course) where the position is less clear.



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

* Re: ada & gui
  2005-07-30 10:21               ` Georg Bauhaus
@ 2005-07-30 16:27                 ` John B. Matthews
  0 siblings, 0 replies; 46+ messages in thread
From: John B. Matthews @ 2005-07-30 16:27 UTC (permalink / raw)


In article <42eb52ec_2@news.arcor-ip.de>,
 Georg Bauhaus <bauhaus@futureapps.de> wrote:

> John B. Matthews wrote:
> > In article <m27jf9blo5.fsf@grendel.local>,
> >  Simon Wright <simon@pushface.org> wrote:
> 
> >>IANAL, any more than anyone else here, but my take on this is that if
> >>you use an unmodified GMGPL library there's no impact on your code. If
> >>however the GMGPL library has to be modified in order for your code to
> >>work it seems likely that you would have to treat the library as being
> >>GPL -- so your code would have to be released as (GM)GPL. Or not
> >>released, of course.
> > 
> > 
> > IANAL either, but I have a different take: 
> 
> Neither am I; there is another phrase, "this unit".
> When you modify this unit, you create a derivative work.
> What's the status of the exception which seems to apply to
> the original work?
> 
> The section on embedded fonts in the GPL FAQ seems to talk about
> similar exceptions and their relation to derived fonts.
> http://www.gnu.org/licenses/gpl-faq.html#FontException

Indeed, the font exception offers an explicit choice for redistributing 
the derivative work: "If you modify this font, you may extend this 
exception to your version of the font, but you are not obligated to do 
so." In contrast, the GNAT modification does not offer this choice. The 
GPL itself precludes distributing derived works under a more restrictive 
license. Wouldn't removing the GNAT modification make the license more 
restrictive?

-- 
John
jmatthews at wright dot edu
www dot wright dot edu/~john.matthews/



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

* Re: ada & gui
  2005-07-30  1:27             ` John B. Matthews
@ 2005-07-30 10:21               ` Georg Bauhaus
  2005-07-30 16:27                 ` John B. Matthews
  2005-07-30 20:30               ` Simon Wright
  2005-08-01 13:32               ` Marc A. Criley
  2 siblings, 1 reply; 46+ messages in thread
From: Georg Bauhaus @ 2005-07-30 10:21 UTC (permalink / raw)


John B. Matthews wrote:
> In article <m27jf9blo5.fsf@grendel.local>,
>  Simon Wright <simon@pushface.org> wrote:

>>IANAL, any more than anyone else here, but my take on this is that if
>>you use an unmodified GMGPL library there's no impact on your code. If
>>however the GMGPL library has to be modified in order for your code to
>>work it seems likely that you would have to treat the library as being
>>GPL -- so your code would have to be released as (GM)GPL. Or not
>>released, of course.
> 
> 
> IANAL either, but I have a different take: 

Neither am I; there is another phrase, "this unit".
When you modify this unit, you create a derivative work.
What's the status of the exception which seems to apply to
the original work?

The section on embedded fonts in the GPL FAQ seems to talk about
similar exceptions and their relation to derived fonts.
http://www.gnu.org/licenses/gpl-faq.html#FontException




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

* Re: ada & gui
  2005-07-29 16:51           ` Simon Wright
@ 2005-07-30  1:27             ` John B. Matthews
  2005-07-30 10:21               ` Georg Bauhaus
                                 ` (2 more replies)
  0 siblings, 3 replies; 46+ messages in thread
From: John B. Matthews @ 2005-07-30  1:27 UTC (permalink / raw)


In article <m27jf9blo5.fsf@grendel.local>,
 Simon Wright <simon@pushface.org> wrote:

> "Alex R. Mosteo" <devnull@mailinator.com> writes:
> 
> > In short, I guess this mean you can use it as long as you don't
> > modify it, and in that case you must contribute or publish the
> > modification in AWS itself, but not your code. Someone familiar with
> > that license confirm this?
> 
> IANAL, any more than anyone else here, but my take on this is that if
> you use an unmodified GMGPL library there's no impact on your code. If
> however the GMGPL library has to be modified in order for your code to
> work it seems likely that you would have to treat the library as being
> GPL -- so your code would have to be released as (GM)GPL. Or not
> released, of course.

IANAL either, but I have a different take: 

The phrase "your code" may be ambiguous. There's "your code" modifying 
the library, which is clearly covered by the GPL. I'm not so sure about 
"your code" that uses the library.

If you modify a GMGPL library and distribute the modified code, you have 
to provide the modifications, as required by the GPL. Now you choose the 
license under which to redistribute your modified library. The GPL 
requires that you "not impose any further restrictions on the 
recipients' exercise of the rights granted herein." Doesn't that 
preclude your choosing a license that's more restrictive than GMGPL. If 
you redistribute under GMGPL, then your code that uses the library would 
be explicitly exempt from the linking provision, just as it was before 
you started.

I can't help wondering if the GNAT modification was designed to achieve 
just this effect.

-- 
John
jmatthews at wright dot edu
www dot wright dot edu/~john.matthews/



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

* Re: ada & gui
  2005-07-29 13:16         ` Alex R. Mosteo
  2005-07-29 13:58           ` Ludovic Brenta
@ 2005-07-29 16:51           ` Simon Wright
  2005-07-30  1:27             ` John B. Matthews
  1 sibling, 1 reply; 46+ messages in thread
From: Simon Wright @ 2005-07-29 16:51 UTC (permalink / raw)


"Alex R. Mosteo" <devnull@mailinator.com> writes:

> In short, I guess this mean you can use it as long as you don't
> modify it, and in that case you must contribute or publish the
> modification in AWS itself, but not your code. Someone familiar with
> that license confirm this?

IANAL, any more than anyone else here, but my take on this is that if
you use an unmodified GMGPL library there's no impact on your code. If
however the GMGPL library has to be modified in order for your code to
work it seems likely that you would have to treat the library as being
GPL -- so your code would have to be released as (GM)GPL. Or not
released, of course.



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

* Re: ada & gui
  2005-07-29 11:33 ` Martin Dowie
@ 2005-07-29 14:59   ` Jacob Sparre Andersen
  0 siblings, 0 replies; 46+ messages in thread
From: Jacob Sparre Andersen @ 2005-07-29 14:59 UTC (permalink / raw)


Martin Dowie wrote:

> This seems like a fairly common problem - GtkAda does have a certain
> 'look' on windows that isn't as clean as Claw but Claw is
> Windows-only.

I have heard rumours that there are themes for GtkAda which makes it look
more like ordinary Microsoft applications.

> I have toyed with creating an abstract 'GUI' library (see below) so
> you could choose between GUI-implementations at compile time.

That would definitely be nice.  But wasn't that the idea with GtkAda?
(or at least with Gtk+?)

> Any thoughts pros/cons to this sort of framework?

A framework which can make both platform-specific and cross-platform
look-and-feel GUIs is definitely on my wishlist.  I have considered
porting Claw (as a framework) to some X GUI APIs (with GtkAda at the
top of the list).

Jacob
-- 
"Very small. Go to sleep" -- monster (not drooling)




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

* Re: ada & gui
  2005-07-29 14:12   ` Szymon Guz
  2005-07-29 14:27     ` Ludovic Brenta
@ 2005-07-29 14:27     ` Alex R. Mosteo
  1 sibling, 0 replies; 46+ messages in thread
From: Alex R. Mosteo @ 2005-07-29 14:27 UTC (permalink / raw)


Szymon Guz wrote:
> Ludovic Brenta wrote:
> 
>> Szymon Guz wrote :
>>
>>
>>> Hi,
>>> I've got to create a database application for my client and I've got a
>>> problem with choosing the apropriate language and libraries. Program
>>> must connect to a database (I chose Postgresql) and must have nice gui.
>>> What is more it has to work under windows and linux.
>>>
>>> First of all I want to use Ada, bu what with the gui ? In my opinion,
>>> maybe I'm wrong, the GTK-made gui isn't nice for a normal windows user.
>>> My application must work under windows, but also there should be the
>>> possibility to work under linux. My next chose is C# with mono, but
>>> there also is gtk when talking about multiplatform application. Next, I
>>> thought about wxWindows (I still like this name), but there is no Ada
>>> binding and I want to avoid C and C++ as much as I can.
>>>
>>> Can someone help me with some good advice ?
>>
>>
>>
>> Would your definition of a "nice GUI" allow a web application with AWS?
>>
> 
> I've already read into documentation to the AWS and I must say that it 
> is really nice, but for multiusers environment with server but what 
> about one-user application uses on a notebook ?

That's pretty much the same. You launch the application locally and then 
open a browser pointing to the appropriate port in localhost. Using a 
stub launcher which do both you can abstract this fact to the users.



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

* Re: ada & gui
  2005-07-29 14:12   ` Szymon Guz
@ 2005-07-29 14:27     ` Ludovic Brenta
  2005-07-29 14:27     ` Alex R. Mosteo
  1 sibling, 0 replies; 46+ messages in thread
From: Ludovic Brenta @ 2005-07-29 14:27 UTC (permalink / raw)


Szimon Guy wrote:
> I've already read into documentation to the AWS and I must say that
> it is really nice, but for multiusers environment with server but
> what about one-user application uses on a notebook ?

Of course, AWS can run on localhost, just like you can run your
PostgreSQL server on localhost too.  If you are concerned about the
memory footprint of AWS applications, I think it is probably less than
the equivalent Deplhi or GtkAda client, since most of it would be
absorbed into the general footprint of your web browser.

-- 
Ludovic Brenta.




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

* Re: ada & gui
  2005-07-29 13:59       ` Szymon Guz
@ 2005-07-29 14:20         ` Ludovic Brenta
  0 siblings, 0 replies; 46+ messages in thread
From: Ludovic Brenta @ 2005-07-29 14:20 UTC (permalink / raw)


Szimon Guy wrote:
> yea, that's true, but I still need some kind of a rad tool
> integrated with debugger and some other things. Now I write programs
> in delphi and I'd like to have this kind of ide for ada and
> unfortunatelly there isn't any. I want to fast write applications
> with windows style gui and use database for that. I need also a
> library for manipulating images. I'd like to use ada for that but
> won't it complicate my work too much ?

For the database, GNADE is good, or try APQ [1].

For the portable GUI, GtkAda has an interface to GLADE, the GUI
builder; and I hear that RAPID[2] can also generate Ada code for
GtkAda or TASH.  Unfortunately, RAPID has not been packaged for
Debian; but it uses TASH, which has.

[1] http://home.cogeco.ca/~ve3wwg/software.html
[2] ftp://ftp.usafa.af.mil/pub/dfcs/carlisle/usafa/rapid/index.html

-- 
Ludovic Brenta.




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

* Re: ada & gui
  2005-07-29 11:10 ` Ludovic Brenta
  2005-07-29 11:43   ` Szymon Guz
@ 2005-07-29 14:12   ` Szymon Guz
  2005-07-29 14:27     ` Ludovic Brenta
  2005-07-29 14:27     ` Alex R. Mosteo
  1 sibling, 2 replies; 46+ messages in thread
From: Szymon Guz @ 2005-07-29 14:12 UTC (permalink / raw)


Ludovic Brenta wrote:
> Szymon Guz wrote :
> 
> 
>>Hi,
>>I've got to create a database application for my client and I've got a
>>problem with choosing the apropriate language and libraries. Program
>>must connect to a database (I chose Postgresql) and must have nice gui.
>>What is more it has to work under windows and linux.
>>
>>First of all I want to use Ada, bu what with the gui ? In my opinion,
>>maybe I'm wrong, the GTK-made gui isn't nice for a normal windows user.
>>My application must work under windows, but also there should be the
>>possibility to work under linux. My next chose is C# with mono, but
>>there also is gtk when talking about multiplatform application. Next, I
>>thought about wxWindows (I still like this name), but there is no Ada
>>binding and I want to avoid C and C++ as much as I can.
>>
>>Can someone help me with some good advice ?
> 
> 
> Would your definition of a "nice GUI" allow a web application with AWS?
> 

I've already read into documentation to the AWS and I must say that it 
is really nice, but for multiusers environment with server but what 
about one-user application uses on a notebook ?



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

* Re: ada & gui
  2005-07-29 13:27     ` Ludovic Brenta
@ 2005-07-29 13:59       ` Szymon Guz
  2005-07-29 14:20         ` Ludovic Brenta
  0 siblings, 1 reply; 46+ messages in thread
From: Szymon Guz @ 2005-07-29 13:59 UTC (permalink / raw)


Ludovic Brenta wrote:
> Ada does not lack many things.  Check out Debian as an Ada development
> platform:
> 
> gnade-dev            Development files for the GNat Ada Database
> Environment
> gnade-doc            Documentation for the GNat Ada Database
> Environment
> gnat                 The GNU Ada 95 compiler
> gnat-gps             The GNAT Programming System - advanced IDE for C
> and Ada
> libaws-dev           Ada Web Server development files
> libaws-doc           Ada Web Server documentation
> libaws2              Ada Web Server shared library
> libgnademysql1       MySQL specific runtime library for GNADE
> libgnadeodbc1        Runtime library for the GNat Ada Database
> Environment
> libgnadepostgresql1  PostgreQSL specific runtime library for GNADE
> libgnadesqlite1      SQLite specific runtime library for GNADE
> 
> .... and this is but one sample of the wealth of Ada packages in Debian.
> 
> Also, not part of Debian, but available from Ada-France:
> 
> libtash-dev          TASH, the Tcl Ada SHell - development files
> libtash-doc          TASH, the Tcl Ada SHell - documentation
> libtash8             TASH, the Tcl Ada SHell - runtime library
> 

yea, that's true, but I still need some kind of a rad tool integrated 
with debugger and some other things. Now I write programs in delphi and 
I'd like to have this kind of ide for ada and unfortunatelly there isn't 
any. I want to fast write applications with windows style gui and use 
database for that. I need also a library for manipulating images. I'd 
like to use ada for that but won't it complicate my work too much ?



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

* Re: ada & gui
  2005-07-29 13:16         ` Alex R. Mosteo
@ 2005-07-29 13:58           ` Ludovic Brenta
  2005-07-29 16:51           ` Simon Wright
  1 sibling, 0 replies; 46+ messages in thread
From: Ludovic Brenta @ 2005-07-29 13:58 UTC (permalink / raw)


Alex R. Mosteo wrote:
> In short, I guess this mean you can use it as long as you don't modify
> it, and in that case you must contribute or publish the modification in
> AWS itself, but not your code. Someone familiar with that license
> confirm this?

You have to distribute your changes to AWS with your application, or
offer them (in writing) to your customers.  If your program is only
used internally, you can keep your changes secret.  If you run your
AWS-based GUI on your own server, then you don't have to distribute
*any* source code, even if your customers use your application from
the other side of the world.

AdaCore does that, for example; they have a cool web application
called the GNAT Tracker [1], written in Ada with AWS, and for which
they don't have to distribute the souces since customers don't
technically run it on their computers.

[1] http://www.adacore.com/gnat_tracker.php

-- 
Ludovic Brenta.




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

* Re: ada & gui
  2005-07-29 12:23   ` Szymon Guz
@ 2005-07-29 13:27     ` Ludovic Brenta
  2005-07-29 13:59       ` Szymon Guz
  0 siblings, 1 reply; 46+ messages in thread
From: Ludovic Brenta @ 2005-07-29 13:27 UTC (permalink / raw)


Ada does not lack many things.  Check out Debian as an Ada development
platform:

gnade-dev            Development files for the GNat Ada Database
Environment
gnade-doc            Documentation for the GNat Ada Database
Environment
gnat                 The GNU Ada 95 compiler
gnat-gps             The GNAT Programming System - advanced IDE for C
and Ada
libaws-dev           Ada Web Server development files
libaws-doc           Ada Web Server documentation
libaws2              Ada Web Server shared library
libgnademysql1       MySQL specific runtime library for GNADE
libgnadeodbc1        Runtime library for the GNat Ada Database
Environment
libgnadepostgresql1  PostgreQSL specific runtime library for GNADE
libgnadesqlite1      SQLite specific runtime library for GNADE

... and this is but one sample of the wealth of Ada packages in Debian.

Also, not part of Debian, but available from Ada-France:

libtash-dev          TASH, the Tcl Ada SHell - development files
libtash-doc          TASH, the Tcl Ada SHell - documentation
libtash8             TASH, the Tcl Ada SHell - runtime library

-- 
Ludovic Brenta.




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

* Re: ada & gui
  2005-07-29 12:52       ` Szymon Guz
  2005-07-29 13:16         ` Alex R. Mosteo
@ 2005-07-29 13:19         ` Ludovic Brenta
  1 sibling, 0 replies; 46+ messages in thread
From: Ludovic Brenta @ 2005-07-29 13:19 UTC (permalink / raw)


Actually it's GMGPL (GNAT Modified GPL), i.e. it is the GPL with:

-- As a special exception,  if other files  instantiate  generics from
this --
-- unit, or you link  this unit with other files  to produce an
executable, --
-- this  unit  does not  by itself cause  the resulting  executable  to
 be --
-- covered  by the  GNU  General  Public  License.  This exception does
not --
-- however invalidate  any other reasons why  the executable file
might be --
-- covered by the  GNU Public License.
    --

-- 
Ludovic Brenta.




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

* Re: ada & gui
  2005-07-29 12:52       ` Szymon Guz
@ 2005-07-29 13:16         ` Alex R. Mosteo
  2005-07-29 13:58           ` Ludovic Brenta
  2005-07-29 16:51           ` Simon Wright
  2005-07-29 13:19         ` Ludovic Brenta
  1 sibling, 2 replies; 46+ messages in thread
From: Alex R. Mosteo @ 2005-07-29 13:16 UTC (permalink / raw)


Szymon Guz wrote:
> Alex R. Mosteo wrote:
> 
>> Szymon Guz wrote:
>>
>>> Ludovic Brenta wrote:
>>>
>>>> Szymon Guz wrote :
>>>>
>>>>
>>>>> Hi,
>>>>> I've got to create a database application for my client and I've got a
>>>>> problem with choosing the apropriate language and libraries. Program
>>>>> must connect to a database (I chose Postgresql) and must have nice 
>>>>> gui.
>>>>> What is more it has to work under windows and linux.
>>>>>
>>>>> First of all I want to use Ada, bu what with the gui ? In my opinion,
>>>>> maybe I'm wrong, the GTK-made gui isn't nice for a normal windows 
>>>>> user.
>>>>> My application must work under windows, but also there should be the
>>>>> possibility to work under linux. My next chose is C# with mono, but
>>>>> there also is gtk when talking about multiplatform application. 
>>>>> Next, I
>>>>> thought about wxWindows (I still like this name), but there is no Ada
>>>>> binding and I want to avoid C and C++ as much as I can.
>>>>>
>>>>> Can someone help me with some good advice ?
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Would your definition of a "nice GUI" allow a web application with AWS?
>>>>
>>>
>>> Well, I must say that I haven't thought about that. I think that this 
>>> aproach would be nice, but I'd like something cheaper.
>>
>>
>>
>> Cheaper? AWS is [L?]GPL and mature, and indeed web GUIs are a great 
>> solution for portability, with great facilities for 
>> customization/skinning. If you don't require real-time updating, I'd 
>> say this is the easiest way and people is more and more used to web 
>> guis, thanks to gmail and similar. All the routers I've had used some 
>> web gui for administration. Even if real time updating is a need, 
>> adding java applets to the mix could be enough, I guess... The only 
>> drawback is that the template creation is kind of craftsmanship, but 
>> ITOH you can use your HTML editor of choice for everything else.
>>
>> In any case, I've extensively used AWS and recommend it without a 
>> doubt if you want to consider the web option and remaining in Ada 
>> realm is a plus for you. Fairly easy to learn. Clever use of 
>> templates/css can do wonders.
>>
>> BTW, I've too used postgresql from Ada with the Gnade binding and it 
>> is really a great combination, really easy to use :)
> 
> 
> I had to miss something, I thought AWS isn't LGPL.

I've just checked my copy of aws.ads: it is GPL with the modification 
used by GNAT: you can link to it without becoming GPL yourself.

In short, I guess this mean you can use it as long as you don't modify 
it, and in that case you must contribute or publish the modification in 
AWS itself, but not your code. Someone familiar with that license 
confirm this?



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

* Re: ada & gui
  2005-07-29 12:40     ` Alex R. Mosteo
@ 2005-07-29 12:52       ` Szymon Guz
  2005-07-29 13:16         ` Alex R. Mosteo
  2005-07-29 13:19         ` Ludovic Brenta
  0 siblings, 2 replies; 46+ messages in thread
From: Szymon Guz @ 2005-07-29 12:52 UTC (permalink / raw)


Alex R. Mosteo wrote:
> Szymon Guz wrote:
> 
>> Ludovic Brenta wrote:
>>
>>> Szymon Guz wrote :
>>>
>>>
>>>> Hi,
>>>> I've got to create a database application for my client and I've got a
>>>> problem with choosing the apropriate language and libraries. Program
>>>> must connect to a database (I chose Postgresql) and must have nice gui.
>>>> What is more it has to work under windows and linux.
>>>>
>>>> First of all I want to use Ada, bu what with the gui ? In my opinion,
>>>> maybe I'm wrong, the GTK-made gui isn't nice for a normal windows user.
>>>> My application must work under windows, but also there should be the
>>>> possibility to work under linux. My next chose is C# with mono, but
>>>> there also is gtk when talking about multiplatform application. Next, I
>>>> thought about wxWindows (I still like this name), but there is no Ada
>>>> binding and I want to avoid C and C++ as much as I can.
>>>>
>>>> Can someone help me with some good advice ?
>>>
>>>
>>>
>>>
>>> Would your definition of a "nice GUI" allow a web application with AWS?
>>>
>>
>> Well, I must say that I haven't thought about that. I think that this 
>> aproach would be nice, but I'd like something cheaper.
> 
> 
> Cheaper? AWS is [L?]GPL and mature, and indeed web GUIs are a great 
> solution for portability, with great facilities for 
> customization/skinning. If you don't require real-time updating, I'd say 
> this is the easiest way and people is more and more used to web guis, 
> thanks to gmail and similar. All the routers I've had used some web gui 
> for administration. Even if real time updating is a need, adding java 
> applets to the mix could be enough, I guess... The only drawback is that 
> the template creation is kind of craftsmanship, but ITOH you can use 
> your HTML editor of choice for everything else.
> 
> In any case, I've extensively used AWS and recommend it without a doubt 
> if you want to consider the web option and remaining in Ada realm is a 
> plus for you. Fairly easy to learn. Clever use of templates/css can do 
> wonders.
> 
> BTW, I've too used postgresql from Ada with the Gnade binding and it is 
> really a great combination, really easy to use :)

I had to miss something, I thought AWS isn't LGPL.



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

* Re: ada & gui
  2005-07-29 11:43   ` Szymon Guz
@ 2005-07-29 12:40     ` Alex R. Mosteo
  2005-07-29 12:52       ` Szymon Guz
  0 siblings, 1 reply; 46+ messages in thread
From: Alex R. Mosteo @ 2005-07-29 12:40 UTC (permalink / raw)


Szymon Guz wrote:
> Ludovic Brenta wrote:
> 
>> Szymon Guz wrote :
>>
>>
>>> Hi,
>>> I've got to create a database application for my client and I've got a
>>> problem with choosing the apropriate language and libraries. Program
>>> must connect to a database (I chose Postgresql) and must have nice gui.
>>> What is more it has to work under windows and linux.
>>>
>>> First of all I want to use Ada, bu what with the gui ? In my opinion,
>>> maybe I'm wrong, the GTK-made gui isn't nice for a normal windows user.
>>> My application must work under windows, but also there should be the
>>> possibility to work under linux. My next chose is C# with mono, but
>>> there also is gtk when talking about multiplatform application. Next, I
>>> thought about wxWindows (I still like this name), but there is no Ada
>>> binding and I want to avoid C and C++ as much as I can.
>>>
>>> Can someone help me with some good advice ?
>>
>>
>>
>> Would your definition of a "nice GUI" allow a web application with AWS?
>>
> 
> Well, I must say that I haven't thought about that. I think that this 
> aproach would be nice, but I'd like something cheaper.

Cheaper? AWS is [L?]GPL and mature, and indeed web GUIs are a great 
solution for portability, with great facilities for 
customization/skinning. If you don't require real-time updating, I'd say 
this is the easiest way and people is more and more used to web guis, 
thanks to gmail and similar. All the routers I've had used some web gui 
for administration. Even if real time updating is a need, adding java 
applets to the mix could be enough, I guess... The only drawback is that 
the template creation is kind of craftsmanship, but ITOH you can use 
your HTML editor of choice for everything else.

In any case, I've extensively used AWS and recommend it without a doubt 
if you want to consider the web option and remaining in Ada realm is a 
plus for you. Fairly easy to learn. Clever use of templates/css can do 
wonders.

BTW, I've too used postgresql from Ada with the Gnade binding and it is 
really a great combination, really easy to use :)



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

* Re: ada & gui
  2005-07-29  9:25 ada & gui Szymon Guz
                   ` (2 preceding siblings ...)
  2005-07-29 11:33 ` Martin Dowie
@ 2005-07-29 12:31 ` Adrien Plisson
  2005-08-02 16:11 ` Lucretia
  4 siblings, 0 replies; 46+ messages in thread
From: Adrien Plisson @ 2005-07-29 12:31 UTC (permalink / raw)


Szymon Guz wrote:
> Hi,
> I've got to create a database application for my client and I've got a 
> problem with choosing the apropriate language and libraries. Program 
> must connect to a database (I chose Postgresql) and must have nice gui. 
> What is more it has to work under windows and linux.

there are numerous databases working under both windows and linux 
(mysql, postgresql, sqlite, ...), there also are numerous GUI 
libraries working on both (see: <http://www.atai.org/guitool/>).

> First of all I want to use Ada, bu what with the gui ? In my opinion, 
> maybe I'm wrong, the GTK-made gui isn't nice for a normal windows user. 
> My application must work under windows, but also there should be the 
> possibility to work under linux. My next chose is C# with mono, but 
> there also is gtk when talking about multiplatform application. Next, I 
> thought about wxWindows (I still like this name), but there is no Ada 
> binding and I want to avoid C and C++ as much as I can.

are you sure you want to write this application in Ada ? it would be 
easier to choose a GUI framework in other languages, not necessarily 
C/C++. i wrote very nice GUI applications using python+wxWidgets 
(thanks microsoft for this name, i also prefer the old one), but there 
are many other languages available.

you may consider writing the core app in Ada and the GUI in another 
language, using anything you like to make the 2 work together: DLLs, 
IPC...

you may also consider a Tcl/Tk binding for Ada like TASH 
(<http://www.adatcl.com/>).

there is a list of available GUI framework bindings on adapower 
(<http://www.adapower.com/index.php?Command=Class&ClassID=AdaGUI&Title=Ada+GUI>)

-- 
rien



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

* Re: ada & gui
  2005-07-29 11:28 ` Jeff Creem
@ 2005-07-29 12:23   ` Szymon Guz
  2005-07-29 13:27     ` Ludovic Brenta
  0 siblings, 1 reply; 46+ messages in thread
From: Szymon Guz @ 2005-07-29 12:23 UTC (permalink / raw)


Jeff Creem wrote:
> Szymon Guz wrote:
> 
>> Hi,
>> I've got to create a database application for my client and I've got a 
>> problem with choosing the apropriate language and libraries. Program 
>> must connect to a database (I chose Postgresql) and must have nice 
>> gui. What is more it has to work under windows and linux.
>>
>> First of all I want to use Ada, bu what with the gui ? In my opinion, 
>> maybe I'm wrong, the GTK-made gui isn't nice for a normal windows 
>> user. My application must work under windows, but also there should be 
>> the possibility to work under linux. My next chose is C# with mono, 
>> but there also is gtk when talking about multiplatform application. 
>> Next, I thought about wxWindows (I still like this name), but there is 
>> no Ada binding and I want to avoid C and C++ as much as I can.
>>
>> Can someone help me with some good advice ?
>>
>> regards
>> Szymon Guz
> 
> 
> 
> GtkAda under windows does fell somewhat clunky at times though it
> certainly is better now than it was a few years ago. I would not
> recommend this approach (under Windows) though unless you are willing to
> pay for support for the compiler/bindings from someone like AdaCore.
> 
> One thing that seems to really help the user experience is to use the
> native file selection dialog under Windows (which is what GPS does in
> some cases). The old Gtk file selector widget was pretty poor and there
> is not Ada binding to the newer Gtk selector widget.
> 
> How about something like using Eclipse, writing it in Java and using the
> eclipse visual editor to do the GUI http://www.eclipse.org/vep
> 
> While I find many JAva GUIs provide a less than ideal user experience
> (compared to fully native apps), most SWT Java apps (like eclipse) seem
> to operate fairly well.
> 
> 
> 
> 
> 

ok, but what about gtk# and mono ? It works under linux and windows, and 
  there is also a library for connecting with postgresql and many things 
that ada lacks. But unfortunately this is not Ada. Ada is nice, is great 
, is... but lacks many libraries, lacks good ide, lacks good window 
library so how can I use it ?



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

* Re: ada & gui
  2005-07-29 11:10 ` Ludovic Brenta
@ 2005-07-29 11:43   ` Szymon Guz
  2005-07-29 12:40     ` Alex R. Mosteo
  2005-07-29 14:12   ` Szymon Guz
  1 sibling, 1 reply; 46+ messages in thread
From: Szymon Guz @ 2005-07-29 11:43 UTC (permalink / raw)


Ludovic Brenta wrote:
> Szymon Guz wrote :
> 
> 
>>Hi,
>>I've got to create a database application for my client and I've got a
>>problem with choosing the apropriate language and libraries. Program
>>must connect to a database (I chose Postgresql) and must have nice gui.
>>What is more it has to work under windows and linux.
>>
>>First of all I want to use Ada, bu what with the gui ? In my opinion,
>>maybe I'm wrong, the GTK-made gui isn't nice for a normal windows user.
>>My application must work under windows, but also there should be the
>>possibility to work under linux. My next chose is C# with mono, but
>>there also is gtk when talking about multiplatform application. Next, I
>>thought about wxWindows (I still like this name), but there is no Ada
>>binding and I want to avoid C and C++ as much as I can.
>>
>>Can someone help me with some good advice ?
> 
> 
> Would your definition of a "nice GUI" allow a web application with AWS?
> 

Well, I must say that I haven't thought about that. I think that this 
aproach would be nice, but I'd like something cheaper.

szymon guz



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

* Re: ada & gui
  2005-07-29  9:25 ada & gui Szymon Guz
  2005-07-29 11:10 ` Ludovic Brenta
  2005-07-29 11:28 ` Jeff Creem
@ 2005-07-29 11:33 ` Martin Dowie
  2005-07-29 14:59   ` Jacob Sparre Andersen
  2005-07-29 12:31 ` Adrien Plisson
  2005-08-02 16:11 ` Lucretia
  4 siblings, 1 reply; 46+ messages in thread
From: Martin Dowie @ 2005-07-29 11:33 UTC (permalink / raw)


This seems like a fairly common problem - GtkAda does have a certain 'look'
on windows that isn't as clean as Claw but Claw is Windows-only.

I have toyed with creating an abstract 'GUI' library (see below) so you
could choose between GUI-implementations at compile time. Seems to work at a
_very_ small scale - could it work with more sophisticated windowing?

From this I managed to get Claw and GtkAda both creating a window (wow!).

The new Ada2005 'interface' could clean the API up quite a bit.

Any thoughts pros/cons to this sort of framework? Could it form the basis of
a 'standard' Ada GUI library?

-- Martin


-- Top level
package GUI is
   pragma Pure (Gui);

end GUI;

-- Window aspects - could be others, e.g. for fonts, etc
package GUI.Windows_Interface is
   pragma Preelaborate (GUI.Windows_Interface);

   type A_Window is abstract tagged null record;

   type A_Window_Ptr is access all A_Window'Class;

   procedure Create (Window   : out A_Window'Class;
                     Child_Of :     A_Window_Ptr := null;
                     Title    :     String       := "") is abstract;

   procedure Destroy (Window : in out A_Window'Class) is abstract;

   procedure Restore (Window : in out A_Window'Class) is abstract;

   procedure Maximise (Window : in out A_Window'Class) is abstract;

   procedure Minimise (Window : in out A_Window'Class) is abstract;

end GUI.Windows_Interface;

with GUI.Windows_Interface;


-- Applications required Windowing functions - different for each app
generic
   type Window_Type is new GUI.Windows_Interface.A_Window with private;
   type Window_Type_Ptr is access all Window_Type;
   with procedure Create (Window   : out Window_Type'Class;
                          Child_Of :     Window_Type_Ptr := null;
                          Title    :     String          := "") is <>;
   with procedure Destroy (Window : in out Window_Type'Class) is <>;
package GUI_Interface is
end GUI_Interface;






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

* Re: ada & gui
  2005-07-29  9:25 ada & gui Szymon Guz
  2005-07-29 11:10 ` Ludovic Brenta
@ 2005-07-29 11:28 ` Jeff Creem
  2005-07-29 12:23   ` Szymon Guz
  2005-07-29 11:33 ` Martin Dowie
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 46+ messages in thread
From: Jeff Creem @ 2005-07-29 11:28 UTC (permalink / raw)


Szymon Guz wrote:
> Hi,
> I've got to create a database application for my client and I've got a 
> problem with choosing the apropriate language and libraries. Program 
> must connect to a database (I chose Postgresql) and must have nice gui. 
> What is more it has to work under windows and linux.
> 
> First of all I want to use Ada, bu what with the gui ? In my opinion, 
> maybe I'm wrong, the GTK-made gui isn't nice for a normal windows user. 
> My application must work under windows, but also there should be the 
> possibility to work under linux. My next chose is C# with mono, but 
> there also is gtk when talking about multiplatform application. Next, I 
> thought about wxWindows (I still like this name), but there is no Ada 
> binding and I want to avoid C and C++ as much as I can.
> 
> Can someone help me with some good advice ?
> 
> regards
> Szymon Guz


GtkAda under windows does fell somewhat clunky at times though it
certainly is better now than it was a few years ago. I would not
recommend this approach (under Windows) though unless you are willing to
pay for support for the compiler/bindings from someone like AdaCore.

One thing that seems to really help the user experience is to use the
native file selection dialog under Windows (which is what GPS does in
some cases). The old Gtk file selector widget was pretty poor and there
is not Ada binding to the newer Gtk selector widget.

How about something like using Eclipse, writing it in Java and using the
eclipse visual editor to do the GUI http://www.eclipse.org/vep

While I find many JAva GUIs provide a less than ideal user experience
(compared to fully native apps), most SWT Java apps (like eclipse) seem
to operate fairly well.








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

* Re: ada & gui
  2005-07-29  9:25 ada & gui Szymon Guz
@ 2005-07-29 11:10 ` Ludovic Brenta
  2005-07-29 11:43   ` Szymon Guz
  2005-07-29 14:12   ` Szymon Guz
  2005-07-29 11:28 ` Jeff Creem
                   ` (3 subsequent siblings)
  4 siblings, 2 replies; 46+ messages in thread
From: Ludovic Brenta @ 2005-07-29 11:10 UTC (permalink / raw)


Szymon Guz wrote :

> Hi,
> I've got to create a database application for my client and I've got a
> problem with choosing the apropriate language and libraries. Program
> must connect to a database (I chose Postgresql) and must have nice gui.
> What is more it has to work under windows and linux.
>
> First of all I want to use Ada, bu what with the gui ? In my opinion,
> maybe I'm wrong, the GTK-made gui isn't nice for a normal windows user.
> My application must work under windows, but also there should be the
> possibility to work under linux. My next chose is C# with mono, but
> there also is gtk when talking about multiplatform application. Next, I
> thought about wxWindows (I still like this name), but there is no Ada
> binding and I want to avoid C and C++ as much as I can.
>
> Can someone help me with some good advice ?

Would your definition of a "nice GUI" allow a web application with AWS?

-- 
Ludovic Brenta.




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

* ada & gui
@ 2005-07-29  9:25 Szymon Guz
  2005-07-29 11:10 ` Ludovic Brenta
                   ` (4 more replies)
  0 siblings, 5 replies; 46+ messages in thread
From: Szymon Guz @ 2005-07-29  9:25 UTC (permalink / raw)


Hi,
I've got to create a database application for my client and I've got a 
problem with choosing the apropriate language and libraries. Program 
must connect to a database (I chose Postgresql) and must have nice gui. 
What is more it has to work under windows and linux.

First of all I want to use Ada, bu what with the gui ? In my opinion, 
maybe I'm wrong, the GTK-made gui isn't nice for a normal windows user. 
My application must work under windows, but also there should be the 
possibility to work under linux. My next chose is C# with mono, but 
there also is gtk when talking about multiplatform application. Next, I 
thought about wxWindows (I still like this name), but there is no Ada 
binding and I want to avoid C and C++ as much as I can.

Can someone help me with some good advice ?

regards
Szymon Guz



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

end of thread, other threads:[~2022-04-10 13:23 UTC | newest]

Thread overview: 46+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-05 16:26 Ada_GUI AdaMagica
2022-04-05 19:30 ` Ada_GUI Jeffrey R.Carter
2022-04-06  7:21   ` Ada_GUI Jeffrey R.Carter
2022-04-06 15:29     ` Ada_GUI AdaMagica
2022-04-06 15:38       ` Ada_GUI Jeffrey R.Carter
2022-04-06 15:52         ` Ada_GUI AdaMagica
2022-04-08 14:05           ` Ada_GUI AdaMagica
2022-04-08 14:31             ` Ada_GUI Jeffrey R.Carter
2022-04-08 20:56               ` Ada_GUI Jeffrey R.Carter
2022-04-09 11:59               ` Ada_GUI AdaMagica
2022-04-09 13:38                 ` Ada_GUI Jeffrey R.Carter
2022-04-10 11:45                   ` Ada_GUI AdaMagica
2022-04-10 13:23                     ` Ada_GUI Jeffrey R.Carter
2022-04-10 12:12                   ` Ada_GUI AdaMagica
2022-04-06 15:31     ` Ada_GUI Jeffrey R.Carter
  -- strict thread matches above, loose matches on Subject: below --
2010-12-30 14:27 ada gui Robin
2010-12-30 19:54 ` Randy Brukardt
2010-12-31  8:11   ` Robin
2005-07-29  9:25 ada & gui Szymon Guz
2005-07-29 11:10 ` Ludovic Brenta
2005-07-29 11:43   ` Szymon Guz
2005-07-29 12:40     ` Alex R. Mosteo
2005-07-29 12:52       ` Szymon Guz
2005-07-29 13:16         ` Alex R. Mosteo
2005-07-29 13:58           ` Ludovic Brenta
2005-07-29 16:51           ` Simon Wright
2005-07-30  1:27             ` John B. Matthews
2005-07-30 10:21               ` Georg Bauhaus
2005-07-30 16:27                 ` John B. Matthews
2005-07-30 20:30               ` Simon Wright
2005-08-01  0:02                 ` John B. Matthews
2005-08-01 13:32               ` Marc A. Criley
2005-08-01 18:49                 ` Jeffrey Carter
2005-07-29 13:19         ` Ludovic Brenta
2005-07-29 14:12   ` Szymon Guz
2005-07-29 14:27     ` Ludovic Brenta
2005-07-29 14:27     ` Alex R. Mosteo
2005-07-29 11:28 ` Jeff Creem
2005-07-29 12:23   ` Szymon Guz
2005-07-29 13:27     ` Ludovic Brenta
2005-07-29 13:59       ` Szymon Guz
2005-07-29 14:20         ` Ludovic Brenta
2005-07-29 11:33 ` Martin Dowie
2005-07-29 14:59   ` Jacob Sparre Andersen
2005-07-29 12:31 ` Adrien Plisson
2005-08-02 16:11 ` Lucretia

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