Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

60 lines
1.4 KiB

  1. /******************************Module*Header*******************************\
  2. * Module Name: sswproc.hxx
  3. *
  4. * Defines and externals for screen saver common shell
  5. *
  6. * Copyright (c) 1996 Microsoft Corporation
  7. *
  8. \**************************************************************************/
  9. #ifndef __mtkwproc_hxx__
  10. #define __mtkwproc_hxx__
  11. #include "mtk.hxx"
  12. #include "mtkwin.hxx"
  13. // Window proc messages
  14. enum {
  15. MTK_WM_PALETTE = WM_USER,
  16. MTK_WM_INITGL,
  17. MTK_WM_START,
  18. MTK_WM_CLOSING,
  19. MTK_WM_IDLE,
  20. MTK_WM_RETURN,
  21. MTK_WM_REDRAW
  22. };
  23. /**************************************************************************\
  24. * SSW_TABLE
  25. *
  26. \**************************************************************************/
  27. typedef struct {
  28. HWND hwnd;
  29. PMTKWIN pssw;
  30. } SSW_TABLE_ENTRY;
  31. #define SS_MAX_WINDOWS 10
  32. class SSW_TABLE{
  33. public:
  34. SSW_TABLE();
  35. void Register( HWND hwnd, PMTKWIN pssw );
  36. PMTKWIN PsswFromHwnd( HWND hwnd );
  37. BOOL Remove( HWND hwnd );
  38. int GetNumWindows() { return nEntries; };
  39. private:
  40. SSW_TABLE_ENTRY sswTable[SS_MAX_WINDOWS];
  41. int nEntries;
  42. };
  43. // Generic ss window proc
  44. extern LONG SS_ScreenSaverProc(HWND, UINT, WPARAM, LPARAM);
  45. extern LONG mtkWndProc(HWND, UINT, WPARAM, LPARAM);
  46. extern LONG FullScreenPaletteManageProc( HWND, UINT, WPARAM, LPARAM );
  47. extern LONG PaletteManageProc( HWND, UINT, WPARAM, LPARAM );
  48. extern SSW_TABLE sswTable;
  49. #endif // __mtkwproc_hxx__