Skip to content

Commit

Permalink
Merge pull request #2032 from AllenInstitute/feature/2032-various-enh…
Browse files Browse the repository at this point in the history
…ancements

Various dashboard enhancements
  • Loading branch information
t-b authored Mar 7, 2024
2 parents f26393d + 35e8604 commit 150ab94
Show file tree
Hide file tree
Showing 16 changed files with 228 additions and 61 deletions.
2 changes: 1 addition & 1 deletion Packages/MIES/MIES_AnalysisBrowser_Macro.ipf
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ Window AnalysisBrowser() : Panel
Button button_AB_AddFiles,userdata(ResizeControlsInfo)+=A"zzz!!#u:Du]k<zzzzzzzzzzzzzz!!!"
DefineGuide splitGuide={FT,10},UGVL={FL,15}
SetWindow kwTopWin,hook(windowCoordinateSaving)=StoreWindowCoordinatesHook
SetWindow kwTopWin,hook(ResizeControls)=ResizeControls#ResizeControlsHook
SetWindow kwTopWin,hook(ResizeControls)=ResizeControlsSafe
SetWindow kwTopWin,userdata(ResizeControlsInfo)=A"!!*'\"z!!#EIJ,hu%zzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo)+=A"zzzzzzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo)+=A"zzzzzzzzzzzzzzzzzzz!!!"
Expand Down
6 changes: 5 additions & 1 deletion Packages/MIES/MIES_AnalysisBrowser_SweepBrowser.ipf
Original file line number Diff line number Diff line change
Expand Up @@ -578,12 +578,16 @@ End
Function SB_PopupMenuSelectSweep(pa) : PopupMenuControl
STRUCT WMPopupAction &pa

string win, scPanel
string win, bsPanel
variable newSweep, newIndex

switch(pa.eventCode)
case 2: // mouse up
win = pa.win
bsPanel = BSP_GetPanel(win)

PGC_SetAndActivateControl(bsPanel, "check_BrowserSettings_DS", val = CHECKBOX_UNSELECTED)

WAVE sweeps = SB_GetPlainSweepList(win)
newIndex = pa.popNum - 1
newSweep = sweeps[newIndex]
Expand Down
59 changes: 23 additions & 36 deletions Packages/MIES/MIES_AnalysisFunctions_Dashboard.ipf
Original file line number Diff line number Diff line change
Expand Up @@ -1047,30 +1047,27 @@ static Function/S AD_HasPrematureStopLegacy(WAVE numericalValues, WAVE/T textual
return ""
End

/// @brief Show the sweeps of the given `index` entry into the listbox
static Function AD_SelectResult(win, [index])
string win
variable index
/// @brief Show the sweeps from the selected SCIs in the dashboard
static Function AD_SelectResult(string win)

string bspPanel, list
variable numEntries, i

bspPanel = BSP_GetPanel(win)

if(ParamIsDefault(index))
index = GetListBoxSelRow(bspPanel, "list_dashboard")
endif

DFREF dfr = BSP_GetFolder(win, MIES_BSP_PANEL_FOLDER)
WAVE/T info = GetAnaFuncDashboardInfoWave(dfr)

if(!IsFinite(index) || index < 0 || index >= DimSize(info, ROWS))
return NaN
endif
WAVE selWave = GetAnaFuncDashboardselWave(dfr)

Duplicate/FREE/RMD=[*][0] selWave, selection
Make/FREE/T/N=(DimSize(selection, ROWS)) sweepList

WAVE/T info = GetAnaFuncDashboardInfoWave(dfr)

Make/N=0/FREE sweepsWithDuplicates
if(GetCheckBoxState(bspPanel, "check_BrowserSettings_DB_Passed"))
list = info[index][%$"Passing Sweeps"]
sweepList[] = SelectString(selection[p], "", info[p][%$"Passing Sweeps"])
list = TextWaveToList(sweepList, ";")

if(!IsEmpty(list))
WAVE wv = ListToNumericWave(list, ";")
Expand All @@ -1079,48 +1076,35 @@ static Function AD_SelectResult(win, [index])
endif

if(GetCheckBoxState(bspPanel, "check_BrowserSettings_DB_Failed"))
list = info[index][%$"Failing Sweeps"]
sweepList[] = SelectString(selection[p], "", info[p][%$"Failing Sweeps"])
list = TextWaveToList(sweepList, ";")

if(!IsEmpty(list))
WAVE wv = ListToNumericWave(list, ";")
Concatenate/NP {wv}, sweepsWithDuplicates
endif
endif

if(IsNull(list))
print "Select the Passed/Failed checkboxes to display these sweeps"
ControlWindowToFront()
WAVE/Z sweepsWithDuplicatesClean = ZapNans(sweepsWithDuplicates)

if(!WaveExists(sweepsWithDuplicatesClean))
print "Select the Passed/Failed checkboxes to display the sweeps"
return NaN
endif

WAVE sweeps = GetUniqueEntries(sweepsWithDuplicates)

WAVE sweeps = GetUniqueEntries(sweepsWithDuplicatesClean)
numEntries = DimSize(sweeps, ROWS)

if(!numEntries)
WaveClear sweeps
endif

if(!GetCheckBoxState(bspPanel,"check_BrowserSettings_OVS"))
PGC_SetAndActivateControl(bspPanel, "check_BrowserSettings_OVS", val = 1)
elseif(BSP_IsDataBrowser(win))
if(BSP_IsDataBrowser(win))
WAVE/T ovsListWave = GetOverlaySweepsListWave(dfr)

// update databrowser if required and not already done
WAVE/Z indizes = FindIndizes(ovsListWave, var = (numEntries > 0 ? sweeps[numEntries - 1] : -1))
WAVE/Z indizes = FindIndizes(ovsListWave, var = sweeps[numEntries - 1])
if(!WaveExists(indizes))
DB_UpdateToLastSweep(win, force = 1)
endif
endif

if(!GetCheckBoxState(bspPanel,"check_BrowserSettings_ADC"))
PGC_SetAndActivateControl(bspPanel, "check_BrowserSettings_ADC", val = 1)
endif

if(!GetCheckBoxState(bspPanel,"check_BrowserSettings_DAC"))
PGC_SetAndActivateControl(bspPanel, "check_BrowserSettings_DAC", val = 1)
endif

if(!BSP_IsDataBrowser(win) && WaveExists(sweeps))
WAVE allSweeps = GetPlainSweepList(win)
WAVE/Z presentSweeps = GetSetIntersection(allSweeps, sweeps)
Expand Down Expand Up @@ -1209,7 +1193,8 @@ Function AD_ListBoxProc(lba) : ListBoxControl
switch(lba.eventCode)
case 3: // double click
case 4: // cell selection
AD_SelectResult(lba.win, index = lba.row)
case 5: // cell selection plus Shift key
AD_SelectResult(lba.win)
break
endswitch

Expand Down Expand Up @@ -1250,6 +1235,8 @@ Function AD_CheckProc_Toggle(cba) : CheckBoxControl
win = cba.win
AD_Update(win)

AdaptDependentControls(win, "check_BrowserSettings_OVS;check_BrowserSettings_ADC;check_BrowserSettings_DAC", CHECKBOX_UNSELECTED, cba.checked, DEP_CTRLS_SAME)

if(cba.checked)
EnableControls(win, "check_BrowserSettings_DB_Failed;check_BrowserSettings_DB_Passed")
else
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1004,7 +1004,13 @@ Function SC_SpikeControl(device, s)
scPanel = BSP_GetSweepControlsPanel(databrowser)
endif

PGC_SetAndActivateControl(bsPanel, "check_BrowserSettings_OVS", val = 1)
if(IsControlDisabled(bsPanel, "check_BrowserSettings_OVS"))
ASSERT(GetCheckBoxState(bsPanel, "check_BrowserSettings_OVS") == CHECKBOX_SELECTED, \
"OVS must be enabled when the control is disabled")
else
PGC_SetAndActivateControl(bsPanel, "check_BrowserSettings_OVS", val = 1)
endif

PGC_SetAndActivateControl(bsPanel, "check_ovs_clear_on_new_stimset_cycle", val = 1)

PGC_SetAndActivateControl(scPanel, "check_SweepControl_AutoUpdate", val = 1)
Expand Down
6 changes: 5 additions & 1 deletion Packages/MIES/MIES_BrowserSettingsPanel.ipf
Original file line number Diff line number Diff line change
Expand Up @@ -1476,14 +1476,18 @@ End
Function BSP_ButtonProc_ChangeSweep(ba) : ButtonControl
STRUCT WMButtonAction &ba

string graph, scPanel
string graph, scPanel, bsPanel
variable first, last, formerLast, sweepNo, overlaySweeps
variable index

switch(ba.eventcode)
case 2: // mouse up
graph = GetMainWindow(ba.win)
scPanel = BSP_GetSweepControlsPanel(graph)
bsPanel = BSP_GetPanel(graph)

PGC_SetAndActivateControl(bsPanel, "check_BrowserSettings_DS", val = CHECKBOX_UNSELECTED)

overlaySweeps = OVS_IsActive(graph)

[first, last] = BSP_FirstAndLastSweepAcquired(graph)
Expand Down
2 changes: 1 addition & 1 deletion Packages/MIES/MIES_Constants.ipf
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ Constant DAQ_CONFIG_WAVE_VERSION = 3

/// Used to upgrade the GuiStateWave as well as the DA Ephys panel
Constant DA_EPHYS_PANEL_VERSION = 64
Constant DATA_SWEEP_BROWSER_PANEL_VERSION = 49
Constant DATA_SWEEP_BROWSER_PANEL_VERSION = 50
Constant WAVEBUILDER_PANEL_VERSION = 14
Constant ANALYSISBROWSER_PANEL_VERSION = 3

Expand Down
9 changes: 9 additions & 0 deletions Packages/MIES/MIES_DataBrowser.ipf
Original file line number Diff line number Diff line change
Expand Up @@ -220,6 +220,15 @@ Function DB_ResetAndStoreCurrentDBPanel()
CheckBox check_BrowserSettings_DB_Failed, WIN = $bsPanel, value= 0,disable=DISABLE_CONTROL_BIT | HIDDEN_CONTROL_BIT
CheckBox check_BrowserSettings_SF, WIN = $bsPanel, value= 0

SetControlUserData(bsPanel, "check_BrowserSettings_OVS", "oldState", "")
SetControlUserData(bsPanel, "check_BrowserSettings_ADC", "oldState", "")
SetControlUserData(bsPanel, "check_BrowserSettings_DAC", "oldState", "")
EnableControls(bsPanel, "check_BrowserSettings_DAC;check_BrowserSettings_ADC;check_BrowserSettings_OVS")

ListBox list_dashboard, selRow=-1

DoWindow/T $device, ""

CheckBox check_BrowserSettings_VisEpochs, WIN = $bsPanel, value=0, disable=0

// settings history
Expand Down
24 changes: 12 additions & 12 deletions Packages/MIES/MIES_DataBrowser_Macro.ipf
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

Window DataBrowser() : Graph
PauseUpdate; Silent 1 // building window...
Display /W=(743.25,77.75,1232.25,449.75)/K=1 as "Browser"
Display /W=(427.5,292.25,916.5,664.25)/K=1
Button button_BSP_open,pos={3.00,3.00},size={24.00,24.00},disable=1,proc=BSP_ButtonProc_Panel
Button button_BSP_open,title="<<",help={"Restore side panels"}
Button button_BSP_open,userdata(ResizeControlsInfo)=A"!!,>M!!#8L!!#=#!!#=#z!!#](Aon\"Qzzzzzzzzzzzzzz!!#](Aon\"Qzz"
Expand All @@ -20,7 +20,7 @@ Window DataBrowser() : Graph
SetWindow kwTopWin,hook(TA_CURSOR_MOVED)=TimeAlignCursorMovedHook
SetWindow kwTopWin,hook(traceUserDataCleanup)=TUD_RemoveUserDataWave
SetWindow kwTopWin,hook(sweepScrolling)=BSP_SweepsAndMouseWheel
SetWindow kwTopWin,hook(ResizeControls)=ResizeControls#ResizeControlsHook
SetWindow kwTopWin,hook(ResizeControls)=ResizeControlsSafe
SetWindow kwTopWin,userdata(BROWSER)="D"
SetWindow kwTopWin,userdata(DEVICE)="- none -"
SetWindow kwTopWin,userdata(Config_PanelType)="DataBrowser"
Expand Down Expand Up @@ -62,7 +62,7 @@ Window DataBrowser() : Graph
Button button_SweepControl_PrevSweep,title="\\W646 Previous"
Button button_SweepControl_PrevSweep,help={"Displays the previous sweep (sweep no. = last sweep number - step)"}
Button button_SweepControl_PrevSweep,fSize=20
PopupMenu Popup_SweepControl_Selector,pos={153.00,42.00},size={174.00,19.00},bodyWidth=175,disable=2
PopupMenu Popup_SweepControl_Selector,pos={152.00,42.00},size={175.00,19.00},bodyWidth=175,disable=2
PopupMenu Popup_SweepControl_Selector,help={"List of sweeps in this sweep browser"}
PopupMenu Popup_SweepControl_Selector,userdata(tabnum)="0"
PopupMenu Popup_SweepControl_Selector,userdata(tabcontrol)="Settings"
Expand Down Expand Up @@ -947,7 +947,7 @@ Window DataBrowser() : Graph
PopupMenu popup_DB_lockedDevices,userdata(ResizeControlsInfo)=A"!!,Dg!!#BPJ,hr2!!#<Pz!!#`-A7TLfzzzzzzzzzzzzzz!!#r+D.OhkBk2=!z"
PopupMenu popup_DB_lockedDevices,userdata(ResizeControlsInfo)+=A"zzzzzzzzzzzz!!#u:Du]k<zzzzzzzzzzz"
PopupMenu popup_DB_lockedDevices,userdata(ResizeControlsInfo)+=A"zzz!!#u:Du]k<zzzzzzzzzzzzzz!!!"
PopupMenu popup_DB_lockedDevices,mode=1,popvalue="- none -",value=#"DB_GetAllDevicesWithData()"
PopupMenu popup_DB_lockedDevices,mode=2,popvalue="- none -",value=#"DB_GetAllDevicesWithData()"
GroupBox group_enable_sweepFormula,pos={5.00,25.00},size={434.00,50.00},disable=1
GroupBox group_enable_sweepFormula,title="SweepFormula",userdata(tabnum)="5"
GroupBox group_enable_sweepFormula,userdata(tabcontrol)="Settings"
Expand Down Expand Up @@ -1008,7 +1008,7 @@ Window DataBrowser() : Graph
ListBox list_dashboard,userdata(ResizeControlsInfo)+=A"zzzzzzzzzzzz!!#u:Du]k<zzzzzzzzzzz"
ListBox list_dashboard,userdata(ResizeControlsInfo)+=A"zzz!!#?(FEDG<zzzzzzzzzzzzzz!!!"
ListBox list_dashboard,userdata(Config_DontRestore)="1"
ListBox list_dashboard,userdata(Config_DontSave)="1",fSize=12,mode=1,selRow=3
ListBox list_dashboard,userdata(Config_DontSave)="1",fSize=12,mode=4
ListBox list_dashboard,widths={141,109,77},userColumnResize=1
CheckBox check_BrowserSettings_DS,pos={186.00,47.00},size={51.00,15.00},disable=1,proc=AD_CheckProc_Toggle
CheckBox check_BrowserSettings_DS,title="enable"
Expand Down Expand Up @@ -1239,7 +1239,7 @@ Window DataBrowser() : Graph
Button button_sweepformula_all_code,userdata(ResizeControlsInfo)+=A"zzz!!#?(FEDG<zzzzzzzzzzzzzz!!!"
DefineGuide UGVL={FL,15},UGVR={FR,-20},UGVT={FT,113},UGVB={FB,-50},enableBoxTop={FT,25}
DefineGuide enableBoxBottom={enableBoxTop,50},MainBoxBottom={FB,3},MainBoxTop={enableBoxBottom,10}
SetWindow kwTopWin,hook(ResizeControls)=ResizeControls#ResizeControlsHook
SetWindow kwTopWin,hook(ResizeControls)=ResizeControlsSafe
SetWindow kwTopWin,userdata(ResizeControlsInfo)=A"!!*'\"z!!#CCJ,hsrJ,fQLzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo)+=A"zzzzzzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo)+=A"zzzzzzzzzzzzzzzzzzz!!!"
Expand All @@ -1256,7 +1256,7 @@ Window DataBrowser() : Graph
NewNotebook /F=0 /N=sweepFormula_json /W=(12,71,378,358)/FG=(UGVL,UGVT,UGVR,UGVB) /HOST=# /V=0 /OPTS=12
Notebook kwTopWin, defaultTab=10, autoSave= 0, magnification=100, writeProtect=1
Notebook kwTopWin, font="Lucida Console", fSize=11, fStyle=0, textRGB=(0,0,0)
SetWindow kwTopWin,hook(ResizeControls)=ResizeControls#ResizeControlsHook
SetWindow kwTopWin,hook(ResizeControls)=ResizeControlsSafe
SetWindow kwTopWin,userdata(tabnum)="1"
SetWindow kwTopWin,userdata(tabcontrol)="SF_InfoTab"
SetWindow kwTopWin,userdata(ResizeControlsInfo)=A"!!,@C!!#>F!!#C#!!#B[J,fQL!!#](Aon#azzzzzzzzzzzzzz!!#o2B4uAeBk2=!z"
Expand All @@ -1269,9 +1269,9 @@ Window DataBrowser() : Graph
NewNotebook /F=1 /N=sweepFormula_formula /W=(12,71,378,529)/FG=(UGVL,UGVT,UGVR,UGVB) /HOST=# /V=0
Notebook kwTopWin, defaultTab=10, autoSave= 1, magnification=100, showRuler=0, rulerUnits=2
Notebook kwTopWin, newRuler=Normal, justification=0, margins={0,0,286}, spacing={0,0,0}, tabs={}, rulerDefaults={"Arial",11,0,(0,0,0)}
Notebook kwTopWin, zdata= "GaqDU%ejN7!Z)un`Q5gp6juaSgtJ\"fSq0GJLd])[.hK#eE=!1`!1=@^Xod&KOHcHFV4hd75b`6!+WpoV?BghDSuQ2!&8e)8OI;FNbKI]j*sb-#s8RkQ<!B<R:<`eh\"-TY*,oXlCM0XBG3Q2ns/t+g.`T=(u\"iVCKR_0&r\\u!3R;\\D`R\\q+CdL'kjo*<d1N@@C<b@g),5AekbV7KmH6VAo\\j?[bji@Ld8tK62WW3<C@V$+OCje74\\R@`Vs@@;md?\"Bt4lR[fe/W8O2<=.GnHaq,'`H?3()"
Notebook kwTopWin, zdata= "GaqDU%ejN7!Z)un`Q5gp6juaS*9:-\\LOi\"3Ld])[.hK#eE=!1`!1=@^Xod&KOHcHFV4hd75b`6!+WpoV?BghDSuQ2!&8e)8OI;FNbKI]j*sb-#s8RkQ<!B<R:<`eh\"-TY*,oXlCM0XBG3Q2ns/t+g.`T=(u\"iVCKR_0&r\\u!3R;\\D`R\\q+CdL'kjo*<d1N@@C<b@g),5AekbV7KmH6VAo\\j?[bji@Ld8tK62WW3<C@V$+OCje74\\R@`W,JaP^0b$+/Kc1c[?<;8G7WY;e`oQ%8r9,R@?g"
Notebook kwTopWin, zdataEnd= 1
SetWindow kwTopWin,hook(ResizeControls)=ResizeControls#ResizeControlsHook
SetWindow kwTopWin,hook(ResizeControls)=ResizeControlsSafe
SetWindow kwTopWin,userdata(tabnum)="0"
SetWindow kwTopWin,userdata(tabcontrol)="SF_InfoTab"
SetWindow kwTopWin,userdata(ResizeControlsInfo)=A"!!,@C!!#>F!!#C#!!#B[J,fQL!!#](Aon#azzzzzzzzzzzzzz!!#o2B4uAeBk2=!z"
Expand All @@ -1282,7 +1282,7 @@ Window DataBrowser() : Graph
NewNotebook /F=1 /N=sweepFormula_help /W=(10,71,378,358)/FG=(UGVL,UGVT,UGVR,UGVB) /HOST=# /V=0 /OPTS=4
Notebook kwTopWin, defaultTab=10, autoSave= 0, magnification=100, writeProtect=1, showRuler=0, rulerUnits=2
Notebook kwTopWin, newRuler=Normal, justification=0, margins={0,0,251}, spacing={0,0,0}, tabs={}, rulerDefaults={"Arial",11,0,(0,0,0)}
SetWindow kwTopWin,hook(ResizeControls)=ResizeControls#ResizeControlsHook
SetWindow kwTopWin,hook(ResizeControls)=ResizeControlsSafe
SetWindow kwTopWin,userdata(tabnum)="2"
SetWindow kwTopWin,userdata(tabcontrol)="SF_InfoTab"
SetWindow kwTopWin,userdata(ResizeControlsInfo)=A"!!,@C!!#>F!!#C#!!#B[J,fQL!!#](Aon#azzzzzzzzzzzzzz!!#o2B4uAeBk2=!z"
Expand All @@ -1295,7 +1295,7 @@ Window DataBrowser() : Graph
NewNotebook /F=0 /N=WaveNoteDisplay /W=(200,24,600,561)/FG=(FL,$"",FR,FB) /HOST=# /V=0 /OPTS=10
Notebook kwTopWin, defaultTab=36, autoSave= 0, magnification=100
Notebook kwTopWin, font="Lucida Console", fSize=11, fStyle=0, textRGB=(0,0,0)
SetWindow kwTopWin,hook(ResizeControls)=ResizeControls#ResizeControlsHook
SetWindow kwTopWin,hook(ResizeControls)=ResizeControlsSafe
SetWindow kwTopWin,userdata(tabnum)="6"
SetWindow kwTopWin,userdata(tabcontrol)="Settings"
SetWindow kwTopWin,userdata(ResizeControlsInfo)=A"!!,@C!!#>F!!#C#!!#B[J,fQL!!#](Aon#azzzzzzzzzzzzzz!!#o2B4uAeBk2=!z"
Expand Down Expand Up @@ -1377,7 +1377,7 @@ Window DataBrowser() : Graph
CheckBox check_limit_x_selected_sweeps,userdata(ResizeControlsInfo)+=A"zzz!!#u:Duafn!(TR6zzzzzzzzzzzzz!!!"
CheckBox check_limit_x_selected_sweeps,value=0
DefineGuide UGVL={FL,125},UGVR={FR,-200},UGVCM={FR,-100}
SetWindow kwTopWin,hook(ResizeControls)=ResizeControls#ResizeControlsHook
SetWindow kwTopWin,hook(ResizeControls)=ResizeControlsSafe
SetWindow kwTopWin,userdata(ResizeControlsInfo)=A"!!*'\"z!!#D!5QF/Czzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo)+=A"zzzzzzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo)+=A"zzzzzzzzzzzzzzzzzzz!!!"
Expand Down
2 changes: 1 addition & 1 deletion Packages/MIES/MIES_DebugPanel_Macro.ipf
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Window DebugPanel() : Panel
PopupMenu popup_select_files,userdata(ResizeControlsInfo) += A"zzzzzzzzzzzz!!#u:Du]k<zzzzzzzzzzz"
PopupMenu popup_select_files,userdata(ResizeControlsInfo) += A"zzz!!#?(FEDG<zzzzzzzzzzzzzz!!!"
PopupMenu popup_select_files,mode=2,popvalue="All",value= #"\"- none -;All\""
SetWindow kwTopWin,hook(ResizeControls)=ResizeControls#ResizeControlsHook
SetWindow kwTopWin,hook(ResizeControls)=ResizeControlsSafe
SetWindow kwTopWin,userdata(ResizeControlsInfo)= A"!!*'\"z!!#C*J,ht#zzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo) += A"zzzzzzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo) += A"zzzzzzzzzzzzzzzzzzz!!!"
Expand Down
31 changes: 29 additions & 2 deletions Packages/MIES/MIES_GuiUtilities.ipf
Original file line number Diff line number Diff line change
Expand Up @@ -1201,7 +1201,7 @@ Function IsControlDisabled(win, control)
ControlInfo/W=$win $control
ASSERT(V_flag != 0, "Non-existing control or window")

return V_disable & DISABLE_CONTROL_BIT
return (V_disable & DISABLE_CONTROL_BIT) == DISABLE_CONTROL_BIT
End

/// @brief Return one if the given control is hidden,
Expand All @@ -1212,7 +1212,7 @@ Function IsControlHidden(win, control)
ControlInfo/W=$win $control
ASSERT(V_flag != 0, "Non-existing control or window")

return V_disable & HIDDEN_CONTROL_BIT
return (V_disable & HIDDEN_CONTROL_BIT) == HIDDEN_CONTROL_BIT
End

/// @brief Return the main window name from a full subwindow specification
Expand Down Expand Up @@ -2436,3 +2436,30 @@ Function [variable first, variable last] GetMarqueeHelper(string axisName, [vari
ASSERT(0, "Impossible state")
endif
End

/// @brief Wrapper for ResizeControlsHook which handles a free datafolder as CDF
///
/// @todo reported as #5100 to WM
Function ResizeControlsSafe(STRUCT WMWinHookStruct &s)

variable isFreeDFR

switch(s.eventCode)
case EVENT_WINDOW_HOOK_RESIZE:
DFREF dfr = GetDataFolderDFR()
isFreeDFR = IsFreeDataFolder(dfr)
if(isFreeDFR)
SetDataFolder root:
endif

ResizeControls#ResizeControlsHook(s)

if(isFreeDFR)
SetDataFolder dfr
endif
break
endswitch

// return zero so that other hooks are called as well
return 0
End
4 changes: 2 additions & 2 deletions Packages/MIES/MIES_InputDialog_Macro.ipf
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ Window IDM_Headstage_Panel() : Panel
SetVariable setvar_INDEP,userdata(ResizeControlsInfo) += A"zzzzzzzzzzzz!!#u:Du]k<zzzzzzzzzzz"
SetVariable setvar_INDEP,userdata(ResizeControlsInfo) += A"zzz!!#u:Du]k<zzzzzzzzzzzzzz!!!"
SetVariable setvar_INDEP,value= _NUM:0
SetWindow kwTopWin,hook(ResizeControls)=ResizeControls#ResizeControlsHook
SetWindow kwTopWin,hook(ResizeControls)=ResizeControlsSafe
SetWindow kwTopWin,userdata(ResizeControlsInfo)= A"!!*'\"z!!#B&!!#B>J,fQLzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo) += A"zzzzzzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo) += A"zzzzzzzzzzzzzzzzzzz!!!"
Expand Down Expand Up @@ -101,5 +101,5 @@ Window IDM_Popup_Panel() : Panel
SetWindow kwTopWin,userdata(ResizeControlsInfo)=A"!!*'\"z!!#B7!!#A!zzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo)+=A"zzzzzzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo)+=A"zzzzzzzzzzzzzzzzzzz!!!"
SetWindow kwTopWin,userdata(ResizeControlsHookStash)= "ResizeControls#ResizeControlsHook"
SetWindow kwTopWin,userdata(ResizeControlsHookStash)= "ResizeControlsSafe"
EndMacro
4 changes: 3 additions & 1 deletion Packages/MIES/MIES_WaveBuilderPanel.ipf
Original file line number Diff line number Diff line change
Expand Up @@ -1813,6 +1813,8 @@ static Function WBP_UpdateParameterWave()
helpWave[i][%Help] = LineBreakingIntoPar(help, minimumWidth = 40)
endif
endfor

SortColumns/KNDX={0} sortWaves={listWave, helpWave, selWave}
End

/// @brief Toggle the analysis parameter GUI
Expand Down Expand Up @@ -1867,7 +1869,7 @@ static Function WBP_ToggleAnalysisParamGUI()
ListBox list_params,userdata(ResizeControlsInfo) += A"zzzzzzzzzzzz!!#u:Duafnzzzzzzzzzzz"
ListBox list_params,userdata(ResizeControlsInfo) += A"zzz!!#?(FEDG<zzzzzzzzzzzzzz!!!"
DefineGuide UGFR1={FL,0.35, FR},UGFL1={FL,12},UGFT1={FT,68},UGFB1={FB,-78}
SetWindow kwTopWin,hook(ResizeControls)=ResizeControls#ResizeControlsHook
SetWindow kwTopWin,hook(ResizeControls)=ResizeControlsSafe
SetWindow kwTopWin,userdata(ResizeControlsInfo)= A"!!*'\"z!!#E<5QF0/J,fQLzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo) += A"zzzzzzzzzzzzzzzzzzzzzzzzz"
SetWindow kwTopWin,userdata(ResizeControlsInfo) += A"zzzzzzzzzzzzzzzzzzz!!!"
Expand Down
Loading

0 comments on commit 150ab94

Please sign in to comment.