X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/50acee04cdaf2fec9f3fa4cd0035ff2d9ed7d53a..c6ea1fdaf924be4ee49a19d12f76e4fcd257bb0a:/include/wx/aui/dockart.h diff --git a/include/wx/aui/dockart.h b/include/wx/aui/dockart.h index 8bafde4ffc..027f399644 100644 --- a/include/wx/aui/dockart.h +++ b/include/wx/aui/dockart.h @@ -1,10 +1,10 @@ /////////////////////////////////////////////////////////////////////////////// -// Name: dockart.h +// Name: wx/aui/dockart.h // Purpose: wxaui: wx advanced user interface - docking window manager // Author: Benjamin I. Williams // Modified by: // Created: 2005-05-17 -// RCS-ID: +// RCS-ID: $Id$ // Copyright: (C) Copyright 2005, Kirix Corporation, All Rights Reserved. // Licence: wxWindows Library Licence, Version 3.1 /////////////////////////////////////////////////////////////////////////////// @@ -20,17 +20,21 @@ #if wxUSE_AUI +#include "wx/pen.h" +#include "wx/brush.h" +#include "wx/bitmap.h" +#include "wx/colour.h" // dock art provider code - a dock provider provides all drawing // functionality to the wxAui dock manager. This allows the dock // manager to have plugable look-and-feels -class WXDLLIMPEXP_AUI wxDockArt +class WXDLLIMPEXP_AUI wxAuiDockArt { public: - wxDockArt() { } - virtual ~wxDockArt() { } + wxAuiDockArt() { } + virtual ~wxAuiDockArt() { } virtual int GetMetric(int id) = 0; virtual void SetMetric(int id, int new_val) = 0; @@ -38,47 +42,53 @@ public: virtual wxFont GetFont(int id) = 0; virtual wxColour GetColour(int id) = 0; virtual void SetColour(int id, const wxColor& colour) = 0; - wxColor GetColor(int id) { return GetColour(id); } - void SetColor(int id, const wxColor& color) { SetColour(id, color); } - + wxColour GetColor(int id) { return GetColour(id); } + void SetColor(int id, const wxColour& color) { SetColour(id, color); } + virtual void DrawSash(wxDC& dc, + wxWindow* window, int orientation, const wxRect& rect) = 0; virtual void DrawBackground(wxDC& dc, + wxWindow* window, int orientation, const wxRect& rect) = 0; virtual void DrawCaption(wxDC& dc, + wxWindow* window, const wxString& text, const wxRect& rect, - wxPaneInfo& pane) = 0; + wxAuiPaneInfo& pane) = 0; virtual void DrawGripper(wxDC& dc, + wxWindow* window, const wxRect& rect, - wxPaneInfo& pane) = 0; + wxAuiPaneInfo& pane) = 0; virtual void DrawBorder(wxDC& dc, + wxWindow* window, const wxRect& rect, - wxPaneInfo& pane) = 0; + wxAuiPaneInfo& pane) = 0; virtual void DrawPaneButton(wxDC& dc, + wxWindow* window, int button, int button_state, const wxRect& rect, - wxPaneInfo& pane) = 0; + wxAuiPaneInfo& pane) = 0; }; -// this is the default art provider for wxFrameManager. Dock art +// this is the default art provider for wxAuiManager. Dock art // can be customized by creating a class derived from this one, // or replacing this class entirely -class WXDLLIMPEXP_AUI wxDefaultDockArt : public wxDockArt +class WXDLLIMPEXP_AUI wxAuiDefaultDockArt : public wxAuiDockArt { public: - wxDefaultDockArt(); + wxAuiDefaultDockArt(); int GetMetric(int metric_id); void SetMetric(int metric_id, int new_val); @@ -88,36 +98,48 @@ public: wxFont GetFont(int id); void DrawSash(wxDC& dc, + wxWindow *window, int orientation, const wxRect& rect); void DrawBackground(wxDC& dc, + wxWindow *window, int orientation, const wxRect& rect); void DrawCaption(wxDC& dc, + wxWindow *window, const wxString& text, const wxRect& rect, - wxPaneInfo& pane); + wxAuiPaneInfo& pane); void DrawGripper(wxDC& dc, + wxWindow *window, const wxRect& rect, - wxPaneInfo& pane); + wxAuiPaneInfo& pane); void DrawBorder(wxDC& dc, + wxWindow *window, const wxRect& rect, - wxPaneInfo& pane); + wxAuiPaneInfo& pane); void DrawPaneButton(wxDC& dc, + wxWindow *window, int button, int button_state, const wxRect& rect, - wxPaneInfo& pane); + wxAuiPaneInfo& pane); + + void DrawIcon(wxDC& dc, + const wxRect& rect, + wxAuiPaneInfo& pane); protected: void DrawCaptionBackground(wxDC& dc, const wxRect& rect, bool active); + void InitBitmaps(); + protected: wxPen m_border_pen; @@ -127,11 +149,16 @@ protected: wxFont m_caption_font; wxBitmap m_inactive_close_bitmap; wxBitmap m_inactive_pin_bitmap; + wxBitmap m_inactive_maximize_bitmap; + wxBitmap m_inactive_restore_bitmap; wxBitmap m_active_close_bitmap; wxBitmap m_active_pin_bitmap; + wxBitmap m_active_maximize_bitmap; + wxBitmap m_active_restore_bitmap; wxPen m_gripper_pen1; wxPen m_gripper_pen2; wxPen m_gripper_pen3; + wxColour m_base_colour; wxColour m_active_caption_colour; wxColour m_active_caption_gradient_colour; wxColour m_active_caption_text_colour;