'+--------------------------------------------------------------------------+
'| |
'| SkinWIN |
'| |
'| Windows SDK programming style template. |
'| |
'| WinLIFT SkinEngine |
'| |
'| Version 3.00 |
'| |
'+--------------------------------------------------------------------------+
'| |
'| Author Patrice TERRIER |
'| 8 Domaine de Rochagnon. 38800 Champagnier FRANCE |
'| [url]http://www.zapsolution.com[/url] |
'| |
'| copyright (c) 2003 Patrice TERRIER |
'| |
'+--------------------------------------------------------------------------+
'| Project started on : 02-24-2003 |
'| Last revised : 02-24-2003 |
'+--------------------------------------------------------------------------+
#COMPILE EXE "skinwin.exe"
#INCLUDE "win32api.inc"
'/////////////////////////////////////////////////////////////////////////////////////
DECLARE FUNCTION skAnimate LIB "SKENGINE.DLL" ALIAS "SKANIMATE" (BYVAL hParent&, BYVAL hBitmap&, BYVAL x&, BYVAL y&) AS LONG
DECLARE FUNCTION skLoadImage LIB "SKENGINE.DLL" ALIAS "SKLOADIMAGE" (BYVAL BmpFile$) AS LONG
DECLARE FUNCTION skSkinMainWindow LIB "skSDKapi.dll" ALIAS "skSkinMainWindow" (BYVAL hWnd&, OPTIONAL BYVAL SysButTip$) AS LONG
'/////////////////////////////////////////////////////////////////////////////////////
FUNCTION WndProc(BYVAL hWnd& , BYVAL Msg&, BYVAL wParam&, BYVAL lParam&) AS LONG
LOCAL rc AS RECT
LOCAL ps AS PAINTSTRUCT
SELECT CASE Msg&
CASE %WM_DESTROY
CALL PostQuitMessage(0)
END SELECT
FUNCTION = DefWindowProc(hWnd&, Msg&, wParam&, lParam&)
END FUNCTION
FUNCTION WinMain (BYVAL hInstance AS LONG, _
BYVAL hPrevInstance AS LONG, _
BYVAL lpCmdLine AS ASCIIZ PTR, _
BYVAL iCmdShow AS LONG) AS LONG
LOCAL msg AS tagMSG
LOCAL wc AS WNDCLASSEX
LOCAL szClassName AS ASCIIZ * 128
szClassName = "SkinWin"
IF ISFALSE(hPrevInstance&) THEN
wc.cbSize = SIZEOF(wc)
wc.style = %CS_HREDRAW OR %CS_VREDRAW
wc.lpfnWndProc = CODEPTR(WndProc)
wc.cbClsExtra = 0
wc.cbWndExtra = 0
wc.hInstance = hInstance&
wc.hIcon = LoadIcon(%NULL, BYVAL %IDI_APPLICATION)
wc.hCursor = LoadCursor(%NULL, BYVAL %IDC_ARROW)
wc.hbrBackground = GetStockObject(%BLACK_BRUSH)
wc.lpszMenuName = %NULL
wc.lpszClassName = VARPTR(szClassName)
wc.hIconSm = LoadIcon(%NULL, BYVAL %IDI_APPLICATION)
CALL RegisterClassEx(wc)
END IF
hWnd& = CreateWindowEx(0, _
szClassName, _ ' window class name
"WinLIFT [url]http://www.zapsolution.com[/url]", _ ' window caption
%WS_OVERLAPPEDWINDOW, _ ' window style
%CW_USEDEFAULT, _ ' initial x position
%CW_USEDEFAULT, _ ' initial y position
%CW_USEDEFAULT, _ ' initial x size
%CW_USEDEFAULT, _ ' initial y size
%NULL, _ ' parent window handle
%NULL, _ ' window menu handle
hInstance&, _ ' program instance handle
BYVAL %NULL) ' creation parameters
IF hWnd& THEN
'///////////////////////////////////////////////////////////////////////
CaptionTip$ = "Dock|Undock|Minimize|Maximize|Restore|Close"
[COLOR=red]Ret& = skSkinMainWindow(hWnd&, CaptionTip$)[/COLOR]
' Ret& = %FALSE means unable to skin the window
' Ret& = %TRUE skinning has been done
CALL skAnimate(hWnd&, skLoadImage("HEART.BMP"), 20, 50)
'///////////////////////////////////////////////////////////////////////
CALL ShowWindow(hWnd&, %SW_SHOW)
CALL UpdateWindow(hWnd&)
DO WHILE GetMessage(msg, %NULL, 0, 0)
TranslateMessage msg
DispatchMessage msg
LOOP
FUNCTION = msg.wParam
END IF
END FUNCTION
'