// ########### procediments per videogrid -- slario(at)gmail.com [a partir del codi del grid de l'Ives: ydegoyon(at)free.fr] ######### sys_gui("proc videogrid_apply {id} {\n"); // strip "." from the TK id to make a variable name suffix sys_gui("set vid [string trimleft $id .]\n"); // for each variable, make a local variable to hold its name... sys_gui("set var_graph_name [concat graph_name_$vid]\n"); sys_gui("global $var_graph_name\n"); sys_gui("set var_graph_num_fil [concat graph_num_fil_$vid]\n"); sys_gui("global $var_graph_num_fil\n"); sys_gui("set var_graph_num_col [concat graph_num_col_$vid]\n"); sys_gui("global $var_graph_num_col\n"); sys_gui("set var_graph_color_fons [concat graph_color_fons_$vid]\n"); sys_gui("global $var_graph_color_fons\n"); sys_gui("set var_graph_color_marc [concat graph_color_marc_$vid]\n"); sys_gui("global $var_graph_color_marc\n"); sys_gui("set cmd [concat $id dialog [eval concat $$var_graph_name] [eval concat $$var_graph_num_fil] [eval concat $$var_graph_num_col] [eval concat $$var_graph_color_fons] [eval concat $$var_graph_color_marc] \\;]\n"); // puts stderr $cmd sys_gui("pd $cmd\n"); sys_gui("}\n"); sys_gui("proc videogrid_cancel {id} {\n"); sys_gui("set cmd [concat $id cancel \\;]\n"); // puts stderr $cmd sys_gui("pd $cmd\n"); sys_gui("}\n"); sys_gui("proc videogrid_ok {id} {\n"); sys_gui("videogrid_apply $id\n"); sys_gui("videogrid_cancel $id\n"); sys_gui("}\n"); sys_gui("proc pdtk_videogrid_dialog {id name num_fil num_col color_fons color_marc} {\n"); sys_gui("set vid [string trimleft $id .]\n"); sys_gui("set var_graph_name [concat graph_name_$vid]\n"); sys_gui("global $var_graph_name\n"); sys_gui("set var_graph_num_fil [concat graph_num_fil_$vid]\n"); sys_gui("global $var_graph_num_fil\n"); sys_gui("set var_graph_num_col [concat graph_num_col_$vid]\n"); sys_gui("global $var_graph_num_col\n"); sys_gui("set var_graph_color_fons [concat graph_color_fons_$vid]\n"); sys_gui("global $var_graph_color_fons\n"); sys_gui("set var_graph_color_marc [concat graph_color_marc_$vid]\n"); sys_gui("global $var_graph_color_marc\n"); sys_gui("set $var_graph_name $name\n"); sys_gui("set $var_graph_num_fil $num_fil\n"); sys_gui("set $var_graph_num_col $num_col\n"); sys_gui("set $var_graph_color_fons $color_fons\n"); sys_gui("set $var_graph_color_marc $color_marc\n"); sys_gui("toplevel $id\n"); sys_gui("wm title $id {videogrid}\n"); sys_gui("wm protocol $id WM_DELETE_WINDOW [concat videogrid_cancel $id]\n"); sys_gui("label $id.label -text {VIDEOGRID PROPERTIES}\n"); sys_gui("pack $id.label -side top\n"); sys_gui("frame $id.buttonframe\n"); sys_gui("pack $id.buttonframe -side bottom -fill x -pady 2m\n"); sys_gui("button $id.buttonframe.cancel -text {Cancel} -command \"videogrid_cancel $id\"\n"); sys_gui("button $id.buttonframe.apply -text {Apply} -command \"videogrid_apply $id\"\n"); sys_gui("button $id.buttonframe.ok -text {OK} -command \"videogrid_ok $id\"\n"); sys_gui("pack $id.buttonframe.cancel -side left -expand 1\n"); sys_gui("pack $id.buttonframe.apply -side left -expand 1\n"); sys_gui("pack $id.buttonframe.ok -side left -expand 1\n"); sys_gui("frame $id.1rangef\n"); sys_gui("pack $id.1rangef -side top\n"); sys_gui("label $id.1rangef.lname -text \"Nom :\"\n"); sys_gui("entry $id.1rangef.name -textvariable $var_graph_name -width 7\n"); sys_gui("pack $id.1rangef.lname $id.1rangef.name -side left\n"); sys_gui("frame $id.2rangef\n"); sys_gui("pack $id.2rangef -side top\n"); sys_gui("label $id.2rangef.lnum_fil -text \"Fils :\"\n"); sys_gui("entry $id.2rangef.num_fil -textvariable $var_graph_num_fil -width 7\n"); sys_gui("pack $id.2rangef.lnum_fil $id.2rangef.num_fil -side left\n"); sys_gui("frame $id.3rangef\n"); sys_gui("pack $id.3rangef -side top\n"); sys_gui("label $id.3rangef.lnum_col -text \"Cols :\"\n"); sys_gui("entry $id.3rangef.num_col -textvariable $var_graph_num_col -width 7\n"); sys_gui("pack $id.3rangef.lnum_col $id.3rangef.num_col -side left\n"); sys_gui("frame $id.4rangef\n"); sys_gui("pack $id.4rangef -side top\n"); sys_gui("label $id.4rangef.lcolor_fons -text \"Color fons :\"\n"); sys_gui("entry $id.4rangef.color_fons -textvariable $var_graph_color_fons -width 7\n"); sys_gui("pack $id.4rangef.lcolor_fons $id.4rangef.color_fons -side left\n"); sys_gui("frame $id.5rangef\n"); sys_gui("pack $id.5rangef -side top\n"); sys_gui("label $id.5rangef.lcolor_marc -text \"Color marc :\"\n"); sys_gui("entry $id.5rangef.color_marc -textvariable $var_graph_color_marc -width 7\n"); sys_gui("pack $id.5rangef.lcolor_marc $id.5rangef.color_marc -side left\n"); sys_gui("bind $id.1rangef.name [concat videogrid_ok $id]\n"); sys_gui("bind $id.2rangef.num_fil [concat videogrid_ok $id]\n"); sys_gui("bind $id.3rangef.num_col [concat videogrid_ok $id]\n"); sys_gui("bind $id.4rangef.color_fons [concat videogrid_ok $id]\n"); sys_gui("bind $id.5rangef.color_marc [concat videogrid_ok $id]\n"); sys_gui("focus $id.1rangef.name\n"); sys_gui("}\n"); sys_gui("proc table {w content args} {\n"); sys_gui("frame $w -bg black\n"); sys_gui("set r 0\n"); sys_gui("foreach row $content {\n"); sys_gui("set fields {}\n"); sys_gui("set c 0\n"); sys_gui("foreach col $row {\n"); // lappend fields [label $w.$r/$c -text $col] sys_gui("set img [image create photo -file $col]\n"); sys_gui("lappend fields [label $w.$r/$c -image $img]\n"); sys_gui("incr c\n"); sys_gui("}\n"); sys_gui("eval grid $fields -sticky news -padx 1 -pady 1\n"); sys_gui("incr r\n"); sys_gui("}\n"); sys_gui("set w\n"); sys_gui("}\n"); sys_gui("proc pdtk_videogrid_table {id name num_fil num_col} {\n"); sys_gui("table .tauler {\n"); sys_gui("{sll80x60.gif 3160x120.gif sll80x60.gif}\n"); sys_gui("{sll80x60.gif sll80x60.gif sll80x60.gif}\n"); sys_gui("{sll80x60.ppm sll80x60.gif 3160x120.gif}\n"); sys_gui("}\n"); sys_gui("pack .tauler\n"); sys_gui("}\n");