196 lines
5.5 KiB
C
196 lines
5.5 KiB
C
/*
|
|
* Property Sheets
|
|
*
|
|
* Copyright 1998 Francis Beaudet
|
|
*
|
|
* TODO:
|
|
* - All the functions are simply stubs
|
|
*
|
|
*/
|
|
|
|
#include "windows.h"
|
|
#include "commctrl.h"
|
|
#include "propsheet.h"
|
|
#include "win.h"
|
|
#include "debug.h"
|
|
|
|
|
|
LRESULT WINAPI
|
|
PROPSHEET_WindowProc (HWND32 hwnd, UINT32 uMsg, WPARAM32 wParam, LPARAM lParam);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*****************************************************************
|
|
* PropertySheet32A (COMCTL32.84)(COMCTL32.83)
|
|
*/
|
|
INT32 WINAPI PropertySheet32A(LPCPROPSHEETHEADER32A lppsh)
|
|
{
|
|
HWND32 hwnd;
|
|
|
|
FIXME(propsheet, "(%p): stub\n", lppsh);
|
|
|
|
if (lppsh->dwFlags & PSH_MODELESS) {
|
|
hwnd = CreateDialogParam32A ( lppsh->hInstance, WC_PROPSHEET32A,
|
|
lppsh->hwndParent, (DLGPROC32)PROPSHEET_WindowProc,
|
|
(LPARAM) lppsh );
|
|
ShowWindow32 (hwnd, TRUE);
|
|
} else {
|
|
hwnd = DialogBoxParam32A ( lppsh->hInstance, WC_PROPSHEET32A,
|
|
lppsh->hwndParent, (DLGPROC32)PROPSHEET_WindowProc,
|
|
(LPARAM) lppsh );
|
|
}
|
|
return hwnd;
|
|
}
|
|
|
|
/*****************************************************************
|
|
* PropertySheet32W (COMCTL32.85)
|
|
*/
|
|
INT32 WINAPI PropertySheet32W(LPCPROPSHEETHEADER32W propertySheetHeader)
|
|
{
|
|
FIXME(propsheet, "(%p): stub\n", propertySheetHeader);
|
|
|
|
return -1;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*****************************************************************
|
|
* CreatePropertySheetPage32A (COMCTL32.19)(COMCTL32.18)
|
|
*/
|
|
HPROPSHEETPAGE WINAPI CreatePropertySheetPage32A(LPCPROPSHEETPAGE32A lpPropSheetPage)
|
|
{
|
|
FIXME(propsheet, "(%p): stub\n", lpPropSheetPage);
|
|
|
|
return 0;
|
|
}
|
|
|
|
/*****************************************************************
|
|
* CreatePropertySheetPage32W (COMCTL32.20)
|
|
*/
|
|
HPROPSHEETPAGE WINAPI CreatePropertySheetPage32W(LPCPROPSHEETPAGE32W lpPropSheetPage)
|
|
{
|
|
FIXME(propsheet, "(%p): stub\n", lpPropSheetPage);
|
|
|
|
return 0;
|
|
}
|
|
|
|
/*****************************************************************
|
|
* DestroyPropertySheetPage32 (COMCTL32.24)
|
|
*/
|
|
BOOL32 WINAPI DestroyPropertySheetPage32(HPROPSHEETPAGE hPropPage)
|
|
{
|
|
FIXME(propsheet, "(0x%08lx): stub\n", (DWORD)hPropPage);
|
|
return FALSE;
|
|
}
|
|
|
|
|
|
|
|
LRESULT WINAPI
|
|
PROPSHEET_WindowProc (HWND32 hwnd, UINT32 uMsg, WPARAM32 wParam, LPARAM lParam)
|
|
{
|
|
/* WND *wndPtr = WIN_FindWndPtr(hwnd); */
|
|
|
|
switch (uMsg) {
|
|
case PSM_SETCURSEL:
|
|
FIXME (propsheet, "Unimplemented msg PSM_SETCURSEL\n");
|
|
return 0;
|
|
case PSM_REMOVEPAGE:
|
|
FIXME (propsheet, "Unimplemented msg PSM_REMOVEPAGE\n");
|
|
return 0;
|
|
case PSM_ADDPAGE:
|
|
FIXME (propsheet, "Unimplemented msg PSM_ADDPAGE\n");
|
|
return 0;
|
|
case PSM_CHANGED:
|
|
FIXME (propsheet, "Unimplemented msg PSM_CHANGED\n");
|
|
return 0;
|
|
case PSM_RESTARTWINDOWS:
|
|
FIXME (propsheet, "Unimplemented msg PSM_RESTARTWINDOWS\n");
|
|
return 0;
|
|
case PSM_REBOOTSYSTEM:
|
|
FIXME (propsheet, "Unimplemented msg PSM_REBOOTSYSTEM\n");
|
|
return 0;
|
|
case PSM_CANCELTOCLOSE:
|
|
FIXME (propsheet, "Unimplemented msg PSM_CANCELTOCLOSE\n");
|
|
return 0;
|
|
case PSM_QUERYSIBLINGS:
|
|
FIXME (propsheet, "Unimplemented msg PSM_QUERYSIBLINGS\n");
|
|
return 0;
|
|
case PSM_UNCHANGED:
|
|
FIXME (propsheet, "Unimplemented msg PSM_UNCHANGED\n");
|
|
return 0;
|
|
case PSM_APPLY:
|
|
FIXME (propsheet, "Unimplemented msg PSM_APPLY\n");
|
|
return 0;
|
|
case PSM_SETTITLE32A:
|
|
FIXME (propsheet, "Unimplemented msg PSM_SETTITLE32A\n");
|
|
return 0;
|
|
case PSM_SETTITLE32W:
|
|
FIXME (propsheet, "Unimplemented msg PSM_SETTITLE32W\n");
|
|
return 0;
|
|
case PSM_SETWIZBUTTONS:
|
|
FIXME (propsheet, "Unimplemented msg PSM_SETWIZBUTTONS\n");
|
|
return 0;
|
|
case PSM_PRESSBUTTON:
|
|
FIXME (propsheet, "Unimplemented msg PSM_PRESSBUTTON\n");
|
|
return 0;
|
|
case PSM_SETCURSELID:
|
|
FIXME (propsheet, "Unimplemented msg PSM_SETCURSELID\n");
|
|
return 0;
|
|
case PSM_SETFINISHTEXT32A:
|
|
FIXME (propsheet, "Unimplemented msg PSM_SETFINISHTEXT32A\n");
|
|
return 0;
|
|
case PSM_SETFINISHTEXT32W:
|
|
FIXME (propsheet, "Unimplemented msg PSM_SETFINISHTEXT32W\n");
|
|
return 0;
|
|
case PSM_GETTABCONTROL:
|
|
FIXME (propsheet, "Unimplemented msg PSM_GETTABCONTROL\n");
|
|
return 0;
|
|
case PSM_ISDIALOGMESSAGE:
|
|
FIXME (propsheet, "Unimplemented msg PSM_ISDIALOGMESSAGE\n");
|
|
return 0;
|
|
case PSM_GETCURRENTPAGEHWND:
|
|
FIXME (propsheet, "Unimplemented msg PSM_GETCURRENTPAGEHWND\n");
|
|
return 0;
|
|
|
|
default:
|
|
if (uMsg >= WM_USER)
|
|
ERR (propsheet, "unknown msg %04x wp=%08x lp=%08lx\n",
|
|
uMsg, wParam, lParam);
|
|
return DefWindowProc32A (hwnd, uMsg, wParam, lParam);
|
|
}
|
|
}
|
|
|
|
|
|
VOID
|
|
PROPSHEET_Register (VOID)
|
|
{
|
|
WNDCLASS32A wndClass;
|
|
|
|
if (GlobalFindAtom32A (WC_PROPSHEET32A)) return;
|
|
|
|
ZeroMemory (&wndClass, sizeof(WNDCLASS32A));
|
|
wndClass.style = CS_GLOBALCLASS | CS_DBLCLKS | CS_SAVEBITS;
|
|
wndClass.lpfnWndProc = (WNDPROC32)PROPSHEET_WindowProc;
|
|
wndClass.cbClsExtra = 0;
|
|
wndClass.cbWndExtra = sizeof(PROPSHEET_INFO *);
|
|
wndClass.hCursor = LoadCursor32A (0, IDC_ARROW32A);
|
|
wndClass.hbrBackground = 0;
|
|
wndClass.lpszClassName = WC_PROPSHEET32A;
|
|
|
|
RegisterClass32A (&wndClass);
|
|
}
|
|
|
|
|
|
VOID
|
|
PROPSHEET_UnRegister (VOID)
|
|
{
|
|
if (GlobalFindAtom32A (WC_PROPSHEET32A))
|
|
UnregisterClass32A (WC_PROPSHEET32A, (HINSTANCE32)NULL);
|
|
}
|