diff --git a/uppsrc/ide/MacroManager.cpp b/uppsrc/ide/MacroManager.cpp index f81c468d0..0472a010e 100644 --- a/uppsrc/ide/MacroManager.cpp +++ b/uppsrc/ide/MacroManager.cpp @@ -19,7 +19,6 @@ MacroManagerWindow::MacroManagerWindow(const Workspace& wspc) exportButton.Disable(); globalNode = macrosTree.Add(0, Image(), 0, t_("Global macros")); - localNode = macrosTree.Add(0, Image(), 0, t_("Local macros (Read only)")); LoadMacros(); macrosTree.OpenDeep(0); @@ -235,6 +234,8 @@ void MacroManagerWindow::ReloadGlobalMacros() void MacroManagerWindow::ReloadLocalMacros() { + int localNode = macrosTree.Find(1); + for(int i = 0; i < wspc.GetCount(); i++) { const Package& package = wspc.GetPackage(i); int packageNode = -1; @@ -248,6 +249,9 @@ void MacroManagerWindow::ReloadLocalMacros() if (list.GetCount() == 0) continue; + if(localNode == -1) + localNode = macrosTree.Add(0, Image(), 1, t_("Local macros (Read only)")); + if(packageNode == -1) packageNode = macrosTree.Add(localNode, Image(), 0, wspc[i]); diff --git a/uppsrc/ide/MacroManager.h b/uppsrc/ide/MacroManager.h index 7e199bd21..e10c30300 100644 --- a/uppsrc/ide/MacroManager.h +++ b/uppsrc/ide/MacroManager.h @@ -97,5 +97,4 @@ private: CodeEditor editor; int globalNode; - int localNode; };