00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _FL_ENUMERATIONS_H_
00023 #define _FL_ENUMERATIONS_H_
00024
00025 #include "Fl_Export.h"
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041 #define FL_MAJOR_VERSION 2
00042 #define FL_MINOR_VERSION 0
00043 #define FL_PATCH_VERSION 3
00044 #define FL_VERSION (FL_MAJOR_VERSION + \
00045 FL_MINOR_VERSION * 0.01f + \
00046 FL_PATCH_VERSION * 0.0001f)
00047
00048 #if defined(_WIN32) && !defined(__GNUC__)
00049 typedef __int64 int64;
00050 typedef unsigned __int64 uint64;
00051 #else
00052 typedef signed long long int64;
00053 typedef unsigned long long uint64;
00054 #endif
00055
00056 #ifdef _WIN32
00057 # undef slash
00058 # define slash '\\'
00059 #else
00060 # undef slash
00061 # define slash '/'
00062 #endif
00063
00064 typedef unsigned char uchar;
00065 typedef unsigned long ulong;
00066 typedef unsigned short ushort;
00067
00068 typedef signed int int32;
00069 typedef unsigned int uint32;
00070 typedef signed short int16;
00071 typedef unsigned short uint16;
00072 typedef signed char int8;
00073 typedef unsigned char uint8;
00074 typedef uint32 uint;
00075
00076 enum {
00077 FL_NO_EVENT = 0,
00078 FL_PUSH = 1,
00079 FL_RELEASE = 2,
00080 FL_ENTER = 3,
00081 FL_LEAVE = 4,
00082 FL_DRAG = 5,
00083 FL_FOCUS = 6,
00084 FL_UNFOCUS = 7,
00085 FL_KEY = 8,
00086 FL_KEYUP = 9,
00087 FL_MOVE = 10,
00088 FL_SHORTCUT = 11,
00089 FL_ACTIVATE = 12,
00090 FL_DEACTIVATE = 13,
00091 FL_SHOW = 14,
00092 FL_HIDE = 15,
00093 FL_MOUSEWHEEL = 16,
00094 FL_PASTE = 17,
00095 FL_DND_ENTER = 18,
00096 FL_DND_DRAG = 19,
00097 FL_DND_LEAVE = 20,
00098 FL_DND_RELEASE = 21,
00099
00100 FL_VALUE_CHANGED = 22,
00101
00102
00103 FL_KEYBOARD = FL_KEY
00104 };
00105
00106 #define FL_WINDOW_CLOSE FL_VALUE_CHANGED
00107
00108 enum {
00109 FL_WHEN_NEVER = 0,
00110 FL_WHEN_CHANGED = 1,
00111 FL_WHEN_RELEASE = 4,
00112 FL_WHEN_RELEASE_ALWAYS= 6,
00113 FL_WHEN_ENTER_KEY = 8,
00114 FL_WHEN_ENTER_KEY_ALWAYS=10,
00115 FL_WHEN_ENTER_KEY_CHANGED=11,
00116 FL_WHEN_NOT_CHANGED = 2
00117 };
00118
00119
00120 #define FL_Space 32
00121 #define FL_Button(n) (0xfee8+(n)) // use Fl_Button(FL_*_MOUSE)
00122 #define FL_BackSpace 0xff08
00123 #define FL_Tab 0xff09
00124 #define FL_Clear 0xff0b // '5' key on windows, ^K
00125 #define FL_Enter 0xff0d
00126 #define FL_Pause 0xff13
00127 #define FL_Scroll_Lock 0xff14
00128 #define FL_Escape 0xff1b
00129 #define FL_Home 0xff50
00130 #define FL_Left 0xff51
00131 #define FL_Up 0xff52
00132 #define FL_Right 0xff53
00133 #define FL_Down 0xff54
00134 #define FL_Page_Up 0xff55
00135 #define FL_Page_Down 0xff56
00136 #define FL_End 0xff57
00137 #define FL_Print 0xff61
00138 #define FL_Insert 0xff63
00139 #define FL_Menu 0xff67
00140 #define FL_Num_Lock 0xff7f
00141 #define FL_KP(c) (0xff80+(c)) // FL_KP('x') is 'x' on numeric keypad
00142 #define FL_KP_Enter 0xff8d // same as Fl_KP('\r')
00143 #define FL_KP_Last 0xffbc // use to range-check keypad
00144 #define FL_F(n) (0xffbd+(n))
00145 #define FL_F_Last 0xffe0 // use to range-check function keys
00146 #define FL_Shift_L 0xffe1
00147 #define FL_Shift_R 0xffe2
00148 #define FL_Control_L 0xffe3
00149 #define FL_Control_R 0xffe4
00150 #define FL_Caps_Lock 0xffe5
00151 #define FL_Alt_L 0xffe9
00152 #define FL_Alt_R 0xffea
00153 #define FL_Win_L 0xffeb // equals the keysym XK_Super_L
00154 #define FL_Win_R 0xffec // equals the keysym XK_Super_L
00155 #define FL_Meta_L FL_Win_L // for back compatibility
00156 #define FL_Meta_R FL_Win_R // for back compatibility
00157 #define FL_Delete 0xffff
00158
00159
00160 #define FL_LEFT_MOUSE 1
00161 #define FL_MIDDLE_MOUSE 2
00162 #define FL_RIGHT_MOUSE 3
00163
00164
00165 #define FL_SHIFT 0x00010000
00166 #define FL_CAPS_LOCK 0x00020000
00167 #define FL_CTRL 0x00040000
00168 #define FL_ALT 0x00080000
00169
00170 #define FL_NUM_LOCK 0x00100000
00171 #define FL_WIN 0x00400000
00172 #define FL_META FL_WIN // for back compatability
00173 #define FL_SCROLL_LOCK 0x00800000
00174
00175 #define FL_BUTTON1 0x01000000
00176 #define FL_BUTTON2 0x02000000
00177 #define FL_BUTTON3 0x04000000
00178 #define FL_BUTTONS 0x7f000000
00179 #define FL_BUTTON(n) (0x00800000<<(n))
00180
00181 enum Fl_Cursor {
00182 FL_CURSOR_DEFAULT = 0,
00183 FL_CURSOR_ARROW = 35,
00184 FL_CURSOR_CROSS = 66,
00185 FL_CURSOR_WAIT = 76,
00186 FL_CURSOR_INSERT = 77,
00187 FL_CURSOR_HAND = 31,
00188 FL_CURSOR_HELP = 47,
00189 FL_CURSOR_MOVE = 27,
00190
00191 FL_CURSOR_NS = 78,
00192 FL_CURSOR_WE = 79,
00193 FL_CURSOR_NWSE = 80,
00194 FL_CURSOR_NESW = 81,
00195 FL_CURSOR_NO = 82,
00196 FL_CURSOR_NONE = 255,
00197
00198 FL_CURSOR_N = 70,
00199 FL_CURSOR_NE = 69,
00200 FL_CURSOR_E = 49,
00201 FL_CURSOR_SE = 8,
00202 FL_CURSOR_S = 9,
00203 FL_CURSOR_SW = 7,
00204 FL_CURSOR_W = 36,
00205 FL_CURSOR_NW = 68
00206
00207
00208 };
00209
00210 enum {
00211 FL_READ = 1,
00212 FL_WRITE = 4,
00213 FL_EXCEPT = 8
00214 };
00215
00216 enum {
00217 FL_RGB = 0,
00218 FL_INDEX = 1,
00219 FL_SINGLE = 0,
00220 FL_DOUBLE = 2,
00221 FL_ACCUM = 4,
00222 FL_ALPHA = 8,
00223 FL_DEPTH = 16,
00224 FL_STENCIL = 32,
00225 FL_RGB8 = 64,
00226 FL_MULTISAMPLE= 128,
00227 FL_STEREO = 256
00228 };
00229
00230
00231 enum Fl_Damage {
00232 FL_DAMAGE_NONE = 0,
00233 FL_DAMAGE_VALUE = 0x01,
00234 FL_DAMAGE_PUSHED = 0x02,
00235 FL_DAMAGE_SCROLL = 0x04,
00236 FL_DAMAGE_OVERLAY = 0x04,
00237 FL_DAMAGE_HIGHLIGHT = 0x08,
00238 FL_DAMAGE_CHILD = 0x10,
00239 FL_DAMAGE_CHILD_LABEL = 0x20,
00240 FL_DAMAGE_EXPOSE = 0x40,
00241 FL_DAMAGE_CONTENTS = 0x40,
00242 FL_DAMAGE_ALL = 0x80
00243 };
00244
00245
00246 enum Fl_Layout_Damage {
00247 FL_LAYOUT_NONE = 0,
00248 FL_LAYOUT_X = 0x01,
00249 FL_LAYOUT_Y = 0x02,
00250 FL_LAYOUT_XY = 0x03,
00251 FL_LAYOUT_W = 0x04,
00252 FL_LAYOUT_H = 0x08,
00253 FL_LAYOUT_WH = 0x0C,
00254 FL_LAYOUT_XYWH = 0x0F,
00255 FL_LAYOUT_CHILD = 0x10,
00256 FL_LAYOUT_DAMAGE = 0x80
00257 };
00258
00259
00260 enum {
00261 FL_EFFECT_NONE = 0,
00262 FL_EFFECT_ANIM,
00263 FL_EFFECT_FADE
00264 };
00265
00266
00267 #if defined(_MSC_VER) && (_MSC_VER >= 600)
00268 # pragma warning(disable: 4550)
00269 # pragma warning(disable: 4244)
00270 #endif
00271
00272 #endif
00273
00274
00275
00276