src/hcode/include/coolmenu_interface.h

Go to the documentation of this file.
00001 /*
00002  * Author: Markus Stenberg <fingon@iki.fi>
00003  *
00004  *  Copyright (c) 1996 Markus Stenberg
00005  *       All rights reserved
00006  *
00007  * Created: Tue Sep 17 00:08:20 1996 fingon
00008  * Last modified: Sat Feb 22 21:57:22 1997 fingon
00009  *
00010  */
00011 
00012 #ifndef COOLMENU_INTERFACE_H
00013 #define COOLMENU_INTERFACE_H
00014 
00015 /* To be included _after_ mech.h */
00016 #include "mech.h"
00017 
00018 #define ECOMMANDS(bname,letter) \
00019 ECMD(bname ## _add); \
00020 ECMD(bname ## _minus); \
00021 ECMD(bname ## _toggle); \
00022 ECMD(bname ## _set)
00023 
00024 #define ECOMMANDSET(name) \
00025 ECOMMANDS(name ## _a,'a'); \
00026 ECOMMANDS(name ## _b,'b'); \
00027 ECOMMANDS(name ## _c,'c'); \
00028 ECOMMANDS(name ## _d,'d'); \
00029 ECOMMANDS(name ## _e,'e'); \
00030 ECOMMANDS(name ## _f,'f'); \
00031 ECOMMANDS(name ## _g,'g'); \
00032 ECOMMANDS(name ## _h,'h'); \
00033 ECOMMANDS(name ## _i,'i'); \
00034 ECOMMANDS(name ## _j,'j'); \
00035 ECOMMANDS(name ## _k,'k'); \
00036 ECOMMANDS(name ## _l,'l'); \
00037 ECOMMANDS(name ## _m,'m'); \
00038 ECOMMANDS(name ## _n,'n'); \
00039 ECOMMANDS(name ## _o,'o'); \
00040 ECOMMANDS(name ## _p,'p'); \
00041 ECOMMANDS(name ## _q,'q'); \
00042 ECOMMANDS(name ## _r,'r'); \
00043 ECOMMANDS(name ## _s,'s'); \
00044 ECOMMANDS(name ## _t,'t'); \
00045 ECOMMANDS(name ## _u,'u'); \
00046 ECOMMANDS(name ## _v,'v'); \
00047 ECOMMANDS(name ## _w,'w'); \
00048 ECOMMANDS(name ## _x,'x'); \
00049 ECOMMANDS(name ## _y,'y'); \
00050                                 /* ECOMMANDS(name ## _z,'z');  */
00051 
00052 #define _GCOMMAND_PLUS(bname,n) \
00053 {0, n, "nada", bname ## _add},
00054 #define _GCOMMAND_MINUS(bname,n) \
00055 {0, n, "nada", bname ## _minus},
00056 #define _GCOMMAND_SET(bname,n) \
00057 {0, n, "nada", bname ## _set},
00058 #define _GCOMMAND_TOGGLE(bname,n) \
00059 {0, n, "nada", bname ## _toggle},
00060 
00061 #define GCOMMAND_PLUS(bname, n) _GCOMMAND_PLUS(bname, #n)
00062 #define GCOMMAND_MINUS(bname, n) _GCOMMAND_MINUS(bname, #n)
00063 #define GCOMMAND_SET(bname, n) _GCOMMAND_SET(bname, #n)
00064 #define GCOMMAND_TOGGLE(bname, n) _GCOMMAND_TOGGLE(bname, #n)
00065 
00066 
00067 
00068 #define GCOMMANDS(bname,letter) \
00069 _GCOMMAND_PLUS(bname, #letter "+") \
00070 _GCOMMAND_MINUS(bname, #letter "-") \
00071 _GCOMMAND_SET(bname, #letter "=") \
00072 _GCOMMAND_TOGGLE(bname,#letter ".") \
00073 _GCOMMAND_TOGGLE(bname, #letter)
00074 
00075 
00076 #define GCOMMANDSET(name) \
00077 GCOMMANDS(name ## _a,a) \
00078 GCOMMANDS(name ## _b,b) \
00079 GCOMMANDS(name ## _c,c) \
00080 GCOMMANDS(name ## _d,d) \
00081 GCOMMANDS(name ## _e,e) \
00082 GCOMMANDS(name ## _f,f) \
00083 GCOMMANDS(name ## _g,g) \
00084 GCOMMANDS(name ## _h,h) \
00085 GCOMMANDS(name ## _i,i) \
00086 GCOMMANDS(name ## _j,j) \
00087 GCOMMANDS(name ## _k,k) \
00088 GCOMMANDS(name ## _l,l) \
00089 GCOMMANDS(name ## _m,m) \
00090 GCOMMANDS(name ## _n,n) \
00091 GCOMMANDS(name ## _o,o) \
00092 GCOMMANDS(name ## _p,p) \
00093 GCOMMANDS(name ## _q,q) \
00094 GCOMMANDS(name ## _r,r) \
00095 GCOMMANDS(name ## _s,s) \
00096 GCOMMANDS(name ## _t,t) \
00097 GCOMMANDS(name ## _u,u) \
00098 GCOMMANDS(name ## _v,v) \
00099 GCOMMANDS(name ## _w,w) \
00100 GCOMMANDS(name ## _x,x) \
00101 GCOMMANDS(name ## _y,y) \
00102                                 /* GCOMMANDS(name ## _z,z)  */
00103 
00104 
00105 #endif                          /* COOLMENU_INTERFACE_H */

Generated on Mon May 28 04:25:24 2007 for BattletechMUX by  doxygen 1.4.7