OSDN Git Service

Change Dir Structure to be same as TortoiseSVN'
[tortoisegit/TortoiseGitJp.git] / src / Utils / TreePropSheet / PropPageFrameDefault.h
diff --git a/src/Utils/TreePropSheet/PropPageFrameDefault.h b/src/Utils/TreePropSheet/PropPageFrameDefault.h
new file mode 100644 (file)
index 0000000..e60cb04
--- /dev/null
@@ -0,0 +1,117 @@
+/********************************************************************\r
+*\r
+* Copyright (c) 2002 Sven Wiegand <mail@sven-wiegand.de>\r
+*\r
+* You can use this and modify this in any way you want,\r
+* BUT LEAVE THIS HEADER INTACT.\r
+*\r
+* Redistribution is appreciated.\r
+*\r
+* $Workfile:$\r
+* $Revision:$\r
+* $Modtime:$\r
+* $Author:$\r
+*\r
+* Revision History:\r
+*      $History:$\r
+*\r
+*********************************************************************/\r
+\r
+\r
+#if !defined(AFX_PROPPAGEFRAMEDEFAULT_H__5C5B7AC9_2DF5_4E8C_8F5E_DE2CC04BBED7__INCLUDED_)\r
+#define AFX_PROPPAGEFRAMEDEFAULT_H__5C5B7AC9_2DF5_4E8C_8F5E_DE2CC04BBED7__INCLUDED_\r
+\r
+#if _MSC_VER > 1000\r
+#pragma once\r
+#endif // _MSC_VER > 1000\r
+\r
+#include "PropPageFrame.h"\r
+\r
+\r
+namespace TreePropSheet\r
+{\r
+\r
+\r
+/**\r
+An implementation of CPropPageFrame, that works well for Windows XP\r
+styled systems and older windows versions (without themes).\r
+\r
+@author Sven Wiegand\r
+*/\r
+class /*AFX_EXT_CLASS*/ CPropPageFrameDefault : public CWnd,\r
+                                            public CPropPageFrame\r
+{\r
+// construction/destruction\r
+public:\r
+       CPropPageFrameDefault();\r
+       virtual ~CPropPageFrameDefault();\r
+\r
+// operations\r
+public:\r
+\r
+// overridings\r
+public:\r
+       virtual BOOL Create(DWORD dwWindowStyle, const RECT &rect, CWnd *pwndParent, UINT nID);\r
+       virtual CWnd* GetWnd();\r
+       virtual void SetCaption(LPCTSTR lpszCaption, HICON hIcon = NULL);\r
+       \r
+protected:\r
+       virtual CRect CalcMsgArea();\r
+       virtual CRect CalcCaptionArea();\r
+       virtual void DrawCaption(CDC *pDc, CRect rect, LPCTSTR lpszCaption, HICON hIcon);\r
+\r
+// Implementation helpers\r
+protected:\r
+       /**\r
+       Fills a rectangular area with a gradient color starting at the left\r
+       side with the color clrLeft and ending at the right sight with the\r
+       color clrRight.\r
+\r
+       @param pDc\r
+               Device context to draw the rectangle in.\r
+       @param rect\r
+               Rectangular area to fill.\r
+       @param clrLeft\r
+               Color on the left side.\r
+       @param clrRight\r
+               Color on the right side.\r
+       */\r
+       void FillGradientRectH(CDC *pDc, const RECT &rect, COLORREF clrLeft, COLORREF clrRight);\r
+\r
+       /**\r
+       Returns TRUE if Windows XP theme support is available, FALSE \r
+       otherwise.\r
+       */\r
+       BOOL ThemeSupport() const;\r
+\r
+protected:\r
+       //{{AFX_VIRTUAL(CPropPageFrameDefault)\r
+       //}}AFX_VIRTUAL\r
+\r
+// message handlers\r
+protected:\r
+       //{{AFX_MSG(CPropPageFrameDefault)\r
+       afx_msg void OnPaint();\r
+       afx_msg BOOL OnEraseBkgnd(CDC* pDC);\r
+       //}}AFX_MSG\r
+       DECLARE_MESSAGE_MAP()\r
+\r
+// attributes\r
+protected:\r
+       /** \r
+       Image list that contains only the current icon or nothing if there\r
+       is no icon.\r
+       */\r
+       CImageList m_Images;\r
+};\r
+\r
+\r
+} //namespace TreePropSheet\r
+\r
+\r
+/////////////////////////////////////////////////////////////////////////////\r
+\r
+//{{AFX_INSERT_LOCATION}}\r
+// Microsoft Visual C++ fügt unmittelbar vor der vorhergehenden Zeile zusätzliche Deklarationen ein.\r
+\r
+#endif // AFX_PROPPAGEFRAMEDEFAULT_H__5C5B7AC9_2DF5_4E8C_8F5E_DE2CC04BBED7__INCLUDED_\r