git.ithinksw.org
/
ITKit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Huge audit of ITKit, mostly everything has been updated to current coding
[ITKit.git]
/
ITCategory-NSMenu.m
diff --git
a/ITCategory-NSMenu.m
b/ITCategory-NSMenu.m
old mode 100755
(executable)
new mode 100644
(file)
index
ad3904e
..
69d3c61
--- a/
ITCategory-NSMenu.m
+++ b/
ITCategory-NSMenu.m
@@
-1,23
+1,20
@@
-//
-// ITCategory-NSMenu.m
-// ITKit
-//
-// Created by Joseph Spiros on Sat Sep 27 2003.
-// Copyright (c) 2003 __MyCompanyName__. All rights reserved.
-//
-
#import "ITCategory-NSMenu.h"
#import "ITCategory-NSMenu.h"
-@interface NSMenu (HACKHACKHACKHACK)
+extern void _NSGetMenuItemForCommandKeyEvent(NSMenu *menu, void *chicken, void *taco, void *food);
+extern MenuRef _NSGetCarbonMenu(NSMenu *menu);
+
+@interface NSMenu (ITKitCategoryHacks)
- (id)_menuImpl;
@end
- (id)_menuImpl;
@end
-extern void _NSGetMenuItemForCommandKeyEvent (NSMenu *menu, void *chicken, void *taco, void *food);
-extern MenuRef _NSGetCarbonMenu( NSMenu *menu);
+@protocol _ITKitCategoryNSMenuItemPantherCompatability <NSMenuItem>
+- (int)indentationLevel;
+- (void)setIndentationLevel:(int)indentationLevel;
+@end
-@implementation NSMenu (ITCategory)
+@implementation NSMenu (IT
Kit
Category)
-- (void)indentItem:(
NSMenuItem *
)item {
+- (void)indentItem:(
id <NSMenuItem>
)item {
[self indentItem:item toLevel:1];
}
[self indentItem:item toLevel:1];
}
@@
-25,13
+22,14
@@
extern MenuRef _NSGetCarbonMenu( NSMenu *menu);
[self indentItemAtIndex:index toLevel:1];
}
[self indentItemAtIndex:index toLevel:1];
}
-- (void)indentItem:(
NSMenuItem *
)item toLevel:(int)indentLevel {
+- (void)indentItem:(
id <NSMenuItem>
)item toLevel:(int)indentLevel {
[self indentItemAtIndex:[self indexOfItem:item] toLevel:indentLevel];
}
- (void)indentItemAtIndex:(int)index toLevel:(int)indentLevel {
[self indentItemAtIndex:[self indexOfItem:item] toLevel:indentLevel];
}
- (void)indentItemAtIndex:(int)index toLevel:(int)indentLevel {
- if ([NSMenuItem respondsToSelector:@selector(setIndentationLevel:)]) {
- [[self itemAtIndex:index] setIndentationLevel:indentLevel];
+ id <NSMenuItem> theItem = [self itemAtIndex:index];
+ if ([theItem respondsToSelector:@selector(setIndentationLevel:)]) {
+ [(id <_ITKitCategoryNSMenuItemPantherCompatability>)theItem setIndentationLevel:indentLevel];
} else {
MenuRef carbonMenu = [self menuRef];
if (carbonMenu) {
} else {
MenuRef carbonMenu = [self menuRef];
if (carbonMenu) {
@@
-44,8
+42,8
@@
extern MenuRef _NSGetCarbonMenu( NSMenu *menu);
MenuRef carbonMenu;
int w00t, m00f;
MenuRef carbonMenu;
int w00t, m00f;
- if
( [self respondsToSelector:@selector(_menuImpl)]
) {
- [self _menuImpl];
+ if
([self respondsToSelector:@selector(_menuImpl)]
) {
+
(void)
[self _menuImpl];
} else {
return nil;
}
} else {
return nil;
}
@@
-55,4
+53,14
@@
extern MenuRef _NSGetCarbonMenu( NSMenu *menu);
return carbonMenu;
}
return carbonMenu;
}
-@end
+- (void)removeAllItems {
+ int numOfItems = [self numberOfItems];
+ int i = numOfItems;
+
+ while (i != 0) {
+ [self removeItemAtIndex:(i-1)];
+ i--;
+ }
+}
+
+@end
\ No newline at end of file