Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

Enumerations.h

00001 /*
00002  * $Id: Enumerations.h,v 1.26 2003/06/23 06:40:43 space2 Exp $
00003  *
00004  * Extended Fast Light Toolkit (EFLTK)
00005  * Copyright (C) 2002-2003 by EDE-Team
00006  * WWW: http://www.sourceforge.net/projects/ede
00007  *
00008  * Fast Light Toolkit (FLTK)
00009  * Copyright (C) 1998-2003 by Bill Spitzak and others.
00010  * WWW: http://www.fltk.org
00011  *
00012  * This library is distributed under the GNU LIBRARY GENERAL PUBLIC LICENSE
00013  * version 2. See COPYING for details.
00014  *
00015  * Author : Mikko Lahteenmaki
00016  * Email  : mikko@fltk.net
00017  *
00018  * Please report all bugs and problems to "efltk-bugs@fltk.net"
00019  *
00020  */
00021 
00022 #ifndef _FL_ENUMERATIONS_H_
00023 #define _FL_ENUMERATIONS_H_
00024 
00025 #include "Fl_Export.h"
00026 
00027 //
00028 // The FLTK version number; this is changed slightly from the beta versions
00029 // because the old "const double" definition would not allow for conditional
00030 // compilation...
00031 //
00032 // FL_VERSION is a float that describes the major, minor, and patch version
00033 // numbers.  Version 1.1 is actually stored as 1.01 to allow for more than 9
00034 // minor releases.  Similarly, version 1.0.5 is stored as 1.0005.
00035 //
00036 // The FL_MAJOR_VERSION, FL_MINOR_VERSION, and FL_PATCH_VERSION constants
00037 // give the integral values for the major, minor, and patch releases
00038 // respectively.
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 {  // events
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, // fake event, used only for emit_signal
00101 
00102      // back compatability values:
00103     FL_KEYBOARD         = FL_KEY
00104 };
00105 
00106 #define FL_WINDOW_CLOSE FL_VALUE_CHANGED
00107 
00108 enum { // Fl_Widget::when():
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 // modifier bit to disable changed() test
00117 };
00118 
00119 // Fl::event_key() and Fl::get_key(n) (use ascii letters for all other keys):
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 // Fl::event_button():
00160 #define FL_LEFT_MOUSE   1
00161 #define FL_MIDDLE_MOUSE 2
00162 #define FL_RIGHT_MOUSE  3
00163 
00164 // Fl::event_state():
00165 #define FL_SHIFT    0x00010000
00166 #define FL_CAPS_LOCK    0x00020000
00167 #define FL_CTRL     0x00040000
00168 #define FL_ALT      0x00080000
00169 // Not all X servers agree on these assignments but XFree86 uses them:
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 {    // standard cursors
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   // fltk provides bitmaps for these:
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   // for back compatability (non MSWindows ones):
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   //FL_CURSOR_NS    = 22,
00207   //FL_CURSOR_WE    = 55,
00208 };
00209 
00210 enum { // values for "when" passed to Fl::add_fd()
00211     FL_READ = 1,
00212     FL_WRITE = 4,
00213     FL_EXCEPT = 8
00214 };
00215 
00216 enum { // Values for Fl::visual(), Fl::gl_visual(), Fl_Gl_Window::mode()
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 // damage
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, // reused value
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, // reused value
00242     FL_DAMAGE_ALL         = 0x80
00243 };
00244 
00245 // layout damage
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 // effect types for menus/tooltips
00260 enum {
00261     FL_EFFECT_NONE = 0,
00262     FL_EFFECT_ANIM,
00263     FL_EFFECT_FADE
00264 };
00265 
00266 /* Prevent Visual C++ 6.0 from printing out stupid warnings */
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 // End of "$Id: Enumerations.h,v 1.26 2003/06/23 06:40:43 space2 Exp $".
00276 //

Generated on Thu Jul 31 15:33:43 2003 for eFLTK by doxygen1.2.15