game-source/fbxa/impulse_menu.h

58 lines
844 B
C
Raw Normal View History

#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
-(integer) getState;
-(void) toggleState;
@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;
- (integer) impulse:(integer)imp;
- (string) text;
@end
@interface ImpulseValueMenu: ImpulseMenu
{
integer value;
}
@end
@interface ImpulseListMenu: ImpulseMenu
{
MenuItem [10]items;
}
- (void) addItem:(MenuItem)item;
@end
#endif//__impulse_menu_h