ANN: GtkAda contributions v2.13

59 views
Skip to first unread message

Dmitry A. Kazakov

unread,
May 13, 2012, 10:41:00 AM5/13/12
to
A contribution to GtkAda dealing with the following issues:

- Tasking support;
- Custom models for tree view widget;
- Custom cell renderers for tree view widget;
- Multi-columned derived model;
- Extension derived model (to add columns to an existing model);
- Abstract caching model for directory-like data;
- Tree view and list view widgets for navigational browsing of abstract
caching models;
- File system navigation widgets with wildcard filtering;
- Resource styles;
- Capturing resources of a widget;
- Embeddable images;
- Some missing subprograms and bug fixes;
- Measurement unit selection widget and dialogs;
- Improved hue-luminance-saturation color model;
- Simplified image buttons and buttons customizable by style properties;
- Controlled Ada types for GTK+ strong and weak references;
- Simplified means to create lists of strings;
- Spawning processes synchronously and asynchronously with pipes;
- Capturing asynchronous process standard I/O by Ada tasks and by text
buffers;
- Source view widget support.

http://www.dmitry-kazakov.de/ada/gtkada_contributions.htm

Changes to the version 2.12:

The procedure Send of Generic_Message has now the Timeout parameter to
break possible deadlocks when messages are posted upon application
completion.

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

Patrick

unread,
May 13, 2012, 11:38:52 AM5/13/12
to mai...@dmitry-kazakov.de
Hi Dmitry

Thanks again for helping us all out.

I have been playing with gtk ada but I was discouraged when I read about tasking in the documentation. It seemed like it was not fully supported. Could you give me some feedback on tasking support in gtk ada? could you tell me more about your tasking contributions?

Hope your doing great-Patrick

Mart van de Wege

unread,
May 14, 2012, 1:15:17 AM5/14/12
to
"Dmitry A. Kazakov" <mai...@dmitry-kazakov.de> writes:

> http://www.dmitry-kazakov.de/ada/gtkada_contributions.htm
>
> Changes to the version 2.12:
>
> The procedure Send of Generic_Message has now the Timeout parameter to
> break possible deadlocks when messages are posted upon application
> completion.

Dmitry,

Your Debian -dev package will not install on Debian Sid, due to a
dependency on libgtkada2.24.0-dev (Sid has 2.24.1).

Usually I'd patch the build scripts and rebuild the package, but either
I'm being stupid, or the sources you offer for download don't contain
the build scripts.

Mart

--
"We will need a longer wall when the revolution comes."
--- AJS, quoting an uncertain source.

Dmitry A. Kazakov

unread,
May 14, 2012, 3:45:41 AM5/14/12
to
On Mon, 14 May 2012 07:15:17 +0200, Mart van de Wege wrote:

> Your Debian -dev package will not install on Debian Sid, due to a
> dependency on libgtkada2.24.0-dev (Sid has 2.24.1).

OK, I will check that today.

> Usually I'd patch the build scripts and rebuild the package, but either
> I'm being stupid, or the sources you offer for download don't contain
> the build scripts.

Do you mean debian/rules-mess? It is far beyond me to maintain that thing
manually. I have a set of scripts which each time generates the mess
automatically for all (32,64} x {Debian,Fedora} x packages combinations in
topological order of the packages dependencies. External dependencies like
libgtkada2 are configured manually.

Mart van de Wege

unread,
May 14, 2012, 4:48:00 AM5/14/12
to
"Dmitry A. Kazakov" <mai...@dmitry-kazakov.de> writes:

> On Mon, 14 May 2012 07:15:17 +0200, Mart van de Wege wrote:
>
>> Your Debian -dev package will not install on Debian Sid, due to a
>> dependency on libgtkada2.24.0-dev (Sid has 2.24.1).
>
> OK, I will check that today.

Thanks. I'm in no hurry though, so don't you be either, unless someone
else *really* wants to use this lib on Sid.

Dmitry A. Kazakov

unread,
May 15, 2012, 3:00:46 AM5/15/12
to
On Sun, 13 May 2012 08:38:52 -0700 (PDT), Patrick wrote:

> I have been playing with gtk ada but I was discouraged when I read about
> tasking in the documentation. It seemed like it was not fully supported.
> Could you give me some feedback on tasking support in gtk ada?

GTK is not thread-safe, that means if you would call any Gtk (and thus
GtkAda) subprogram form the thread different from the main thread (more
accurately, from the thread running the GTK messages loop), it will most
certainly crash.

> could you tell me more about your tasking contributions?

GtkAda contributions provide means for an Ada task to engage a rendezvous
with the main task. It is safe to use any GTK operations from there. It
could be done either in the traditional OO way by overriding a primitive
"visitor" operation, or per a generic package instantiation and passing a
"service" callback.

GtkAda contributions also provide convenience operations for opening simple
message boxes from any Ada task.

Further GtkAda contributions provide task-safe tracing facilities for
debugging GtkAda programs. Which supports call stack tracing, visual
navigation of the call stack, breaking upon GTK errors and warnings,
jumping to the source location using the GPS.

For further information read this:

http://www.dmitry-kazakov.de/ada/gtkada_contributions.htm#1

The subdirectory test_gtkada contains test_gtk_tasking.adb which
illustrates usage of tasking support.

Dmitry A. Kazakov

unread,
May 16, 2012, 3:10:54 PM5/16/12
to
On Mon, 14 May 2012 07:15:17 +0200, Mart van de Wege wrote:

> Your Debian -dev package will not install on Debian Sid, due to a
> dependency on libgtkada2.24.0-dev (Sid has 2.24.1).

I fixed the problem. Thank you for reporting.

Mart van de Wege

unread,
May 16, 2012, 4:08:28 PM5/16/12
to
"Dmitry A. Kazakov" <mai...@dmitry-kazakov.de> writes:

> On Mon, 14 May 2012 07:15:17 +0200, Mart van de Wege wrote:
>
>> Your Debian -dev package will not install on Debian Sid, due to a
>> dependency on libgtkada2.24.0-dev (Sid has 2.24.1).
>
> I fixed the problem. Thank you for reporting.

Great, thanks!

And let me use this as an opportunity to thank you and all the others
here in comp.lang.ada. There are a lot of very serious professional
programmers here, and yet you treat everyone, even a mere dabbling
hobbyist like me, like kings.
Reply all
Reply to author
Forward
0 new messages