SkinMagicLib.h
上传用户:sunh8215
上传日期:2010-02-13
资源大小:1616k
文件大小:12k
源码类别:

酒店行业

开发平台:

Visual C++

  1. /***************************************************************************
  2. // This is a part of the SkinMagic SDK library.
  3. // Copyright (C) 2003-2002 Appspeed Inc.
  4. // All rights reserved.
  5. //
  6. // This source code is only intended as a supplement to the
  7. // SkinMagic SDK Reference and related electronic documentation 
  8. // provided with the library.
  9. // See these sources for detailed information regarding the
  10. // SkinMagic SDK product.
  11. // SkinMagicLib SDK is a library designed for C/C++ programmer, 
  12. // you can add the most popular function of changing skin to your
  13. // application with the API supplied by this library. SkinMagic 
  14. // is picture-based skin system, you can power your application
  15. // with skin-changeable with simple call of several functions. 
  16. // And with the skin editor of SkinMagicBuilder, you can customize
  17. // your own skin.
  18. *****************************************************************************/
  19. #ifndef _SKINMAGICLIB_H__
  20. #define _SKINMAGICLIB_H__
  21. #include <windows.h>
  22. ///////////////////////////////////////////////////////////////////////////
  23. //Function: InitSkinMagicLib(HINSTANCE hInstance, char* szApplication , 
  24. //   char* szReserved1,
  25. //   char* szReserved2
  26. //
  27. //Parameters: 
  28. // hInstance 
  29. // [in] Handle of application instance.
  30. // szApplication
  31. // [in] Application defined in skin file. If you set this parameter the 
  32. // library can only load the skin file which application object named
  33. // match szApplication.
  34. // szReserved1
  35. // [in] Reserved.
  36. // szReserved2
  37. // [in] Reserved.
  38. //Return Values:
  39. //   If the function success, the return value is nonzero
  40. //   If the function fail, the return value is zero
  41. //Remarks:
  42. //  InitSkinMagicLib function should be the first API called in SkinMagicLib SDK,
  43. //  followed by other APIs. 
  44. //  For multithreaded applications, you must call InitSkinMagicLib in every thread. 
  45. //   
  46. int InitSkinMagicLib( HINSTANCE hInstance, char* szApplication , 
  47.   char* szReserved1,
  48.   char* szReserved2 );
  49. ///////////////////////////////////////////////////////////////////////////
  50. //Function: LoadSkinFile( char* SkinFile )
  51. // Load skin from file.
  52. //Parameters: 
  53. // SkinFile 
  54. // [in] Specifies the skin file name. 
  55. //Return Values:
  56. //   If the function success, the return value is nonzero
  57. //   If the function fail, the return value is zero
  58. //Remarks:
  59. //  ExitSkinMagicLib function should be the last API called in SkinMagicLib SDK.
  60. //  For multithreaded applications, you must call InitSkinMagicLib in every thread. 
  61. void ExitSkinMagicLib();
  62. ///////////////////////////////////////////////////////////////////////////
  63. //Function: LoadSkinFile( char* SkinFile )
  64. // Load skin from file.
  65. //Parameters: 
  66. // SkinFile 
  67. // [in] Specifies the skin file name. 
  68. //Return Values:
  69. //   If the function success, the return value is nonzero
  70. //   If the function fail, the return value is zero
  71. //Remarks:
  72. // Load skin from file.
  73. int LoadSkinFile( char* SkinFile );
  74. ///////////////////////////////////////////////////////////////////////////
  75. //Function: LoadSkinFromResource(HMODULE hModule, char* lpSkinName ,char* lpType)
  76. // Use this function to load skin from resource.
  77. //Parameters: 
  78. // hModule 
  79. // [in] Handle to the module whose executable file contains the resource. 
  80. // A value of NULL specifies the module handle associated with the image 
  81. // file that the operating system used to create the current process. 
  82. // lpSkinName 
  83. // [in] Specifies the name of the skin resource. 
  84. // lpType 
  85. // [in] Specifies the resource type. 
  86. //Return Values:
  87. //   If the function success, the return value is nonzero
  88. //   If the function fail, the return value is zero
  89. //Remarks:
  90. // The application can use skin defined in resource.
  91. int LoadSkinFromResource(HMODULE hModule, char* lpSkinName ,char* lpType);
  92. ///////////////////////////////////////////////////////////////////////////
  93. //Function: SetWindowSkin( HWND hWnd , char* SkinName )
  94. // Use SetWindowSkin to skin the standard windows - with rectangular
  95. //          opaque client area and region-based non-client area, menu bar, 
  96. //          system/maximize/minimize/close buttons, caption and sizing edges
  97. //          and corners. 
  98. //
  99. //Parameters: 
  100. //   hWnd
  101. // [in]Handle to the window to be remove skin.     
  102. //   SkinName
  103. // [in]Specifies the name of FrameWnd object which defined in skin file. 
  104. //
  105. //Return Values:
  106. //   If the function success, the return value is nonzero
  107. //   If the function fail, the return value is zero
  108. //Remarks:
  109. // Use SetWindowSkin to skin the standard windows - with rectangular
  110. //          opaque client area and region-based non-client area, menu bar, 
  111. //          system/maximize/minimize/close buttons, caption and sizing edges
  112. //          and corners.
  113. int SetWindowSkin( HWND hWnd , char* SkinName );
  114. ///////////////////////////////////////////////////////////////////////////
  115. //Function: SetShapeWindowSkin( HWND hWnd , char* SkinName )
  116. // Use SetShapeWindowSkin to skin application-specific windows 
  117. // without non-client area and menu bar. These windows can have
  118. // absolutely any shape or even be translucent. 
  119. //
  120. //Parameters: 
  121. //   hWnd
  122. // [in]Handle to the window to be remove skin.     
  123. //   SkinName
  124. // [in]Specifies the name of ShapeWnd object which defined in skin file. 
  125. //
  126. //Return Values:
  127. //   If the function success, the return value is nonzero
  128. //   If the function fail, the return value is zero
  129. //Remarks:
  130. //  Use SetShapeWindowSkin to skin application-specific windows 
  131. //  without non-client area and menu bar. These windows can have
  132. //  absolutely any shape or even be translucent.
  133. //
  134. int SetShapeWindowSkin( HWND hWnd , char* SkinName );
  135. ///////////////////////////////////////////////////////////////////////////
  136. //Function: RemoveWindowSkin( HWND hWnd )
  137. // set skin of new create dialog
  138. //
  139. //Parameters: 
  140. //   hWnd
  141. // [in]Handle to the window to be remove skin.      
  142. //
  143. //Return Values:
  144. //   If the function success, the return value is nonzero
  145. //   If the function fail, the return value is zero
  146. //Remarks:
  147. //  Use this function to remove window skin.
  148. //
  149. int RemoveWindowSkin( HWND hWnd );
  150. ///////////////////////////////////////////////////////////////////////////
  151. //Function: SetDialogSkin( char* szSkinName )
  152. // set skin of new create dialog
  153. //
  154. //Parameters: 
  155. //   szSkinName
  156. //      [in]Specifies the name of FrameWnd object which defined in skin file.      
  157. //
  158. //Return Values:
  159. //   If the function success, the return value is nonzero
  160. //   If the function fail, the return value is zero
  161. //Remarks:
  162. //  Use this function to set dialog skin. dialog will auto be skinned
  163. //   after this function called.
  164. //
  165. int SetDialogSkin( char* szSkinName );
  166. ///////////////////////////////////////////////////////////////////////////
  167. //Function: SetSingleDialogSkin( HWND hWnd ,char* szSkinName )
  168. // Set the skin of an dialog
  169. //
  170. //Parameters: 
  171. //   hWnd
  172. // [in]Handle to the dialog to be set skin. 
  173. //   szSkinName
  174. //      [in]Specifies the skin nanem.      
  175. //
  176. //Return Values:
  177. //   If the function success, the return value is nonzero
  178. //   If the function fail, the return value is zero
  179. //Remarks:
  180. //  Use this function to set single dialog skin.
  181. //
  182. int SetSingleDialogSkin( HWND hWnd , char* szSkinName );
  183. ///////////////////////////////////////////////////////////////////////////
  184. //Function: RemoveDialogSkin()
  185. // This function will stop auto skin dialog. 
  186. // the function will not remove the dialog's
  187. //          skin which already set. The new create dialog will have no skin.
  188. //
  189. //Parameters: 
  190. // none.
  191. //Return Values:
  192. //   If the function success, the return value is nonzero
  193. //   If the function fail, the return value is zero
  194. //Remarks:
  195. //  Use this function to stop auto skin dialog.
  196. //
  197. int RemoveDialogSkin();
  198. ///////////////////////////////////////////////////////////////////////////
  199. //Function: EnableWindowScrollbarSkin( HWND hWnd ,int fnBar )
  200. // Initialize the skin scrollbars for a window
  201. //
  202. //Parameters: 
  203. //   hWnd
  204. // [in]Handle to the window to be set skin scrollbar. 
  205. //   fnBar
  206. //      [in]Specifies the type of scroll bar for which to skin. 
  207. // This parameter can be one of the following values       
  208. // SB_HORZ for the window's standard horizontal scroll bar.  
  209. // SB_VERT for the window's standard  scroll bar.  
  210. // SB_BOTH for both horizontal and vertical scroll bar.   
  211. //
  212. //Return Values:
  213. //   If the function success, the return value is nonzero
  214. //   If the function fail, the return value is zero
  215. //Remarks:
  216. //  Use this function to skin your window scrollbar
  217. //
  218. int EnableWindowScrollbarSkin( HWND hWnd ,int fnBar );
  219. ///////////////////////////////////////////////////////////////////////////
  220. //Function: DisableWindowScrollbarSkin( HWND hWnd )
  221. // disable the skin scrollbars for a window
  222. //
  223. //Parameters: 
  224. //   hWnd
  225. // [in]Handle to the window to be disable skin scrollbar. 
  226. //
  227. //Return Values:
  228. //   If the function success, the return value is nonzero
  229. //   If the function fail, the return value is zero
  230. //Remarks:
  231. //  Use this function to skin your window scrollbar
  232. //
  233. int DisableWindowScrollbarSkin( HWND hWnd );
  234. ///////////////////////////////////////////////////////////////////////////
  235. //Function: TrackSkinPopupMenu( HMENU hMenu,int x, int y, HWND hWnd )
  236. // The TrackSkinPopupMenu function displays a shortcut menu at the 
  237. // specified location and tracks the selection of items on the menu.
  238. // The shortcut menu can appear anywhere on the screen.
  239. //
  240. //Parameters
  241. // hMenu 
  242. // [in] Handle to the shortcut menu to be displayed. 
  243. //  The handle can be obtained by calling CreatePopupMenu
  244. //  to create a new shortcut menu, or by calling GetSubMenu
  245. //  to retrieve a handle to a submenu associated with an 
  246. //  existing menu item. 
  247. //uFlags 
  248. // [in] Use zero of more of these flags to specify function options. 
  249. // Use one of the following flags to specify how the function positions
  250. // the shortcut menu horizontally. 
  251. // ------------------------------------------------------------------------------
  252. // TPM_CENTERALIGN If this flag is set, the function centers the shortcut
  253. // menu horizontally relative to the coordinate specified
  254. // by the x parameter. 
  255. // TPM_LEFTALIGN If this flag is set, the function positions the shortcut
  256. // menu so that its left side is aligned with the coordinate
  257. // specified by the x parameter. 
  258. // TPM_RIGHTALIGN Positions the shortcut menu so that its right side is 
  259. // aligned with the coordinate specified by the x parameter. 
  260. // ------------------------------------------------------------------------------
  261. // Use one of the following flags to specify how the function positions the shortcut
  262. // menu vertically. 
  263. // TPM_BOTTOMALIGN If this flag is set, the function positions the shortcut 
  264. // menu so that its bottom side is aligned with the coordinate 
  265. // specified by the y parameter. 
  266. // TPM_TOPALIGN If this flag is set, the function positions the shortcut
  267. // menu so that its top side is aligned with the coordinate 
  268. // specified by the y parameter. 
  269. // TPM_VCENTERALIGN If this flag is set, the function centers the shortcut menu 
  270. // vertically relative to the coordinate specified by the y parameter. 
  271. //
  272. // x 
  273. // [in] Specifies the horizontal location of the shortcut menu, 
  274. //  in screen coordinates. 
  275. // y 
  276. // [in] Specifies the vertical location of the shortcut menu, 
  277. //  in screen coordinates. 
  278. // hWnd 
  279. // [in] Handle to the window that owns the shortcut menu. 
  280. //  This window receives all messages from the menu. 
  281. //  The window does not receive a WM_COMMAND message from the
  282. //  menu until the function returns. 
  283. BOOL TrackSkinPopupMenu(  HMENU hMenu, UINT uFlags, int x, int y, HWND hWnd );
  284. #endif