📄 qmenu.inc
字号:
{#ifndef __QMENU_H__
#define __QMENU_H__}
const
MAXMENUITEMS = 64;
MTYPE_SLIDER = 0;
MTYPE_LIST = 1;
MTYPE_ACTION = 2;
MTYPE_SPINCONTROL = 3;
MTYPE_SEPARATOR = 4;
MTYPE_FIELD = 5;
K_TAB = 9;
K_ENTER = 13;
K_ESCAPE = 27;
K_SPACE = 32;
// normal keys should be passed as lowercased ascii
K_BACKSPACE = 127;
K_UPARROW = 128;
K_DOWNARROW = 129;
K_LEFTARROW = 130;
K_RIGHTARROW = 131;
QMF_LEFT_JUSTIFY = $00000001;
QMF_GRAYED = $00000002;
QMF_NUMBERSONLY = $00000004;
type
(*typedef struct _tag_menuframework
{
...
void (*cursordraw)( struct _tag_menuframework *m );
} menuframework_s;*)
menuframework_p = ^menuframework_s;
menuframework_s = record
x, y,
cursor,
nitems,
nslots : integer;
// void *items[64];
items : array [0..63] of pointer;
// const char *statusbar;
statusbar : PChar;
// void ( *cursordraw)( struct _tag_menuframework *m );
cursordraw : procedure (m : menuframework_p);
end;
menucommon_p = ^menucommon_s;
menucommon_s = record
type_ : integer;
// const char *name;
name : PChar;
x, y : integer;
// menuframework_s *parent;
parent : menuframework_p;
cursor_offset : integer;
localdata : array [0..3] of integer;
// unsigned flags;
flags : Cardinal;
// const char *statusbar;
statusbar : PChar;
{ void ( *callback)( void *self );
void ( *statusbarfunc)( void *self );
void ( *ownerdraw)( void *self );
void ( *cursordraw)( void *self );}
callback : procedure (self : pointer);
statusbarfunc : procedure (self : pointer);
ownerdraw : procedure (self : pointer);
cursordraw : procedure (self : pointer);
end;
menufield_p = ^menufield_s;
menufield_s = record
generic : menucommon_s;
buffer : array [0..79] of char;
cursor,
length,
visible_length,
visible_offset : integer;
end;
menuslider_p = ^menuslider_s;
menuslider_s = record
generic : menucommon_s;
minvalue,
maxvalue,
curvalue,
range: Single;
end;
menulist_p = ^menulist_s;
menulist_s = record
generic : menucommon_s;
curvalue : integer;
// const char **itemnames;
itemnames : PChar; //or PPChar (pointer)
end;
menuaction_p = ^menuaction_s;
menuaction_s = record
generic : menucommon_s;
end;
menuseparator_p = ^menuseparator_s;
menuseparator_s = record
generic : menucommon_s;
end;
(*
qboolean Field_Key( menufield_s *field, int key );
void Menu_AddItem( menuframework_s *menu, void *item );
void Menu_AdjustCursor( menuframework_s *menu, int dir );
void Menu_Center( menuframework_s *menu );
void Menu_Draw( menuframework_s *menu );
void *Menu_ItemAtCursor( menuframework_s *m );
qboolean Menu_SelectItem( menuframework_s *s );
void Menu_SetStatusBar( menuframework_s *s, const char *string );
void Menu_SlideItem( menuframework_s *s, int dir );
int Menu_TallySlots( menuframework_s *menu );
void Menu_DrawString( int, int, const char * );
void Menu_DrawStringDark( int, int, const char * );
void Menu_DrawStringR2L( int, int, const char * );
void Menu_DrawStringR2LDark( int, int, const char * );
#endif
*)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -