[gtkada] GtkAda, W2K and tasks

Tony Gair tonygair at btinternet.com
Tue Feb 19 21:17:37 CET 2002


Hi Domi ique,
     You could separate your application into a gui for windows and a main
task running on linux. The connections between the two running on adasockets
for linux, and adasockets for windows. I have some code that has worked on
linux to linux, which uses the gtk idle function to update the messages on
the screen.
let me know if you would find this useful,
Regards
Tony Gair

----- Original Message -----
From: "Dominique Canazzi" <dominique.canazzi at wanadoo.fr>
To: <gtkada at lists.act-europe.fr>
Sent: Monday, February 18, 2002 3:15 PM
Subject: [gtkada] GtkAda, W2K and tasks


Hello.

I am currently writing a GUI for a heavy-computing Ada 95 application,
using GtkAda, with the following scheme:
- the main task performs computing.
- the Gtk main loop is in another task.
- the long-life widgets (toplevel windows, ...) are created
  within the main task, before te main loop task is created.
- some slow drawings are done in other tasks.
- most drawings are done by the main task.
Of course, I protect Gdk/Gtk calls with le Gtk global lock.

All that works fine under Linux (rh 6.2, gnat 3.14a1, GtkAda 1.2.12).

Under W2K (gnat 3.14a1, GtkAda 1.3.12), the program ends correctly
without errors, but some widgets (menubar, statusbar) are never drawn,
and kbd/mouse input is ignored in all my windows. However, all drawings in
these windows are correct (in other words, they seem to react to
application-
generated events, but not to input-device-generated events).

Any hint?

-- dominique.
--
------------------------
My thoughts are free.
Mes pensées sont libres.









More information about the gtkada mailing list