game-source/fbxa/impulse_menu.h

58 lines
823 B
Objective-C

#ifndef __impulse_menu_h
#define __impulse_menu_h
#include "Object.h"
@interface MenuItem: Object
{
string text;
}
- (id) initWithText:(string)txt;
- (string) text;
- (void) select;
@end
@protocol FlagMenuItem
-(int) state;
-(void) toggle;
@end
@interface FlagMenuItem: MenuItem
{
id flag;
}
- (id) initWithText:(string)txt flagObject:(id)flg;
@end
@interface CommandMenuItem: MenuItem
{
id object;
SEL selector;
}
- (id) initWithText:(string)txt object:(id)obj selector:(SEL)sel;
@end
@interface ImpulseMenu: Object
{
string text;
}
- (id) initWithText:(string)txt;
- (int) impulse:(int)imp;
- (string) text;
@end
@interface ImpulseValueMenu: ImpulseMenu
{
int value;
}
@end
@interface ImpulseListMenu: ImpulseMenu
{
MenuItem *items[10];
}
- (void) addItem:(MenuItem *)item;
@end
#endif//__impulse_menu_h