src/macosx/native/sun/awt/CMenuItem.m
Print this page
*** 102,112 ****
}
JNF_COCOA_EXIT(env);
}
- (void) setJavaLabel:(NSString *)theLabel shortcut:(NSString *)theKeyEquivalent modifierMask:(jint)modifiers {
- AWT_ASSERT_NOT_APPKIT_THREAD;
NSUInteger modifierMask = 0;
if (![theKeyEquivalent isEqualToString:@""]) {
// Force the key equivalent to lower case if not using the shift key.
--- 102,111 ----
*** 124,168 ****
}
modifierMask = JavaModifiersToNsKeyModifiers(modifiers, NO);
}
! [JNFRunLoop performOnMainThreadWaiting:YES withBlock:^(){
! AWT_ASSERT_APPKIT_THREAD;
[fMenuItem setKeyEquivalent:theKeyEquivalent];
[fMenuItem setKeyEquivalentModifierMask:modifierMask];
[fMenuItem setTitle:theLabel];
}];
}
- (void) setJavaImage:(NSImage *)theImage {
- AWT_ASSERT_NOT_APPKIT_THREAD;
-
- [JNFRunLoop performOnMainThreadWaiting:NO withBlock:^(){
- AWT_ASSERT_APPKIT_THREAD;
[fMenuItem setImage:theImage];
}];
}
- (void) setJavaToolTipText:(NSString *)theText {
- AWT_ASSERT_NOT_APPKIT_THREAD;
-
- [JNFRunLoop performOnMainThreadWaiting:NO withBlock:^(){
- AWT_ASSERT_APPKIT_THREAD;
[fMenuItem setToolTip:theText];
}];
}
- (void)setJavaEnabled:(BOOL) enabled {
- AWT_ASSERT_NOT_APPKIT_THREAD;
-
- [JNFRunLoop performOnMainThreadWaiting:NO withBlock:^(){
- AWT_ASSERT_APPKIT_THREAD;
@synchronized(self) {
fIsEnabled = enabled;
// Warning: This won't work if the parent menu is disabled.
// See [CMenu syncFromJava]. We still need to call it here so
--- 123,157 ----
}
modifierMask = JavaModifiersToNsKeyModifiers(modifiers, NO);
}
! [ThreadUtilities performOnMainThreadWaiting:YES block:^(){
[fMenuItem setKeyEquivalent:theKeyEquivalent];
[fMenuItem setKeyEquivalentModifierMask:modifierMask];
[fMenuItem setTitle:theLabel];
}];
}
- (void) setJavaImage:(NSImage *)theImage {
+ [ThreadUtilities performOnMainThreadWaiting:NO block:^(){
[fMenuItem setImage:theImage];
}];
}
- (void) setJavaToolTipText:(NSString *)theText {
+ [ThreadUtilities performOnMainThreadWaiting:NO block:^(){
[fMenuItem setToolTip:theText];
}];
}
- (void)setJavaEnabled:(BOOL) enabled {
+ [ThreadUtilities performOnMainThreadWaiting:NO block:^(){
@synchronized(self) {
fIsEnabled = enabled;
// Warning: This won't work if the parent menu is disabled.
// See [CMenu syncFromJava]. We still need to call it here so
*** 171,196 ****
}
}];
}
- (BOOL)isEnabled {
- // AWT_ASSERT_ANY_THREAD;
BOOL enabled = NO;
@synchronized(self) {
enabled = fIsEnabled;
}
return enabled;
}
- (void)setJavaState:(BOOL)newState {
- AWT_ASSERT_NOT_APPKIT_THREAD;
-
- [JNFRunLoop performOnMainThreadWaiting:NO withBlock:^(){
- AWT_ASSERT_APPKIT_THREAD;
[fMenuItem setState:(newState ? NSOnState : NSOffState)];
}];
}
- (void)cleanup {
--- 160,181 ----
}
}];
}
- (BOOL)isEnabled {
BOOL enabled = NO;
@synchronized(self) {
enabled = fIsEnabled;
}
return enabled;
}
- (void)setJavaState:(BOOL)newState {
+ [ThreadUtilities performOnMainThreadWaiting:NO block:^(){
[fMenuItem setState:(newState ? NSOnState : NSOffState)];
}];
}
- (void)cleanup {