Skip to content

Commit abe581c

Browse files
committed
Create show/hide menu item
1 parent 786741d commit abe581c

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

SCXcodeMinimap/SCXcodeMinimap.m

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,41 @@ - (id)init {
4141
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onDidFinishSetup:) name:IDESourceCodeEditorDidFinishSetupNotification object:nil];
4242
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onDocumentDidChange:) name:IDEEditorDocumentDidChangeNotification object:nil];
4343
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onCodeEditorBoundsChange:) name:IDESourceCodeEditorTextViewBoundsDidChangeNotification object:nil];
44+
[self createMenuItem];
4445
}
4546
return self;
4647
}
4748

49+
- (void)createMenuItem
50+
{
51+
NSMenuItem *windowMenuItem = [[NSApp mainMenu] itemWithTitle:@"Edit"];
52+
NSMenuItem *pluginManagerItem = [[NSMenuItem alloc] initWithTitle:@"Show Mini Map"
53+
action:@selector(hide:)
54+
keyEquivalent:@""];
55+
[pluginManagerItem setState:NSOnState];
56+
pluginManagerItem.target = self;
57+
58+
[windowMenuItem.submenu insertItem:[NSMenuItem separatorItem]
59+
atIndex:[windowMenuItem.submenu numberOfItems]];
60+
[windowMenuItem.submenu insertItem:pluginManagerItem
61+
atIndex:[windowMenuItem.submenu numberOfItems]];
62+
[pluginManagerItem release];
63+
}
64+
65+
- (void) hide:(NSMenuItem *)sender
66+
{
67+
[sender setState:NSOffState];
68+
[sender setAction:@selector(show:)];
69+
NSLog(@"HIDE MINI MAP PLEASE");
70+
}
71+
72+
- (void) show:(NSMenuItem *)sender
73+
{
74+
[sender setState:NSOnState];
75+
[sender setAction:@selector(hide:)];
76+
NSLog(@"SHOW MINI MAP PLEASE");
77+
}
78+
4879
- (void)onDocumentDidChange:(NSNotification*)sender
4980
{
5081
if(![[sender object] respondsToSelector:@selector(textStorage)]) {

0 commit comments

Comments
 (0)