|
|
|
@ -55,7 +55,8 @@ namespace ICSharpCode.Core
@@ -55,7 +55,8 @@ namespace ICSharpCode.Core
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
}; |
|
|
|
|
contextMenu.Opened += new EventHandler(ContextMenuPopupHandler); |
|
|
|
|
contextMenu.Opened += ContextMenuOpened; |
|
|
|
|
contextMenu.Closed += ContextMenuClosed; |
|
|
|
|
return contextMenu; |
|
|
|
|
} catch (TreePathNotFoundException) { |
|
|
|
|
MessageService.ShowError("Warning tree path '" + addInTreePath +"' not found."); |
|
|
|
@ -63,8 +64,17 @@ namespace ICSharpCode.Core
@@ -63,8 +64,17 @@ namespace ICSharpCode.Core
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static void ContextMenuPopupHandler(object sender, EventArgs e) |
|
|
|
|
static bool isContextMenuOpen; |
|
|
|
|
|
|
|
|
|
public static bool IsContextMenuOpen { |
|
|
|
|
get { |
|
|
|
|
return isContextMenuOpen; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static void ContextMenuOpened(object sender, EventArgs e) |
|
|
|
|
{ |
|
|
|
|
isContextMenuOpen = true; |
|
|
|
|
ContextMenuStrip contextMenu = (ContextMenuStrip)sender; |
|
|
|
|
foreach (object o in contextMenu.Items) { |
|
|
|
|
if (o is IStatusUpdate) { |
|
|
|
@ -73,6 +83,11 @@ namespace ICSharpCode.Core
@@ -73,6 +83,11 @@ namespace ICSharpCode.Core
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static void ContextMenuClosed(object sender, EventArgs e) |
|
|
|
|
{ |
|
|
|
|
isContextMenuOpen = false; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public static void ShowContextMenu(object owner, string addInTreePath, Control parent, int x, int y) |
|
|
|
|
{ |
|
|
|
|
CreateContextMenu(owner, addInTreePath).Show(parent, new Point(x, y)); |
|
|
|
|