Glynn Clements ef337b5a6a Add, use "struct Counter" and supporting functions 16 年 前
..
colors 4d027972db fine tuning for low precip 16 年 前
FIPS.code db49180dd7 welcome to GRASS 7.0.svn 17 年 前
G.h 85fea69d7b Remove unnecessary static variables from opencell.c 16 年 前
Makefile 2650397619 Allow GDAL to be loaded dynamically 16 年 前
README.GUI db49180dd7 welcome to GRASS 7.0.svn 17 年 前
README.TYPE db49180dd7 welcome to GRASS 7.0.svn 17 年 前
adj_cellhd.c 98dbc68757 fixed unlucky formatted messages (thanks to Glynn) 17 年 前
align_window.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
alloc.c b5ba88b751 Macro-ise G_*alloc() functions 16 年 前
alloc_cell.c 2c105f36d9 Reduce use of static variables 16 年 前
area.c 0e0697431b Bundle static variables into per-file structures 16 年 前
area_ellipse.c c7041e9ca3 Remove unnecessary return values 16 年 前
area_poly1.c c7041e9ca3 Remove unnecessary return values 16 年 前
area_poly2.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
area_sphere.c c7041e9ca3 Remove unnecessary return values 16 年 前
ascii_chk.c c7041e9ca3 Remove unnecessary return values 16 年 前
asprintf.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
auto_mask.c c7041e9ca3 Remove unnecessary return values 16 年 前
basename.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
bres_line.c c7041e9ca3 Remove unnecessary return values 16 年 前
cats.c c7041e9ca3 Remove unnecessary return values 16 年 前
cell_stats.c c7041e9ca3 Remove unnecessary return values 16 年 前
cell_title.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
cellstats_eq.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
clear_scrn.c c7041e9ca3 Remove unnecessary return values 16 年 前
clicker.c c313e28597 Bundle static variables into per-file structures 16 年 前
closecell.c 2c105f36d9 Reduce use of static variables 16 年 前
color_compat.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_free.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_get.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_hist.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_init.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_insrt.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
color_invrt.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_look.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_org.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_rand.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_range.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_read.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_remove.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
color_rule.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_rule_get.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
color_rules.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_set.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_shift.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_str.c 1928e5aa0b Remove socket code 17 年 前
color_write.c c7041e9ca3 Remove unnecessary return values 16 年 前
color_xform.c c7041e9ca3 Remove unnecessary return values 16 年 前
colors.desc 5319eade86 Cristina Castellani: new precip. color tab 16 年 前
commas.c c7041e9ca3 Remove unnecessary return values 16 年 前
copy.c c7041e9ca3 Remove unnecessary return values 16 年 前
copy_dir.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
copy_file.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
counter.c ef337b5a6a Add, use "struct Counter" and supporting functions 16 年 前
date.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
datum.c c313e28597 Bundle static variables into per-file structures 16 年 前
datum.table db49180dd7 welcome to GRASS 7.0.svn 17 年 前
datumtransform.table db49180dd7 welcome to GRASS 7.0.svn 17 年 前
debug.c 0f14eefa36 Add various functions to force initialisation: 16 年 前
distance.c c313e28597 Bundle static variables into per-file structures 16 年 前
done_msg.c c7041e9ca3 Remove unnecessary return values 16 年 前
element_list 631b3596e9 Move element_list to lib/gis, for earlier availability 16 年 前
ellipse.table db49180dd7 welcome to GRASS 7.0.svn 17 年 前
endian.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
env.c 09aa37e336 Add G_init_env() 16 年 前
error.c ef337b5a6a Add, use "struct Counter" and supporting functions 16 年 前
file_name.c c3470870f5 i18n update (g.findfile) 16 年 前
find_cell.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
find_etc.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
find_file.c c3470870f5 i18n update (g.findfile) 16 年 前
find_vect.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
flate.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
fmode.dat db49180dd7 welcome to GRASS 7.0.svn 17 年 前
format.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
fpreclass.c c7041e9ca3 Remove unnecessary return values 16 年 前
gdal.c c313e28597 Bundle static variables into per-file structures 16 年 前
geodesic.c c7041e9ca3 Remove unnecessary return values 16 年 前
geodist.c c7041e9ca3 Remove unnecessary return values 16 年 前
get_cellhd.c 2dd88a410b Fix undesired line breaks in _( 17 年 前
get_ellipse.c c313e28597 Bundle static variables into per-file structures 16 年 前
get_projinfo.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
get_row.c 2c105f36d9 Reduce use of static variables 16 年 前
get_row_colr.c 2c105f36d9 Reduce use of static variables 16 年 前
get_window.c 09aa37e336 Add G_init_env() 16 年 前
getl.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
gisbase.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
gisdbase.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
gisinit.c ef337b5a6a Add, use "struct Counter" and supporting functions 16 年 前
gislib.dox 47cf7fbcb5 function calls simplified to make doxygen happy (as also almost unmaintained and hence outdated) 16 年 前
gisrasterlib.dox 1f0cf514aa null file explanations from Glynn added 16 年 前
gisvectorlib.dox 0e0903421c doxygen fixes 17 年 前
gui.tcl 204a80d163 Fix icon path 17 年 前
histo_eq.c c7041e9ca3 Remove unnecessary return values 16 年 前
histogram.c c7041e9ca3 Remove unnecessary return values 16 年 前
history.c c7041e9ca3 Remove unnecessary return values 16 年 前
home.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
index.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
interp.c 04f998eab9 Fix formatting 17 年 前
intersect.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
is.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
key_value1.c c7041e9ca3 Remove unnecessary return values 16 年 前
key_value2.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
key_value3.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
key_value4.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
legal_name.c 98dbc68757 fixed unlucky formatted messages (thanks to Glynn) 17 年 前
line_dist.c c7041e9ca3 Remove unnecessary return values 16 年 前
list.c c7041e9ca3 Remove unnecessary return values 16 年 前
ll_format.c c7041e9ca3 Remove unnecessary return values 16 年 前
ll_scan.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
locale.c c313e28597 Bundle static variables into per-file structures 16 年 前
location.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
ls.c c7041e9ca3 Remove unnecessary return values 16 年 前
mach_name.c 2c105f36d9 Reduce use of static variables 16 年 前
make_loc.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
make_mapset.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
mapcase.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
mapset.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
mapset_msc.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
mapset_nme.c c313e28597 Bundle static variables into per-file structures 16 年 前
mask_info.c 2c105f36d9 Reduce use of static variables 16 年 前
maskfd.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
myname.c 2c105f36d9 Reduce use of static variables 16 年 前
named_colr.c 671e44225a Fix formatting of array initialisers 17 年 前
new_des db49180dd7 welcome to GRASS 7.0.svn 17 年 前
nl_to_spaces.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
nme_in_mps.c 96e1894267 Remove unused code 17 年 前
null_val.c c7041e9ca3 Remove unnecessary return values 16 年 前
open.c ef13321e5a Prevent segfault if mapset == NULL 16 年 前
open_misc.c 835d80f89f Fix handling of qualified map names 17 年 前
opencell.c 0f14eefa36 Add various functions to force initialisation: 16 年 前
overwrite.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
parser.c c7041e9ca3 Remove unnecessary return values 16 年 前
paths.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
percent.c c7041e9ca3 Remove unnecessary return values 16 年 前
pi.h db49180dd7 welcome to GRASS 7.0.svn 17 年 前
plot.c c7041e9ca3 Remove unnecessary return values 16 年 前
pole_in_poly.c c7041e9ca3 Remove unnecessary return values 16 年 前
popen.c 2c105f36d9 Reduce use of static variables 16 年 前
progrm_nme.c 85fea69d7b Remove unnecessary static variables from opencell.c 16 年 前
proj1.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
proj2.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
proj3.c 2c105f36d9 Reduce use of static variables 16 年 前
projections db49180dd7 welcome to GRASS 7.0.svn 17 年 前
put_cellhd.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
put_row.c c7041e9ca3 Remove unnecessary return values 16 年 前
put_title.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
put_window.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
putenv.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
quant.c c7041e9ca3 Remove unnecessary return values 16 年 前
quant_io.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
quant_rw.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
radii.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
range.c c7041e9ca3 Remove unnecessary return values 16 年 前
raster.c c7041e9ca3 Remove unnecessary return values 16 年 前
raster_metadata.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
rd_cellhd.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
reclass.c c7041e9ca3 Remove unnecessary return values 16 年 前
remove.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
rename.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
rhumbline.c c7041e9ca3 Remove unnecessary return values 16 年 前
rotate.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
sample.c 0f1ece679f Fix various bugs in G_get_raster_sample() 17 年 前
set_window.c c313e28597 Bundle static variables into per-file structures 16 年 前
short_way.c c7041e9ca3 Remove unnecessary return values 16 年 前
sleep.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
snprintf.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
spawn.c 2c105f36d9 Reduce use of static variables 16 年 前
state27 db49180dd7 welcome to GRASS 7.0.svn 17 年 前
state83 db49180dd7 welcome to GRASS 7.0.svn 17 年 前
strings.c c7041e9ca3 Remove unnecessary return values 16 年 前
system.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
tempfile.c ef337b5a6a Add, use "struct Counter" and supporting functions 16 年 前
timestamp.c c7041e9ca3 Remove unnecessary return values 16 年 前
token.c c7041e9ca3 Remove unnecessary return values 16 年 前
trim_dec.c c7041e9ca3 Remove unnecessary return values 16 年 前
user_config.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
verbose.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
view.c c7041e9ca3 Remove unnecessary return values 16 年 前
whoami.c 85fea69d7b Remove unnecessary static variables from opencell.c 16 年 前
win32_pipes.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
wind_2_box.c c7041e9ca3 Remove unnecessary return values 16 年 前
wind_format.c c7041e9ca3 Remove unnecessary return values 16 年 前
wind_in.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
wind_limits.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
wind_overlap.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
wind_scan.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前
window_map.c c7041e9ca3 Remove unnecessary return values 16 年 前
wr_cellhd.c c7041e9ca3 Remove unnecessary return values 16 年 前
writ_zeros.c c7041e9ca3 Remove unnecessary return values 16 年 前
zero.c c7041e9ca3 Remove unnecessary return values 16 年 前
zero_cell.c c7041e9ca3 Remove unnecessary return values 16 年 前
zone.c 8868d4b686 indent -bad -bap -bbb -br -bli0 -bls -cli0 -ncs -fc1 -hnl -i4 \ 17 年 前

README.GUI


gui.tcl has gone through a few major changes


Migrating from version 1 to version 2:

If you overloaded any of the following you will need to make changes. See their descriptions below.

add_buttons
module_description

Also if you overloaded begin_dialog or end_dialog (which may have been necessary but messy) you should now refactor your code.


Fonts:

Fonts are currently unmanaged, using TCL defaults. Fonts listed here will change the appearance of the created dialog.

balloon-help
Font to be displayed for balloon help


Globals:

dlg
This is the key to refer to a created dialog. It starts at 0. When begin_dialog is called this goes up by one, become the key for the created dialog. A program using gui.tcl needs to get this value for a created dialog in order to refer to it again in the future. In version 2 begin_dialog returns the new value of dlg for convenience.

path
This specifies the tk object path in which the dialog will be created. Before version 2 this was always the path to a toplevel, such as {} when run from G_gui() or something like .moduleX when running from d.m or gis.m. This must be set before calling begin_dialog.

imagepath
Version 1 only, the folder to find bwidgets 1.2.1 images in. $env(GISBASE)/bwidget/images/

iconpath
Introduced in version 2, the path to search for icons. $env(GISBASE)/etc/gui/icons/

opt
An associative array used for dialogs to store their attributes, options, current answers, etc. Starts off unset.

opt parts:
$dlg,layout_* Reserved for use fo the layout system (V2)



Procedures:

Miscellaneous:

icon {class member}
Searches icons for an icon, returns either a photo command or 0 on failure. See gui/icons/README for more information

handle_scroll
Callback that makes mouse wheel scrolling work for frames


Command and selection dialog:

mkcmd
Makes the argv style list command from the current options.

mkcmd_string
Late version 1 and version 2: Makes a string verion of the current command.

show_cmd
Late version 1 and version 2: Updates the current command label

prnout
Version 1, early version 2: File callback that prints output to the text widget in opt($dlg,outtext). Could be overloaded to capture command output, probably a better idea not to. Removed now, this is handled by the gronsole made in make_output.

get_file
Opens a file selection dialog

get_map
Opens a database element selection dialog using $env(GISBASE)/etc/gtcltk/select.tcl

run_cmd
Runs the current command. Could be overloaded to get the event from clicking the run button. It's probably a better idea to overload add_buttons in version 1 or make_dialog_end or make_buttons in version 2 and later

help_cmd, close_cmd, clear_cmd
Could be overloaded to get the events from clicking the help, clear, and close buttons. See note above about run_cmd.

progress {dlg percent}
Used to set the filledness of the progress bar. -1 empties it.


Layout rules:
All of these exist only in version 2.

Layout rules are prime candidates for overloading, and can drastically change the appearance of the dialog.

layout_* Reserved for layout rules.
layout_make_frame is part of the default strategy, not the interface

layout_get_frame {dlg guisection optn}
Must return text for a frame that option widgets can be packed into

layout_get_special_frame {dlg guisection optn}
Must return text for a frame that some special widget can be packed into. Used for, for example, output.

layout_raise_frame {dlg guisection optn}
The named option or guisection should be displayed on the screen

layout_raise_special_frame {dlg guisection optn}
The named option or guisection should be displayed on the screen

make_layout {dlg path root}
The default make_dialog calls this to make the layout. A layout should overload it.


Stuff that makes the gui:

All of make_* are good candidated for overloading. Appearance and behaviour can be greatly changed just by overloading make_dialog and make_dialog_end

make_module_description:
Version 2 only, should make a description of the module. It could be overloaded to turn off the description or to provide a different one. Overloading make_dialog could also turn offf the description. Related to module_description (version 1 only).

make_command_label:
Version 2 only, makes a little command label withtextvar opt($dlg,cmd_string). See also show_cmd. Packs against the bottom side.

make_output:
Version 2 only, Makes a text box for displaying output. Required for make_buttons unless run_cmd is overloaded, since they contain a run button.

make_progress:
Version 2 only, makes a progress bar, see also progress. No longer used as progress is displayed by the gronsole.

make_buttons:
Version 2 only, adds buttons to the dialog. Replaces version 1's add_buttons. Packs against the bottom.

make_dialog
In version 2 this sets up everything that gets set up before the program is run. By default it does make_module_description, make_command_label, make_layout, and make_buttons and is a prime candidate for overloading.

In version one this set up the windows for options, output, progress, and their associated opt variables opt($dlg, outtext), opt($dlg, progress). It also initialized opt($dlg, path), opt($dlg, root), and opt($dlg, suf). It would have been difficult to overload.

A user interface wanting a special to be displayed before options should put a layout_get_special_frame here to get its frame at the top of the order.

make_dialog_end
Version 2 only, like make_dialog but run from end_dialog instead of from begin_dialog.

module_description
Version 1 only. In version 1 this added labels to the dialog for the description of the module. It was called from begin_dialog. If you overloaded it you should move those changes to an overloaded version of make_module_description

add_buttons
Only in version 1, adds the buttons to the window. Migrating: change proc definition from
proc add_buttons {dlg} {
to
proc make_buttons {dlg path root} {

do_*
Make various widgets
Decent candidates for overloading. Most layouts will want to overload do_label.


Cleanup Procedures:

These are shared between add_option and add_flag for polishing their input into a normal form. Notfor overriding:
normalize_guisection
choose_help_text


Command interface:
Gets and sets the command in tcl argv style list for exec:
dialog_get_command {dlg}
dialog_set_command {dlg cmd}


Interface for making the dialog:

Calling convention changed in late version 1. These are terrible candidates for overloading. parser.c is the only agent that should be using these.

begin_dialog
Must be called before add_option or add_flag.
Must not be called again until after end_dialog is called
In version 2 this does some of the things that version 1 did in make_dialog.

add_option
Must be called between begin_dialog and end_dialog to add an option

add_flag
Like option, but for flags

end_dialog
In version 1 this called add_buttons. Now it calls make_dialog_end to add more to the ui and layout_raise_frame to bring up the first option section.