@@ -51,6 +51,7 @@ Function createPanel()
5151 PopupMenu $ moduleCtrl, win=$ panel, pos= { 0, moduleCtrlTop} , size= { panelWidth-2* panelBorder,20 } , bodywidth=200
5252 PopupMenu $ moduleCtrl, win=$ panel, title= "Namespace"
5353 PopupMenu $ moduleCtrl, win=$ panel, proc=$ ( module + "#popupModules" ) , value=# module + "#generateModuleList()"
54+ PopupMenu $ moduleCtrl, win=$ panel, mode= prefs. panelNameSpace
5455
5556 PopupMenu $ moduleCtrl, userdata ( ResizeControlsInfo) = A"!!,Cd!!#;-!!#B>J,hm&z!!#`-A7TLfzzzzzzzzzzzzzz!!#`-A7TLfzz"
5657 PopupMenu $ moduleCtrl, userdata ( ResizeControlsInfo) += A"zzzzzzzzzzzz!!#u:Du]k<zzzzzzzzzzz"
@@ -59,6 +60,7 @@ Function createPanel()
5960 PopupMenu $ procCtrl, win=$ panel, pos= { 0, procCtrlTop} , size= { panelWidth-2* panelBorder,20 } , bodywidth=200
6061 PopupMenu $ procCtrl, win=$ panel, title= "Procedure"
6162 PopupMenu $ procCtrl, win=$ panel, proc=$ ( module + "#popupProcedures" ) , value=# module + "#generateProcedureList()"
63+ PopupMenu $ procCtrl, win=$ panel, mode= prefs. panelProcedure
6264
6365 PopupMenu $ procCtrl, userdata ( ResizeControlsInfo) = A"!!,D/!!#>.!!#B:J,hm&z!!#`-A7TLfzzzzzzzzzzzzzz!!#`-A7TLfzz"
6466 PopupMenu $ procCtrl, userdata ( ResizeControlsInfo) += A"zzzzzzzzzzzz!!#u:Du]k<zzzzzzzzzzz"
@@ -73,12 +75,13 @@ Function createPanel()
7375 ListBox $ listCtrl, win=$ panel, proc=$ ( module + "#ListBoxProc" )
7476 ListBox $ listCtrl, win=$ panel, mode=5, selCol=1, widths= { 4,40 } , keySelectCol=1
7577 ListBox $ listCtrl, win=$ panel, listWave= getDeclWave ()
78+ ListBox $ listCtrl, win=$ panel, selRow= prefs. panelElement, row= prefs. panelElement
7679
7780 ListBox $ listCtrl, userdata ( ResizeControlsInfo) = A"!!,?X!!#@\" !!#BNJ,hopz!!#](Aon\" Qzzzzzzzzzzzzzz!!#o2B4uAezz"
7881 ListBox $ listCtrl, userdata ( ResizeControlsInfo) += A"zzzzzzzzzzzz!!#N3Bk1ct<C]S6zzzzzzzzzz"
7982 ListBox $ listCtrl, userdata ( ResizeControlsInfo) += A"zzz!!#N3Bk1ct<C]S7zzzzzzzzzzzzz!!!"
8083
81- CheckBox $ sortCtrl, win=$ panel, pos= { panelBorder+70, SortCtrlTop} , size= { 40,20 } , value= prefs. panelCheckboxSort
84+ CheckBox $ sortCtrl, win=$ panel, pos= { panelBorder+70, SortCtrlTop} , size= { 40,20 } , value= ( prefs. panelCheckboxSort)
8285 CheckBox $ sortCtrl, win=$ panel, title= "sort"
8386 CheckBox $ sortCtrl, win=$ panel, proc=$ ( module + "#checkboxSort" )
8487
@@ -260,6 +263,42 @@ Function/S getCurrentItem([module, procedure,procedureWithoutModule, index])
260263 return "_error_"
261264End
262265
266+ // Returns the currently selected item from the panel defined by the optional arguments.
267+ // Argument is returned as number in current list
268+ // Exactly one optional argument must be given.
269+ //
270+ // module: return selected NameSpace
271+ // procedure: return selected procedure
272+ // index: return selected index in listbox
273+ Function getCurrentItemAsNumeric ( [ module, procedure, index] )
274+ variable module, procedure, index
275+
276+ string procName
277+
278+ module = ParamIsDefault ( module) ? 0 : 1
279+ procedure = ParamIsDefault ( procedure) ? 0 : 1
280+ index = ParamIsDefault ( index) ? 0 : 1
281+
282+ // only one optional argument allowed
283+ if ( module + procedure + index != 1 )
284+ return -1 // error
285+ endif
286+
287+ if ( module)
288+ ControlInfo / W=$ panel $ moduleCtrl
289+ elseif ( procedure)
290+ ControlInfo / W=$ panel $ procCtrl
291+ elseif ( index)
292+ ControlInfo / W=$ panel $ listCtrl
293+ endif
294+
295+ if ( V_Value >= 0 )
296+ return V_Value
297+ endif
298+
299+ return -1 // error
300+ End
301+
263302// Updates the the given popup menu
264303// Tries to preserve the currently selected item
265304Function updatePopup ( ctrlName)
0 commit comments