Skip to content

Commit afe2b25

Browse files
author
Matthias Kastner
committed
bugfix: Panel Elements
Panel elements can only get killed when panel is closing. Re-Opening the Experiment with an Open CodeBrowser Panel leads otherwise to Igor complaining about non-existing variable-references.
1 parent 64977c4 commit afe2b25

File tree

2 files changed

+15
-10
lines changed

2 files changed

+15
-10
lines changed

procedures/CodeBrowser.ipf

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -896,13 +896,10 @@ Function searchReset()
896896
End
897897

898898
Function DeletePKGfolder()
899-
Wave/T decl = getDeclWave()
900-
Wave/I line = getLineWave()
901-
902-
KillWaves/Z decl, line
903-
KillDataFolder/Z $pkgFolder
904-
905-
if(!CountObjects("root:Packages", 4))
899+
if(CountObjects(pkgFolder, 1) + CountObjects(pkgFolder, 2) + CountObjects(pkgFolder, 3) == 0)
900+
KillDataFolder/Z $pkgFolder
901+
endif
902+
if(CountObjects("root:Packages", 4) == 0)
906903
KillDataFolder root:Packages
907904
endif
908905
End

procedures/CodeBrowser_hooks.ipf

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -86,14 +86,20 @@ Function preparePanelClose()
8686
if(prefs.configCleanOnExit)
8787
// storage data will not be saved in experiment
8888
saveResetStorage()
89-
killGlobalStr("search")
9089
killGlobalVar("cleanOnExit")
9190
killGlobalVar("debuggingEnabled")
92-
// clean Package DataFolder
93-
DeletePKGfolder()
9491
endif
9592
End
9693

94+
// if panel does not exist, delete panel-bound var/wave/dfr
95+
Function killPanelRelatedObjects()
96+
Wave/T decl = getDeclWave()
97+
Wave/I line = getLineWave()
98+
99+
KillWaves/Z decl, line
100+
killGlobalStr("search")
101+
End
102+
97103
Function panelHook(s)
98104
STRUCT WMWinHookStruct &s
99105

@@ -109,6 +115,8 @@ Function panelHook(s)
109115
break
110116
case 2: // kill
111117
preparePanelClose()
118+
killPanelRelatedObjects()
119+
DeletePKGfolder()
112120
hookResult = 1
113121
break
114122
case 6: // resize

0 commit comments

Comments
 (0)