About Gtkdialog

Puppy Linux has a special Graphical User Interface (GUI) construction tool that is called "gtkdialog". It comes in every single version of Puppy Linux and has been there right from the start. GTK is the main graphical tool-kit in Puppy and gtkdialog is a program written in the C coding language, dependant on Gtk, that makes the job of creating a GUI very simple indeed. All you need to know is a bit of shell scripting to get started. It has a simple XML syntax that is not dissimilar to HTML mark up.

Below is an example to illustrate how simple it is to create a GUI!

#!/bin/sh

echo '<window title="Welcome!">
	<vbox space-expand="true" space-fill="false">
		<text use-markup="true">
			<label>"Welcome to <b>Puppy Linux!</b>"</label>
		</text>
		<hbox>
			<button ok></button>
		</hbox>
	</vbox>
</window>' | gtkdialog -s		
		
..and the result.

simple gtkdialog


Gtkdialog is very powerful. One of our long time developers, zigbert, created pMusic, a local music, cd, podcast and youtube player, among other things using gtkdialog as the basis. Take a look at the complexity of the following screen shot.

pmusic_screenshot


Learning Gtkdialog

So where do you start? Zigbert's gtkdialog thread on the old forum is a good place - GtkDialog - tips.

The source code is located at GitHub and there is documentation and more links to tutorials at the Gtkdialog GitHub Wiki and this Puppy Forums threads.

More examples for the same can be found here.