 |
GTK-server |
| version 2.2 build 7 |
| 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
-gtkglext, gtkglarea, GL, glut: libraries to have support for OpenGL
-libgtkembedmoz: library to embed the mozilla HTML rendering widget
...and any other library of your choice! |
| Latest Version: 2.2 build 7 |
. Bugfix: gtk_server_require would overwrite library statically compiled in
. Minor fix in 'gen_conf' script so it does not add logdir anymore
. Added 'libm' to default configfile, also some of it's math functions (easy for shellscripts)
. Added ability to define enumerations 'ENUM_NAME' in configfile
. XForms: improved demoscripts, added OpenGL demoscripts
. XForms bugfix: initialize library before the first Print_Error occurs
. Corrected definition of 'glTranslatef' in configfile, compilation with FFI revealed this bug
. Added librarypath when compiling for 64bit platform (XForms)
. Put code in place for static compilation in Win32
. Removed workaround code to fallback to STRING if LONG was not detected (use 'gtk_server_redefine' instead)
. Upgraded to uthash 1.3 (uthash.sourceforge.net)
. Make strong differentiation between LONG and INT (important for Win32 platforms)
. Generate error when argument type is not recognized
. Bugfix: static compilation with GTK1/Xforms using C/Invoke crashed because of uninitialized context
. Hotfix: on 64-bit platforms explicitely cast to 'INT' with gtk_server_callback_value
. Hotfix: Valgrind detects illegal write of 1 byte in macro parser
. Hotfix: initialize max arguments to NULL for each new GTK function, else redefintion may crash
|
|
|