module TCOD
  # background rendering modes
  BKGND_NONE = 0
  BKGND_SET = 1
  BKGND_MULTIPLY = 2
  BKGND_LIGHTEN = 3
  BKGND_DARKEN = 4
  BKGND_SCREEN = 5
  BKGND_COLOR_DODGE = 6
  BKGND_COLOR_BURN = 7
  BKGND_ADD = 8
  BKGND_ADDA = 9
  BKGND_BURN = 10
  BKGND_OVERLAY = 11
  BKGND_ALPH = 12
  BKGND_DEFAULT=13

  # non blocking key events types
  KEY_PRESSED = 1
  KEY_RELEASED = 2

  # key codes
  KEY_NONE = 0
  KEY_ESCAPE = 1
  KEY_BACKSPACE = 2
  KEY_TAB = 3
  KEY_ENTER = 4
  KEY_SHIFT = 5
  KEY_CONTROL = 6
  KEY_ALT = 7
  KEY_PAUSE = 8
  KEY_CAPSLOCK = 9
  KEY_PAGEUP = 10
  KEY_PAGEDOWN = 11
  KEY_END = 12
  KEY_HOME = 13
  KEY_UP = 14
  KEY_LEFT = 15
  KEY_RIGHT = 16
  KEY_DOWN = 17
  KEY_PRINTSCREEN = 18
  KEY_INSERT = 19
  KEY_DELETE = 20
  KEY_LWIN = 21
  KEY_RWIN = 22
  KEY_APPS = 23
  KEY_0 = 24
  KEY_1 = 25
  KEY_2 = 26
  KEY_3 = 27
  KEY_4 = 28
  KEY_5 = 29
  KEY_6 = 30
  KEY_7 = 31
  KEY_8 = 32
  KEY_9 = 33
  KEY_KP0 = 34
  KEY_KP1 = 35
  KEY_KP2 = 36
  KEY_KP3 = 37
  KEY_KP4 = 38
  KEY_KP5 = 39
  KEY_KP6 = 40
  KEY_KP7 = 41
  KEY_KP8 = 42
  KEY_KP9 = 43
  KEY_KPADD = 44
  KEY_KPSUB = 45
  KEY_KPDIV = 46
  KEY_KPMUL = 47
  KEY_KPDEC = 48
  KEY_KPENTER = 49
  KEY_F1 = 50
  KEY_F2 = 51
  KEY_F3 = 52
  KEY_F4 = 53
  KEY_F5 = 54
  KEY_F6 = 55
  KEY_F7 = 56
  KEY_F8 = 57
  KEY_F9 = 58
  KEY_F10 = 59
  KEY_F11 = 60
  KEY_F12 = 61
  KEY_NUMLOCK = 62
  KEY_SCROLLLOCK = 63
  KEY_SPACE = 64
  KEY_CHAR = 65

  ### special chars
  
  # single walls
  CHAR_HLINE = 196
  CHAR_VLINE = 179
  CHAR_NE = 191
  CHAR_NW = 218
  CHAR_SE = 217
  CHAR_SW = 192
  CHAR_TEEW = 180
  CHAR_TEEE = 195
  CHAR_TEEN = 193
  CHAR_TEES = 194
  CHAR_CROSS = 197

  # double walls
  CHAR_DHLINE = 205
  CHAR_DVLINE = 186
  CHAR_DNE = 187
  CHAR_DNW = 201
  CHAR_DSE = 188
  CHAR_DSW = 200
  CHAR_DTEEW = 185
  CHAR_DTEEE = 204
  CHAR_DTEEN = 202
  CHAR_DTEES = 203
  CHAR_DCROSS = 206

  # blocks
  CHAR_BLOCK1 = 176
  CHAR_BLOCK2 = 177
  CHAR_BLOCK3 = 178

  # arrows
  CHAR_ARROW_N = 24
  CHAR_ARROW_S = 25
  CHAR_ARROW_E = 26
  CHAR_ARROW_W = 27

  # arrows without tail
  CHAR_ARROW2_N = 30
  CHAR_ARROW2_S = 31
  CHAR_ARROW2_E = 16
  CHAR_ARROW2_W = 17

  # double arrows
  CHAR_DARROW_H = 29
  CHAR_DARROW_V = 18

  # GUI stuff
  CHAR_CHECKBOX_UNSET = 224
  CHAR_CHECKBOX_SET = 225
  CHAR_RADIO_UNSET = 9
  CHAR_RADIO_SET = 10

  # sub-pixel resolution kit
  CHAR_SUBP_NW = 226
  CHAR_SUBP_NE = 227
  CHAR_SUBP_N = 228
  CHAR_SUBP_SE = 229
  CHAR_SUBP_DIAG = 230
  CHAR_SUBP_E = 231
  CHAR_SUBP_SW = 232

  # misc characters
  CHAR_BULLET = 7
  CHAR_BULLET_INV = 8
  CHAR_BULLET_SQUARE = 254
  CHAR_CENT = 189
  CHAR_CLUB = 5
  CHAR_COPYRIGHT = 184
  CHAR_CURRENCY = 207
  CHAR_DIAMOND = 4
  CHAR_DIVISION = 246
  CHAR_EXCLAM_DOUBLE = 19
  CHAR_FEMALE = 12
  CHAR_FUNCTION = 159
  CHAR_GRADE = 248
  CHAR_HALF = 171
  CHAR_HEART = 3
  CHAR_LIGHT = 15
  CHAR_MALE = 11
  CHAR_MULTIPLICATION = 158
  CHAR_NOTE = 13
  CHAR_NOTE_DOUBLE = 14
  CHAR_ONE_QUARTER = 172
  CHAR_PILCROW = 20
  CHAR_POUND = 156
  CHAR_POW1 = 251
  CHAR_POW2 = 253
  CHAR_POW3 = 252
  CHAR_RESERVED = 169
  CHAR_SECTION = 21
  CHAR_SMILIE = 1
  CHAR_SMILIE_INV = 2
  CHAR_SPADE = 6
  CHAR_THREE_QUARTERS = 243
  CHAR_UMLAUT = 249
  CHAR_YEN = 190

  # font flags
  FONT_LAYOUT_ASCII_INCOL = 1
  FONT_LAYOUT_ASCII_INROW = 2
  FONT_TYPE_GREYSCALE = 4
  FONT_TYPE_GRAYSCALE = 4
  FONT_LAYOUT_TCOD = 8

  # color control codes
  COLCTRL_1=1
  COLCTRL_2=2
  COLCTRL_3=3
  COLCTRL_4=4
  COLCTRL_5=5
  COLCTRL_NUMBER=5
  COLCTRL_FORE_RGB=6
  COLCTRL_BACK_RGB=7
  COLCTRL_STOP=8

  # renderers
  RENDERER_GLSL=0
  RENDERER_OPENGL=1
  RENDERER_SDL=2
  NB_RENDERERS=3

  # alignment
  LEFT=0
  RIGHT=1
  CENTER=2
end