ui/cocoa/toolkit.m

changeset 10
6f263196f916
parent 7
431dde3c5fbe
child 14
e2fd132ab781
equal deleted inserted replaced
8:84a541c6e093 10:6f263196f916
34 34
35 #import "../common/document.h" 35 #import "../common/document.h"
36 36
37 #import "toolkit.h" 37 #import "toolkit.h"
38 #import "window.h" 38 #import "window.h"
39 #import "menu.h"
39 #import "toolbar.h" 40 #import "toolbar.h"
40 41
41 42
42 NSAutoreleasePool *pool; 43 NSAutoreleasePool *pool;
43 44
51 [NSApplication sharedApplication]; 52 [NSApplication sharedApplication];
52 [NSBundle loadNibNamed:@"MainMenu" owner:NSApp]; 53 [NSBundle loadNibNamed:@"MainMenu" owner:NSApp];
53 54
54 55
55 uic_docmgr_init(); 56 uic_docmgr_init();
57 ui_menu_init();
56 ui_toolbar_init(); 58 ui_toolbar_init();
57 // load item stock 59 // load item stock
58 // ui_init_stock(); 60 // ui_init_stock();
59 } 61 }
60 62
116 } 118 }
117 119
118 return true; 120 return true;
119 } 121 }
120 122
123 - (BOOL)handleStateEvent:(id)sender {
124 NSWindow *activeWindow = [NSApp keyWindow];
125 NSMenuItem *item = (NSMenuItem*)sender;
126 int state = [item state] ? NSOffState : NSOnState;
127
128 UiEvent event;
129 event.intval = state;
130 if([activeWindow class] == [UiCocoaWindow class]) {
131 event.obj = [(UiCocoaWindow*)activeWindow object];
132 event.window = event.obj->window;
133 event.document = event.obj->document;
134 // update state in window data
135 UiMenuItem *wmi = [(UiCocoaWindow*)activeWindow getMenuItem: sender];
136 wmi->state = state;
137 } else {
138 event.window = NULL;
139 event.document = NULL;
140 }
141 if(callback) {
142 callback(&event, data);
143 }
144 [item setState: state];
145
146 return true;
147 }
148
121 @end 149 @end
150
151

mercurial