Constructeur d'IHM Tk réalisé en Tcl/Tk :
Détails :
Site : http://www.puretkgui.co.cc/
Auteur : Thomas Menez
Version actuelle : 0.10.0 (beta)
Capture d'écran :

Exemple de fichier 'projet' PureTkGUI :
<?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href="project.xsl"?> <puretkgui_prj version="v0.11.0" saved="Mon Aug 30 23:15:27 CEST 2010"> <file>/home/user/PureTkGuiPrj/Untitled.xml</file> <used_tcltk_interpeter>8.5.0</used_tcltk_interpeter> <prj_opts> <opt name="generation_callGenProc">0</opt> <opt name="generation_customAliasArray">ptkg_widg</opt> <opt name="generation_customGenProcName">createWidgets</opt> <opt name="generation_customGeneratedFileName">gui_gen.tcl</opt> <opt name="generation_defaultAliasArray">ptkg_widg</opt> <opt name="generation_defaultGenProcName">createWidgets</opt> <opt name="generation_defaultGeneratedFileName">gui_gen.tcl</opt> <opt name="generation_genAliasArray">1</opt> <opt name="generation_useCustomAliasArray">0</opt> <opt name="generation_useCustomGenProcName">0</opt> <opt name="generation_useCustomGeneratedFileName">0</opt> </prj_opts> <pictures> </pictures> <toplevels> <toplevel name=".0"> <alias>tl_0</alias> <generate_alias>No</generate_alias> <toplevel_opts> <opt name="attr_alpha">1.0</opt> <opt name="attr_fullscreen">0</opt> <opt name="attr_topmost">0</opt> <opt name="geometry">640x480</opt> <opt name="maxsize">800 600</opt> <opt name="minsize">1 1</opt> <opt name="overrideredirect">0</opt> <opt name="resizable">1 1</opt> <opt name="state">normal</opt> <opt name="title">Window Title</opt> </toplevel_opts> <widget name=".0.1"> <alias>but_myButton</alias> <generate_alias>Yes</generate_alias> <type>ttk::button</type> <widget_opts> <opt name="compound">none</opt> <opt name="default">normal</opt> <opt name="state">normal</opt> <opt name="takefocus">ttk::takefocus</opt> <opt name="takefocus">ttk::takefocus</opt> <opt name="text">ttk::button</opt> <opt name="underline">-1</opt> </widget_opts> <geo_opts manager="pack"> <opt name="propagate">1</opt> <opt name="anchor">center</opt> <opt name="expand">0</opt> <opt name="fill">none</opt> <opt name="ipadx">0</opt> <opt name="ipady">0</opt> <opt name="padx">0</opt> <opt name="pady">0</opt> <opt name="side">top</opt> </geo_opts> </widget> <widget name=".0.2"> <alias>lab_0</alias> <generate_alias>No</generate_alias> <type>ttk::label</type> <widget_opts> <opt name="compound">none</opt> <opt name="state">normal</opt> <opt name="text">ttk::label</opt> <opt name="underline">-1</opt> </widget_opts> <geo_opts manager="pack"> <opt name="propagate">1</opt> <opt name="anchor">center</opt> <opt name="expand">0</opt> <opt name="fill">none</opt> <opt name="ipadx">0</opt> <opt name="ipady">0</opt> <opt name="padx">0</opt> <opt name="pady">0</opt> <opt name="side">top</opt> </geo_opts> </widget> </toplevel> </toplevels> </puretkgui_prj>
Exemple de code généré :
#------------------------------------------------------------------------------
# Generation parameters :
# With : PureTkGui v0.11.0
# From : /home/user/PureTkGuiPrj/Untitled.xml
# On : Mon Aug 30 23:15:38 CEST 2010
#------------------------------------------------------------------------------
proc createWidgets { } {
#------------------------------------------------------------------------------
#TOPLEVEL : .
ttk::button .1 -compound none -default normal -state normal -takefocus ttk::takefocus -takefocus ttk::takefocus -text ttk::button -underline -1
pack .1 -anchor center -expand 0 -fill none -ipadx 0 -ipady 0 -padx 0 -pady 0 -side top
pack propagate .1 1
ttk::label .2 -compound none -state normal -text ttk::label -underline -1
pack .2 -anchor center -expand 0 -fill none -ipadx 0 -ipady 0 -padx 0 -pady 0 -side top
pack propagate .2 1
wm attributes . -alpha 1.0
wm attributes . -fullscreen 0
wm attributes . -topmost 0
wm geometry . 640x480
wm maxsize . 800 600
wm minsize . 1 1
wm overrideredirect . 0
wm resizable . 1 1
wm state . normal
wm title . {Window Title}
#------------------------------------------------------------------------------
#ALIAS MANAGEMENT :
set ptkg_widg(but_myButton) .1
} ; # End of proc createWidgets
package require Tk 8.5
#------------------------------------------------------------------------------Récompenses :
Youpi de bronze 2009