132 lines
5.7 KiB
C++
132 lines
5.7 KiB
C++
class CXTPResourceImages;
|
|
|
|
|
|
class _XTP_EXT_CLASS CXTPDockingPaneVisualStudio2012Theme : public CXTPDockingPaneDefaultTheme // CXTPDockingPanePaintManager
|
|
{
|
|
// Construction / Destruction
|
|
public:
|
|
|
|
//-------------------------------------------------------------------------
|
|
// Summary:
|
|
// Constructs a CXTPDockingPaneVisualStudio2012Theme object.
|
|
//-------------------------------------------------------------------------
|
|
CXTPDockingPaneVisualStudio2012Theme();
|
|
|
|
//-------------------------------------------------------------------------
|
|
// Summary:
|
|
// Destroys a CXTPDockingPaneVisualStudio2012Theme object, handles cleanup and deallocation.
|
|
//-------------------------------------------------------------------------
|
|
virtual ~CXTPDockingPaneVisualStudio2012Theme();
|
|
|
|
public:
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// This method is called to refresh the visual metrics of the pane.
|
|
//-----------------------------------------------------------------------
|
|
virtual void RefreshMetrics();
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Call this method to get pane's caption rectangle.
|
|
// Parameters:
|
|
// pPane - Side Panel container to get caption CRECT.
|
|
// Returns:
|
|
// Bounding rectangle of the side panel's caption.
|
|
//-----------------------------------------------------------------------
|
|
virtual CRect GetPaneCaptionRect(const CXTPDockingPaneSidePanel *pPane);
|
|
|
|
virtual void AdjustClientRect(CXTPDockingPaneTabbedContainer* pPane, CRect& rc, BOOL bApply);
|
|
virtual void AdjustCaptionRect(const CXTPDockingPaneTabbedContainer* pPane, CRect& rc);
|
|
|
|
// Drawing methods
|
|
public:
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Override this method to draw splitter.
|
|
// Parameters:
|
|
// pDC - Pointer to a valid device context
|
|
// pSplitter - Pointer to splitter window
|
|
//-----------------------------------------------------------------------
|
|
virtual void DrawSplitter(CDC *pDC, CXTPDockingPaneSplitterWnd *pSplitter);
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Override this member function to draw a caption.
|
|
// Parameters:
|
|
// pDC - Reference to the device context in which to draw.
|
|
// pPane - Pointer to the tabbed container.
|
|
// rc - Client rectangle of the tabbed container.
|
|
//-----------------------------------------------------------------------
|
|
virtual void DrawCaption(CDC *pDC, CXTPDockingPaneTabbedContainer *pPane, CRect rc);
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Call this method to draw frame of floating window
|
|
// Parameters:
|
|
// pDC - Pointer to a valid device context
|
|
// pPane - Floating window pointer
|
|
// rc - Client rectangle of floating frame
|
|
//-----------------------------------------------------------------------
|
|
virtual void DrawFloatingFrame(CDC *pDC, CXTPDockingPaneMiniWnd *pPane, CRect rc);
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Override this member function to draw a tabbed container.
|
|
// Parameters:
|
|
// pDC - Reference to the device context in which to draw.
|
|
// pPane - Pointer to the tabbed container.
|
|
// rc - Client rectangle of the tabbed container.
|
|
//-----------------------------------------------------------------------
|
|
virtual void DrawPane(CDC *pDC, CXTPDockingPaneTabbedContainer *pPane, CRect rc);
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Override this member function to draw the side panel.
|
|
// Parameters:
|
|
// pDC - Reference to the device context in which to draw.
|
|
// pPane - Pointer to the side panel.
|
|
// rc - Client rectangle of the side panel.
|
|
//-----------------------------------------------------------------------
|
|
virtual void DrawSidePanel(CDC *pDC, CXTPDockingPaneSidePanel *pPane, CRect rc);
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// Override this member function to draw button of tabbed caption.
|
|
// Parameters:
|
|
// pDC - Pointer to a valid device context
|
|
// pButton - Button pointer need to draw.
|
|
// clrButton - Color of button text.
|
|
//-----------------------------------------------------------------------
|
|
virtual void DrawCaptionButton(CDC *pDC, CXTPDockingPaneCaptionButton *pButton, COLORREF clrButton);
|
|
|
|
//-----------------------------------------------------------------------
|
|
// Summary:
|
|
// This mmethod is called by the framework to draw the docking pane
|
|
// auto hide panel background and splitter.
|
|
// Parameters:
|
|
// pDC - Pointer to the auto hide panes device context.
|
|
// rc - Size of the area to draw.
|
|
// direction - Docking direction either xtpPaneDockLeft, xtpPaneDockRight,
|
|
// xtpPaneDockTop or xtpPaneDockBottom.
|
|
//-----------------------------------------------------------------------
|
|
virtual void DrawAutoHidePanel(CDC* pDC, CRect rc, XTPDockingPaneDirection direction);
|
|
|
|
protected:
|
|
|
|
void DrawTitleBar(CDC *pDC, CXTPDockingPaneBase *pPane, CRect rc, BOOL bVertical);
|
|
|
|
void DrawGripper(CDC *pDC, CRect rcGripper, COLORREF clr, BOOL bVertical);
|
|
|
|
void DrawDashedLineH(CDC *pDC, int left, int top, int right, COLORREF clr);
|
|
void DrawDashedLineV(CDC *pDC, int left, int top, int bottom, COLORREF clr);
|
|
|
|
public:
|
|
|
|
CXTPDockingPaneColorSetVisualStudio2012 m_csInactive;
|
|
CXTPDockingPaneColorSetVisualStudio2012 m_csActive;
|
|
|
|
CString m_strFontFace; // Font face name
|
|
int m_nFontSize; // Font size in points
|
|
};
|