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.

54 lines
1.3 KiB

  1. #ifndef _INC_PGCARET_H
  2. #define _INC_PGCARET_H
  3. #include "pgbase.h"
  4. class CCaretPg: public WizardPage
  5. {
  6. public:
  7. CCaretPg(LPPROPSHEETPAGE ppsp);
  8. ~CCaretPg(VOID);
  9. protected:
  10. void UpdateControls();
  11. LRESULT OnInitDialog(HWND hwnd, WPARAM wParam, LPARAM lParam);
  12. LRESULT OnCommand(HWND hwnd, WPARAM wParam, LPARAM lParam) {return 1;}
  13. LRESULT OnPSN_WizNext(HWND hwnd, INT idCtl, LPPSHNOTIFY pnmh);
  14. LRESULT OnPSN_SetActive(HWND hwnd, INT idCtl, LPPSHNOTIFY pnmh);
  15. LRESULT OnTimer( HWND hwnd, WPARAM wParam, LPARAM lParam );
  16. LRESULT OnHScroll( HWND hwnd, WPARAM wParam, LPARAM lParam );
  17. LRESULT HandleMsg(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
  18. {
  19. LRESULT rv = 0;
  20. switch(uMsg)
  21. {
  22. case WM_HSCROLL:
  23. rv = OnHScroll(hwnd, wParam, lParam);
  24. break;
  25. // sliders don't get this message so pass it on
  26. case WM_SYSCOLORCHANGE:
  27. SendMessage(GetDlgItem(hwnd, KCURSOR_WIDTH), WM_SYSCOLORCHANGE, 0, 0);
  28. SendMessage(GetDlgItem(hwnd, KCURSOR_RATE), WM_SYSCOLORCHANGE, 0, 0);
  29. break;
  30. default:
  31. break;
  32. }
  33. return rv;
  34. }
  35. private:
  36. void CCaretPg::DrawCaret(HWND hwnd, BOOL fClearFirst);
  37. BOOL fBlink;
  38. UINT uNewBlinkTime, uBlinkTime;
  39. DWORD dwNewSize, dwOriginalSize;
  40. HWND hwndCursorScroll;
  41. RECT rCursor;
  42. HWND hwndCaret;
  43. };
  44. #endif // _INC_PGCARET_H