Popup menu causing delay
jdorsey
#pragma rtGlobals=1 // Use modern global access method.
Window example() : Panel
PauseUpdate; Silent 1 // building window...
NewPanel /W=(150,77,450,277)
TabControl MainTab,pos={2,2},size={200,100},proc=tab_proc,title="MainTab"
TabControl MainTab,tabLabel(0)="T0",tabLabel(1)="T1",value= 0
tab_proc("",0)
EndMacro
Function tab_proc(name,tab)
String name
Variable tab
PopupMenu popup0,pos={40,40},size={80,21},bodyWidth=80,disable=(!tab==0)
PopupMenu popup0,mode=1,value= #"WaveList(\"*\", \";\", \"\")"
End
Window example() : Panel
PauseUpdate; Silent 1 // building window...
NewPanel /W=(150,77,450,277)
TabControl MainTab,pos={2,2},size={200,100},proc=tab_proc,title="MainTab"
TabControl MainTab,tabLabel(0)="T0",tabLabel(1)="T1",value= 0
tab_proc("",0)
EndMacro
Function tab_proc(name,tab)
String name
Variable tab
PopupMenu popup0,pos={40,40},size={80,21},bodyWidth=80,disable=(!tab==0)
PopupMenu popup0,mode=1,value= #"WaveList(\"*\", \";\", \"\")"
End
The same thing seems to happen when I populate the popup menu using a function of my own, rather than WaveList, which makes me think the problem is not with WaveList but the popup. Here's an example of a function used to populate a popup menu which does the same thing.
Function /S ListDimLabels()
Wave inWave
controlinfo /W=CASProc WaveSelect
Wave inWave = $S_value
Variable width = dimsize(inWave,1)
Variable i
String labelList = "No Selection"
for(i=0;i<width;i+=1)
labelList = labelList + ";" + GetDimLabel(inWave,1,i)
endfor
return labelList
End
Wave inWave
controlinfo /W=CASProc WaveSelect
Wave inWave = $S_value
Variable width = dimsize(inWave,1)
Variable i
String labelList = "No Selection"
for(i=0;i<width;i+=1)
labelList = labelList + ";" + GetDimLabel(inWave,1,i)
endfor
return labelList
End
I'm running Igor under Wine, so that may be part of the problem, but I get the feeling that it isn't. Anyway, can't test in Windows right now because Virtualbox is playing up.
Any ideas gratefully considered.