# # FileSelect # ---------------------------------------------------------------------- # Implements a version of the OSF/Motif standard file selection dialog # box using primitive widgets as the building blocks. # # # PUBLIC ATTRIBUTES: # # -filterlabel ... label for filter entry, default "Filter" # -dirlabel ...... label for directory list, default "Directories" # -filelabel ..... label for file list, default "Files" # -selectlabel ... label for selection entry, default "Selection" # -dispfilter .... display filter, yes or no, default yes # -dispdir ....... display directory list, yes or no, default yes # -dispfile ...... display file list, yes or no, default yes # -dispselect .... display selection, yes or no, default yes # -filter ........ file list filter, defaults to "*" # -dir ........... initial directory, default to [pwd] # -title ......... window title text, default "Select File" # -full .......... display full file names, yes or no, default no # # -width ......... width of filter/selection entry widgets in chars # -height ........ height of displayed list in lines # # -button_1 ...... Name of the first button, default ok # -button_2 ...... Name of the second button, default filter # -button_3 ...... Name of the third button, default cancel # # METHODS: # # config ......... used to change public attributes # get ............ return the selection # activate ....... perform a grab, upon selection of ok(1) or cancel(0), # return result. # USAGE: # # FileSelect .fs -title "Test File Select" -full 0 # # if {[.fs activate]} { # puts stdout "OK >>==> [.fs get]" # } else { # puts stdout "Cancel" # } # # .fs destroy # # X11 OPTION DATABASE ATTRIBUTES # # ...and the rest of the usual widget attributes # # ---------------------------------------------------------------------- # AUTHOR: Mark L. Ulferts Phone: (214) 519-3947 # DSC Communications Corp E-mail: mulferts@spd.dsccc.com # ---------------------------------------------------------------------- # # Contributions: Shawn Ellis E-mail: ellis@sctc.com # o Simple Emacs key bindings for entry widgets # o Can now paste a filename or directory into entry # widgets # o Directories are checked on whether they exist before # they are cd'd into. # o Filenames displayed in alphabetical order # o Multiple FileSelect widgets can be used. # o Get method returns _selection only if the file # exists