+// tab art class
+
+
+class WXDLLIMPEXP_AUI wxTabArt
+{
+public:
+
+ wxTabArt() { }
+ virtual ~wxTabArt() { }
+
+ virtual void SetNormalFont(const wxFont& font) = 0;
+ virtual void SetSelectedFont(const wxFont& font) = 0;
+ virtual void SetMeasuringFont(const wxFont& font) = 0;
+
+ virtual void DrawBackground(
+ wxDC* dc,
+ const wxRect& rect) = 0;
+
+ virtual void DrawTab(wxDC* dc,
+ const wxRect& in_rect,
+ const wxString& caption,
+ bool active,
+ wxRect* out_rect,
+ int* x_extent) = 0;
+
+ virtual void DrawButton(
+ wxDC* dc,
+ const wxRect& in_rect,
+ int bitmap_id,
+ int button_state,
+ int orientation,
+ const wxBitmap& bitmap_override,
+ wxRect* out_rect) = 0;
+
+ virtual wxSize GetTabSize(
+ wxDC* dc,
+ const wxString& caption,
+ bool active,
+ int* x_extent) = 0;
+
+ virtual int GetBestTabCtrlSize(wxWindow* wnd) = 0;
+};
+
+
+class WXDLLIMPEXP_AUI wxDefaultTabArt : public wxTabArt
+{
+
+public:
+
+ wxDefaultTabArt();
+ virtual ~wxDefaultTabArt();
+
+ void SetNormalFont(const wxFont& font);
+ void SetSelectedFont(const wxFont& font);
+ void SetMeasuringFont(const wxFont& font);
+
+ void DrawBackground(
+ wxDC* dc,
+ const wxRect& rect);
+
+ void DrawTab(wxDC* dc,
+ const wxRect& in_rect,
+ const wxString& caption,
+ bool active,
+ wxRect* out_rect,
+ int* x_extent);
+
+ void DrawButton(
+ wxDC* dc,
+ const wxRect& in_rect,
+ int bitmap_id,
+ int button_state,
+ int orientation,
+ const wxBitmap& bitmap_override,
+ wxRect* out_rect);
+
+ wxSize GetTabSize(
+ wxDC* dc,
+ const wxString& caption,
+ bool active,
+ int* x_extent);
+
+ int GetBestTabCtrlSize(wxWindow* wnd);
+
+private:
+
+ wxFont m_normal_font;
+ wxFont m_selected_font;
+ wxFont m_measuring_font;
+ wxPen m_normal_bkpen;
+ wxPen m_selected_bkpen;
+ wxBrush m_normal_bkbrush;
+ wxBrush m_selected_bkbrush;
+ wxBrush m_bkbrush;
+ wxBitmap m_active_close_bmp;
+ wxBitmap m_disabled_close_bmp;
+ wxBitmap m_active_left_bmp;
+ wxBitmap m_disabled_left_bmp;
+ wxBitmap m_active_right_bmp;
+ wxBitmap m_disabled_right_bmp;
+};