1. -- Win message constants (WM namespace only)
  2. -- Author: Valentin Schmidt
  3. -- Version: 0.1
  4.  
  5. -- After loading script via require, table 'winmsg' has both numeric and string
  6. -- indexes that allow to both convert message numbers to message names and
  7. -- message names to message numbers.
  8. -- In addition, winmsg.all contains a complete table of all message numbers,
  9. -- which can be useful for analysing the message transfer for a specifc window,
  10. -- by passing it as second argument to function winapiex.msgListen()
  11.  
  12. local msg = {}
  13. msg[522] =  "WM_MOUSEWHEEL"
  14. msg[6] =    "WM_ACTIVATE"
  15. msg[28] =   "WM_ACTIVATEAPP"
  16. msg[780] =  "WM_ASKCBFORMATNAME"
  17. msg[75] =   "WM_CANCELJOURNAL"
  18. msg[31] =   "WM_CANCELMODE"
  19. msg[533] =  "WM_CAPTURECHANGED"
  20. msg[781] =  "WM_CHANGECBCHAIN"
  21. msg[258] =  "WM_CHAR"
  22. msg[47] =   "WM_CHARTOITEM"
  23. msg[34] =   "WM_CHILDACTIVATE"
  24. msg[1025] = "WM_CHOOSEFONT_GETLOGFONT"
  25. msg[1126] = "WM_CHOOSEFONT_SETFLAGS"
  26. msg[1125] = "WM_CHOOSEFONT_SETLOGFONT"
  27. msg[771] =  "WM_CLEAR"
  28. msg[16] =   "WM_CLOSE"
  29. msg[273] =  "WM_COMMAND"
  30. msg[67] =   "WM_COMPACTING"
  31. msg[57] =   "WM_COMPAREITEM"
  32. msg[123] =  "WM_CONTEXTMENU"
  33. msg[769] =  "WM_COPY"
  34. msg[74] =   "WM_COPYDATA"
  35. msg[1] =    "WM_CREATE"
  36. msg[309] =  "WM_CTLCOLORBTN"
  37. msg[310] =  "WM_CTLCOLORDLG"
  38. msg[307] =  "WM_CTLCOLOREDIT"
  39. msg[308] =  "WM_CTLCOLORLISTBOX"
  40. msg[306] =  "WM_CTLCOLORmsgBOX"
  41. msg[311] =  "WM_CTLCOLORSCROLLBAR"
  42. msg[312] =  "WM_CTLCOLORSTATIC"
  43. msg[768] =  "WM_CUT"
  44. msg[926] =  "WM_DDE_ACK"
  45. msg[924] =  "WM_DDE_ADVISE"
  46. msg[927] =  "WM_DDE_DATA"
  47. msg[930] =  "WM_DDE_EXECUTE"
  48. msg[922] =  "WM_DDE_FIRST"
  49. msg[922] =  "WM_DDE_INITIATE"
  50. msg[930] =  "WM_DDE_LAST"
  51. msg[929] =  "WM_DDE_POKE"
  52. msg[928] =  "WM_DDE_REQUEST"
  53. msg[923] =  "WM_DDE_TERMINATE"
  54. msg[925] =  "WM_DDE_UNADVISE"
  55. msg[259] =  "WM_DEADCHAR"
  56. msg[45] =   "WM_DELETEITEM"
  57. msg[2] =    "WM_DESTROY"
  58. msg[775] =  "WM_DESTROYCLIPBOARD"
  59. msg[537] =  "WM_DEVICECHANGE"
  60. msg[27] =   "WM_DEVMODECHANGE"
  61. msg[126] =  "WM_DISPLAYCHANGE"
  62. msg[776] =  "WM_DRAWCLIPBOARD"
  63. msg[43] =   "WM_DRAWITEM"
  64. msg[563] =  "WM_DROPFILES"
  65. msg[10] =   "WM_ENABLE"
  66. msg[22] =   "WM_ENDSESSION"
  67. msg[289] =  "WM_ENTERIDLE"
  68. msg[529] =  "WM_ENTERMENULOOP"
  69. msg[561] =  "WM_ENTERSIZEMOVE"
  70. msg[20] =   "WM_ERASEBKGND"
  71. msg[530] =  "WM_EXITMENULOOP"
  72. msg[562] =  "WM_EXITSIZEMOVE"
  73. msg[29] =   "WM_FONTCHANGE"
  74. msg[135] =  "WM_GETDLGCODE"
  75. msg[49] =   "WM_GETFONT"
  76. msg[51] =   "WM_GETHOTKEY"
  77. msg[127] =  "WM_GETICON"
  78. msg[36] =   "WM_GETMINMAXINFO"
  79. msg[13] =   "WM_GETTEXT"
  80. msg[14] =   "WM_GETTEXTLENGTH"
  81. msg[83] =   "WM_HELP"
  82. msg[786] =  "WM_HOTKEY"
  83. msg[276] =  "WM_HSCROLL"
  84. msg[782] =  "WM_HSCROLLCLIPBOARD"
  85. msg[39] =   "WM_ICONERASEBKGND"
  86. msg[646] =  "WM_IME_CHAR"
  87. msg[271] =  "WM_IME_COMPOSITION"
  88. msg[644] =  "WM_IME_COMPOSITIONFULL"
  89. msg[643] =  "WM_IME_CONTROL"
  90. msg[270] =  "WM_IME_ENDCOMPOSITION"
  91. msg[656] =  "WM_IME_KEYDOWN"
  92. msg[657] =  "WM_IME_KEYUP"
  93. msg[642] =  "WM_IME_NOTIFY"
  94. msg[645] =  "WM_IME_SELECT"
  95. msg[641] =  "WM_IME_SETCONTEXT"
  96. msg[269] =  "WM_IME_STARTCOMPOSITION"
  97. msg[272] =  "WM_INITDIALOG"
  98. msg[278] =  "WM_INITMENU"
  99. msg[279] =  "WM_INITMENUPOPUP"
  100. msg[81] =   "WM_INPUTLANGCHANGE"
  101. msg[80] =   "WM_INPUTLANGCHANGEREQUEST"
  102. msg[256] =  "WM_KEYDOWN"
  103. msg[256] =  "WM_KEYFIRST"
  104. msg[264] =  "WM_KEYLAST"
  105. msg[257] =  "WM_KEYUP"
  106. msg[8] =    "WM_KILLFOCUS"
  107. msg[515] =  "WM_LBUTTONDBLCLK"
  108. msg[513] =  "WM_LBUTTONDOWN"
  109. msg[514] =  "WM_LBUTTONUP"
  110. msg[521] =  "WM_MBUTTONDBLCLK"
  111. msg[519] =  "WM_MBUTTONDOWN"
  112. msg[520] =  "WM_MBUTTONUP"
  113. msg[546] =  "WM_MDIACTIVATE"
  114. msg[551] =  "WM_MDICASCADE"
  115. msg[544] =  "WM_MDICREATE"
  116. msg[545] =  "WM_MDIDESTROY"
  117. msg[553] =  "WM_MDIGETACTIVE"
  118. msg[552] =  "WM_MDIICONARRANGE"
  119. msg[549] =  "WM_MDIMAXIMIZE"
  120. msg[548] =  "WM_MDINEXT"
  121. msg[564] =  "WM_MDIREFRESHMENU"
  122. msg[547] =  "WM_MDIRESTORE"
  123. msg[560] =  "WM_MDISETMENU"
  124. msg[550] =  "WM_MDITILE"
  125. msg[44] =   "WM_MEASUREITEM"
  126. msg[288] =  "WM_MENUCHAR"
  127. msg[287] =  "WM_MENUSELECT"
  128. msg[33] =   "WM_MOUSEACTIVATE"
  129. msg[512] =  "WM_MOUSEFIRST"
  130. msg[521] =  "WM_MOUSELAST"
  131. msg[512] =  "WM_MOUSEMOVE"
  132. msg[3] =    "WM_MOVE"
  133. msg[534] =  "WM_MOVING"
  134. msg[134] =  "WM_NCACTIVATE"
  135. msg[131] =  "WM_NCCALCSIZE"
  136. msg[129] =  "WM_NCCREATE"
  137. msg[130] =  "WM_NCDESTROY"
  138. msg[132] =  "WM_NCHITTEST"
  139. msg[163] =  "WM_NCLBUTTONDBLCLK"
  140. msg[161] =  "WM_NCLBUTTONDOWN"
  141. msg[162] =  "WM_NCLBUTTONUP"
  142. msg[169] =  "WM_NCMBUTTONDBLCLK"
  143. msg[167] =  "WM_NCMBUTTONDOWN"
  144. msg[168] =  "WM_NCMBUTTONUP"
  145. msg[160] =  "WM_NCMOUSEMOVE"
  146. msg[133] =  "WM_NCPAINT"
  147. msg[166] =  "WM_NCRBUTTONDBLCLK"
  148. msg[164] =  "WM_NCRBUTTONDOWN"
  149. msg[165] =  "WM_NCRBUTTONUP"
  150. msg[40] =   "WM_NEXTDLGCTL"
  151. msg[78] =   "WM_NOTIFY"
  152. msg[85] =   "WM_NOTIFYFORMAT"
  153. msg[0] =    "WM_NULL"
  154. msg[15] =   "WM_PAINT"
  155. msg[777] =  "WM_PAINTCLIPBOARD"
  156. msg[38] =   "WM_PAINTICON"
  157. msg[785] =  "WM_PALETTECHANGED"
  158. msg[784] =  "WM_PALETTEISCHANGING"
  159. msg[528] =  "WM_PARENTNOTIFY"
  160. msg[770] =  "WM_PASTE"
  161. msg[896] =  "WM_PENWINFIRST"
  162. msg[911] =  "WM_PENWINLAST"
  163. msg[72] =   "WM_POWER"
  164. msg[536] =  "WM_POWERBROADCAST"
  165. msg[791] =  "WM_PRINT"
  166. msg[792] =  "WM_PRINTCLIENT"
  167. msg[1029] = "WM_PSD_ENVSTAMPRECT"
  168. msg[1025] = "WM_PSD_FULLPAGERECT"
  169. msg[1028] = "WM_PSD_GREEKTEXTRECT"
  170. msg[1027] = "WM_PSD_MARGINRECT"
  171. msg[1026] = "WM_PSD_MINMARGINRECT"
  172. msg[1024] = "WM_PSD_PAGESETUPDLG"
  173. msg[1030] = "WM_PSD_YAFULLPAGERECT"
  174. msg[55] =   "WM_QUERYDRAGICON"
  175. msg[17] =   "WM_QUERYENDSESSION"
  176. msg[783] =  "WM_QUERYNEWPALETTE"
  177. msg[19] =   "WM_QUERYOPEN"
  178. msg[35] =   "WM_QUEUESYNC"
  179. msg[18] =   "WM_QUIT"
  180. msg[518] =  "WM_RBUTTONDBLCLK"
  181. msg[516] =  "WM_RBUTTONDOWN"
  182. msg[517] =  "WM_RBUTTONUP"
  183. msg[774] =  "WM_RENDERALLFORMATS"
  184. msg[773] =  "WM_RENDERFORMAT"
  185. msg[32] =   "WM_SETCURSOR"
  186. msg[7] =    "WM_SETFOCUS"
  187. msg[48] =   "WM_SETFONT"
  188. msg[50] =   "WM_SETHOTKEY"
  189. msg[128] =  "WM_SETICON"
  190. msg[11] =   "WM_SETREDRAW"
  191. msg[12] =   "WM_SETTEXT"
  192. msg[26] =   "WM_SETTINGCHANGE"
  193. msg[24] =   "WM_SHOWWINDOW"
  194. msg[5] =    "WM_SIZE"
  195. msg[779] =  "WM_SIZECLIPBOARD"
  196. msg[532] =  "WM_SIZING"
  197. msg[42] =   "WM_SPOOLERSTATUS"
  198. msg[125] =  "WM_STYLECHANGED"
  199. msg[124] =  "WM_STYLECHANGING"
  200. msg[262] =  "WM_SYSCHAR"
  201. msg[21] =   "WM_SYSCOLORCHANGE"
  202. msg[274] =  "WM_SYSCOMMAND"
  203. msg[263] =  "WM_SYSDEADCHAR"
  204. msg[260] =  "WM_SYSKEYDOWN"
  205. msg[261] =  "WM_SYSKEYUP"
  206. msg[82] =   "WM_TCARD"
  207. msg[30] =   "WM_TIMECHANGE"
  208. msg[275] =  "WM_TIMER"
  209. msg[576] =  "WM_TOUCH"
  210. msg[772] =  "WM_UNDO"
  211. msg[1024] = "WM_USER"
  212. msg[84] =   "WM_USERCHANGED"
  213. msg[46] =   "WM_VKEYTOITEM"
  214. msg[277] =  "WM_VSCROLL"
  215. msg[778] =  "WM_VSCROLLCLIPBOARD"
  216. msg[71] =   "WM_WINDOWPOSCHANGED"
  217. msg[70] =   "WM_WINDOWPOSCHANGING"
  218. msg[26] =   "WM_WININICHANGE"
  219.  
  220. -- export
  221. winmsg = {}
  222. local all = {}
  223.  
  224. -- add both numbers and strings as keys
  225. for k,v in pairs(msg) do
  226.   winmsg[v] = k
  227.   winmsg[k] = v
  228.   all[#all+1] = k
  229. end
  230.  
  231. winmsg.all = all
  232.  
[raw code]