 |
GTK-server |
| version 2.2 build 4 |
| About GTK-server |
The GTK-server offers a stream-oriented interface to the GTK libraries, enabling access to graphical user interfaces for shellscripts and interpreted programming languages using either GTK 1.x or 2.x.
It can be compiled as a standalone binary, which is able to communicate by a 2-way pipe or by a TCP/UDP port. The script invokes this binary, sets up a pipe or a TCP/UDP connection and prints the GTK call in plain text to the pipe or socket. The GTK-server then sends information back which can be used in the program or script.
The GTK-server can also be compiled as a shared object, from which the function "gtk" can be imported. This function acts as a wrapper around plain-text GTK commands. Please refer to the demonstration programs at the GTK-server website.
Below a summary of advantages when using the GTK-server:
- No need to learn C or C++, you can stick to your favorite programming language
- No need to hack the source of existing programming languages to realize GUI programming
- High flexibility in creating GUI's, e.g. not limited to dialogs
- Full GTK API available, the user can extend the 'gtk-server.cfg' file by himself
- Access to both GTK 1.x and GTK 2.x
- Convenient GTK test tool, easy to learn GTK programming
- Mix 64-bit userinterfaces with your 32-bit client programs.
Requirements
This application requires GTK+ version 1.2.x.
Other dependencies include:
Required:
-either GTK1, GTK2 or XForms
-either Foreign Function Interface library (libFFI), the Foreign Function Call Library (FFCall) or C/Invoke.
Optional:
-libglade: the Glade library to have support for Glade XML files |
| Latest Version: 2.2 build 4 |
. Moved to UTHASH library, fixing the following problems:
--- Fixed slow lookup performance with large configfile
--- Fixed crash when no macro definitions were found in configfile
--- Fixed crash when no GTK definitions were found in configfile
. Fixed potential bug: memset in TCP and UDP interface to secure size
. Fixed some illegal memory writes in macro routines (Valgrind)
. Fixed some illegal memory writes in gtk_server_define/-redefine (Valgrind)
. Added tool to extract configfile from GTK/GDK headers
. Fixed crash during parsing configfile when arguments of GTK functions were not defined
. Fixed crash during parsing configfile when logfile was not defined
. Implemented flexible mechanism for defining libraries, now anything can be added to a max of 32
. Fixed EXIT handling with 'gtk_server_exit' and STDIN interface
. Fixed crash when a defined library could not be opened
. Return type 'ADDRESS' returns the address in memory of function
. Fixed bug in IPC interface when sent string contains a '=' (Tim Launchbury)
. Added 'INCLUDE' keyword in configfile to include additional configfiles (John Spikowski)
. Within macros it is possible to perform relative jumps: 'VALUE', 'EMPTY', 'JUMP'
. General improvements in macro parser, starting 'Highlevel Universal GUI' (HUG) in configfile
. Removed EXIT_SIGNAL from configfile, specify 'signal=' on commandline
. Cleaned up exit handling, works better with error exit and FIFO now
. Documentation: improved manpages, added more demoscripts with the Mozilla HTML rendering widget and with OpenGL
|
|
|