XTPMiniToolBar.h
上传用户:szled88
上传日期:2015-04-09
资源大小:43957k
文件大小:3k
源码类别:

对话框与窗口

开发平台:

Visual C++

  1. // XTPMiniToolBar.h : interface for the CXTPMiniToolBar class.
  2. //
  3. // This file is a part of the XTREME COMMANDBARS MFC class library.
  4. // (c)1998-2008 Codejock Software, All Rights Reserved.
  5. //
  6. // THIS SOURCE FILE IS THE PROPERTY OF CODEJOCK SOFTWARE AND IS NOT TO BE
  7. // RE-DISTRIBUTED BY ANY MEANS WHATSOEVER WITHOUT THE EXPRESSED WRITTEN
  8. // CONSENT OF CODEJOCK SOFTWARE.
  9. //
  10. // THIS SOURCE CODE CAN ONLY BE USED UNDER THE TERMS AND CONDITIONS OUTLINED
  11. // IN THE XTREME TOOLKIT PRO LICENSE AGREEMENT. CODEJOCK SOFTWARE GRANTS TO
  12. // YOU (ONE SOFTWARE DEVELOPER) THE LIMITED RIGHT TO USE THIS SOFTWARE ON A
  13. // SINGLE COMPUTER.
  14. //
  15. // CONTACT INFORMATION:
  16. // support@codejock.com
  17. // http://www.codejock.com
  18. //
  19. /////////////////////////////////////////////////////////////////////////////
  20. //{{AFX_CODEJOCK_PRIVATE
  21. #if !defined(__XTPMINITOOLBAR_H__)
  22. #define __XTPMINITOOLBAR_H__
  23. //}}AFX_CODEJOCK_PRIVATE
  24. #if _MSC_VER > 1000
  25. #pragma once
  26. #endif // _MSC_VER > 1000
  27. #include "XTPPopupBar.h"
  28. /////////////////////////////////////////////////////////////////////////////
  29. // CXTPMiniToolBar window
  30. class _XTP_EXT_CLASS CXTPMiniToolBar : public CXTPPopupToolBar
  31. {
  32. DECLARE_XTP_COMMANDBAR(CXTPMiniToolBar);
  33. public:
  34. static CXTPMiniToolBar* AFX_CDECL CreateMiniToolBar(CXTPCommandBars* pCommandBars);
  35. protected:
  36. CXTPMiniToolBar();
  37. virtual ~CXTPMiniToolBar();
  38. public:
  39. BOOL TrackMiniBar(UINT nFlags, int x, int y);
  40. BOOL TrackPopupMenu(CXTPPopupBar* pPopupMenu, UINT nFlags, int x, int y);
  41. virtual BOOL OnHookKeyDown(UINT nChar, LPARAM lParam);
  42. protected:
  43. void PumpMessage();
  44. void UpdateOpacity();
  45. BOOL CursorInWindow() const;
  46. //{{AFX_CODEJOCK_PRIVATE
  47. DECLARE_MESSAGE_MAP()
  48. //{{AFX_VIRTUAL(CXTPMiniToolBar)
  49. virtual void Animate();
  50. virtual BOOL SetTrackingMode(int bMode, BOOL bSelectFirst = TRUE, BOOL bKeyboard = FALSE);
  51. virtual INT_PTR OnToolHitTest(CPoint point, TOOLINFO* pTI) const;
  52. virtual int OnHookMessage(HWND hWnd, UINT nMessage, WPARAM& wParam, LPARAM& lParam, LRESULT& lResult);
  53. //}}AFX_VIRTUAL
  54. //{{AFX_MSG(CXTPMiniToolBar)
  55. //}}AFX_MSG
  56. //}}AFX_CODEJOCK_PRIVATE
  57. protected:
  58. typedef BOOL(WINAPI* LPFNUPDATELAYEREDWINDOW) (HWND hwnd, HDC hdcDst, POINT *pptDst, SIZE *psize, HDC hdcSrc, POINT *pptSrc, COLORREF crKey, BLENDFUNCTION *pblend, DWORD dwFlags);
  59. typedef BOOL (WINAPI *PFNSETLAYEREDWINDOWATTRIBUTES) (HWND hwnd, COLORREF crKey, BYTE bAlpha, DWORD dwFlags);
  60. PFNSETLAYEREDWINDOWATTRIBUTES m_pfnSetLayeredWindowAttributes;    // point to Transparency proc in USER32.dll module
  61. LPFNUPDATELAYEREDWINDOW m_pfnUpdateLayeredWindow;
  62. BOOL m_bActivated;
  63. int m_nOpacity;
  64. BOOL m_bTracking;
  65. CXTPPopupBar* m_pContextMenu;
  66. };
  67. #endif // !defined(__XTPMINITOOLBAR_H__)