From c8f1cce1b1b8fdcf7fa09889bedcd6557ab3587b Mon Sep 17 00:00:00 2001 From: klugier Date: Fri, 23 Jun 2017 20:13:35 +0000 Subject: [PATCH] .ide MacroManager now doesn't show local macros when they don't exist in current project. git-svn-id: svn://ultimatepp.org/upp/trunk@11197 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- uppsrc/ide/MacroManager.cpp | 6 +++++- uppsrc/ide/MacroManager.h | 1 - 2 files changed, 5 insertions(+), 2 deletions(-) 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; };