comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: GtkAda using Glade
Date: Thu, 19 May 2011 12:28:16 +0200
Date: 2011-05-19T12:28:16+02:00	[thread overview]
Message-ID: <1ib5galc2x8sa$.14pxbga0o1sz0$.dlg@40tude.net> (raw)
In-Reply-To: ir2psc$gjr$1@dont-email.me

On Thu, 19 May 2011 12:02:55 +0200, J-P. Rosen wrote:

> Le 19/05/2011 09:36, Dmitry A. Kazakov a �crit :
>> That's the point. If the GUI logic could be separated from the program
>> logic, which is a Holy Grail, but absolutely unrealistic, then it would be
>> no matter in which language the stuff was generated, Ada or C. You would
>> not never look at it.
>> 
>> Unfortunately the reality is that the GUI and the functional part of the
>> program are tightly interwoven. Therefore you need to be in full control of
>> both and want to shape the program's structure as you want for the sake of
>> clear design and maintainability (Ada's strengths). Any automatically
>> generated code is just an obstacle here.
>> 
>> Sorry for sounding daemon's voice again. (:-))
>> 
> I think you should really give Glade a try (I think you said you
> didn't). Creating the various widgets (with appropriate parameters!),
> stuffing them into containers, connecting call-backs constitute a really
> boring (and error-prone) part of the development.

(That is because they are generics in GtkAda, should have been primitive
operations, but that would require making GtkAda thick bindings)

> That's what Glade does for you.

That is easy, comparing to widget subclassing (adding new signals,
properties, resource properties). Then there are custom non-widget objects
to create, e.g. cell renderers, tree stores, interfaces etc. I just don't
believe that any tool could handle this mess. (Gtk is a mess)

BTW, most boring are not handlers but things like putting a limited
component into the widget (for some reason Gtk_Widget_Record is not
limited).

I am almost sure that even handling signals does not really work with
Glade. I don't mean button click events. What about hard stuff, like events
passing parameters accessible only through GValue? There are lots of. What
about passing closure-parameters in events? That is when the receiver
object may disappear before the sender (the callback must be disconnected
before)

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de



  reply	other threads:[~2011-05-19 10:28 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-17 23:58 GtkAda using Glade Gary
2011-05-18  1:14 ` John B. Matthews
2011-05-18 11:56 ` J-P. Rosen
2011-05-18 13:58   ` Gary
2011-05-18 17:25     ` Dmitry A. Kazakov
2011-05-18 18:24       ` Gary
2011-05-18 18:27         ` Ludovic Brenta
2011-05-18 18:42           ` Gary
2011-05-18 21:54             ` Ludovic Brenta
2011-05-18 22:09               ` Gary
2011-05-18 23:15                 ` Ludovic Brenta
2011-05-19  1:52                   ` Gary
2011-05-19  5:25               ` J-P. Rosen
2011-05-19  9:23                 ` Manuel Collado
2011-05-19  9:57                   ` J-P. Rosen
2011-05-18 20:19         ` Dmitry A. Kazakov
2011-05-18 20:45           ` Gary
2011-05-19  7:36             ` Dmitry A. Kazakov
2011-05-19 10:02               ` J-P. Rosen
2011-05-19 10:28                 ` Dmitry A. Kazakov [this message]
2011-05-19 15:53                   ` J-P. Rosen
2011-05-19 22:57                     ` Gary
2011-05-20  0:54                 ` Yannick Duchêne (Hibou57)
2011-05-20  1:41                 ` Nasser M. Abbasi
2011-05-20  7:19                   ` Dmitry A. Kazakov
2011-05-20  7:34                     ` Nasser M. Abbasi
2011-05-20  7:45                       ` Dmitry A. Kazakov
2011-05-20  0:26               ` Gautier write-only
2011-05-20  7:25                 ` Dmitry A. Kazakov
2011-05-20  9:50                   ` Yannick Duchêne (Hibou57)
2011-05-22  6:22                   ` Gautier write-only
2011-05-22  7:04                   ` Gautier write-only
2011-05-22  8:16                     ` Dmitry A. Kazakov
2011-05-20  0:49               ` Yannick Duchêne (Hibou57)
2011-05-20  7:36                 ` Dmitry A. Kazakov
2011-05-20  8:01                 ` Georg Bauhaus
2011-05-20 10:00                   ` Yannick Duchêne (Hibou57)
2011-05-20 12:55                     ` Georg Bauhaus
2011-05-19  5:18         ` J-P. Rosen
2011-05-19  5:12     ` J-P. Rosen
2011-05-18 23:31 ` Rick
2011-05-19  1:52   ` Gary
replies disabled

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