win_win32.h
上传用户:wstnjxml
上传日期:2014-04-03
资源大小:7248k
文件大小:4k
源码类别:

Windows CE

开发平台:

C/C++

  1. /*****************************************************************************
  2.  *
  3.  * This program is free software ; you can redistribute it and/or modify
  4.  * it under the terms of the GNU General Public License as published by
  5.  * the Free Software Foundation; either version 2 of the License, or
  6.  * (at your option) any later version.
  7.  *
  8.  * This program is distributed in the hope that it will be useful,
  9.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  10.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11.  * GNU General Public License for more details.
  12.  *
  13.  * You should have received a copy of the GNU General Public License
  14.  * along with this program; if not, write to the Free Software
  15.  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
  16.  *
  17.  * $Id: win_win32.h 615 2006-01-26 16:57:51Z picard $
  18.  *
  19.  * The Core Pocket Media Player
  20.  * Copyright (c) 2004-2005 Gabor Kovacs
  21.  *
  22.  ****************************************************************************/
  23. #ifndef __WIN_WIN32_H
  24. #define __WIN_WIN32_H
  25. typedef int (*winhandler)();
  26. #define WINCREATE(Name) static INLINE void Name##Create(win* p) {}
  27. #define MSG_POWER_ON (WM_APP+0x251)
  28. #define MSG_PREPARE (WM_APP+0x250)
  29. #define SETTINGCHANGE_RESET  0x3002
  30. struct wincontrol
  31. {
  32. void* Control;
  33. void* Edit;
  34. int Editor:1;
  35. int ComboBox:1;
  36. int ListView:1;
  37. int Disabled:1;
  38. int External:1;
  39. pin Pin;
  40. wincontrol* Ref;
  41. wincontrol* Next; // controls chain
  42. };
  43. #define WINPRIVATE
  44. void* Wnd;
  45. void* WndDialog;
  46. void* WndTB;
  47. void* Menu2[2];
  48. void* Menu3;
  49. void* Module;
  50. winunit Width;
  51. winunit Height;
  52. int BitmapNo;
  53. bool_t (*Proc)(void*, int Msg, uint32_t wParam, uint32_t lParam,int* Result);
  54. bool_t (*DialogProc)(void*, int Msg, uint32_t wParam, uint32_t lParam,int* Result);
  55. bool_t Smartphone;
  56. bool_t FullScreen;
  57. bool_t ScrollV;
  58. bool_t ScrollH;
  59. bool_t InUpdateScroll;
  60. bool_t InUpdate;
  61. bool_t OwnDialogSize;
  62. bool_t CaptureKeys;
  63. bool_t AygShellTB;
  64. bool_t MenuSmall;
  65. bool_t TitleOK;
  66. bool_t TitleDone;
  67. bool_t TitleCancel;
  68. bool_t NeedOK;
  69. bool_t HotKeyEscape;
  70. bool_t ComboOpen;
  71. bool_t Closed;
  72. int ToolBarHeight;
  73. int LogPixelSX;
  74. int LogPixelSY;
  75. void* Activate;
  76. int SaveStyle;
  77. point SaveScreen;
  78. int32_t SaveRect[4];
  79. int WinCmd[2];
  80. bool_t WinEssentialKey(int HotKey);
  81. bool_t WinNoHotKey(int HotKey);
  82. void WinRegisterHotKey(win* p,int Id,int HotKey);
  83. void WinUnRegisterHotKey(win* p,int Id);
  84. void WinAllKeys(bool_t State);
  85. int WinKeyState(int Key);
  86. void WinBitmap(win*,int BitmapId16,int BitmapId32,int BitmapNum);
  87. void WinDeleteButton(win*,int Id);
  88. void WinAddButton(win*,int Id,int Bitmap,tchar_t* Name,bool_t Check); // -1 for separator
  89. void WinButtonEnable(win*,int Id,bool_t);
  90. void WinButtonBitmap(win*,int Id,int Bitmap);
  91. void WinSetFullScreen(win*,bool_t State);
  92. void* WinFont(win*,winunit* FontSize,bool_t Bold);
  93. void* WinCursorArrow();
  94. win* WinGetObject(void* Wnd);
  95. void WinSetObject(void* Wnd,win* p);
  96. winunit WinPixelToUnitX(win* p,int Pixel);
  97. winunit WinPixelToUnitY(win* p,int Pixel);
  98. int WinUnitToPixelX(win* p,winunit Pos);
  99. int WinUnitToPixelY(win* p,winunit Pos);
  100. #define WINSHOWHTML
  101. void WinShowHTML(const tchar_t* Name);
  102. void ForwardMenuButtons(win* p,int Msg,uint32_t wParam,uint32_t lParam);
  103. #endif