00001
00002
00003
00004
00005
00006
00007
00008
00009
00011
00012 #ifndef _WX_WXGDI_BASE_H_
00013 #define _WX_WXGDI_BASE_H_
00014
00015
00016
00017
00018
00019 #include <wx/window.h>
00020
00021 #ifndef wxFULL_REPAINT_ON_RESIZE
00022 #define wxFULL_REPAINT_ON_RESIZE 0 // XXX: just for < wx2.5.1 compatibility
00023 #endif
00024
00025
00026
00027
00028
00029 class wxGdiBase {
00030 public:
00031 enum eGripperStyle {
00032 wxGRIP_STYLE_MOVE,
00033 wxGRIP_STYLE_FLOAT,
00034 wxGRIP_STYLE_HEADER
00035 };
00036
00037
00038 virtual void DrawGripper( wxDC &dc, wxRect r, wxOrientation orientation,
00039 eGripperStyle style, const wxString &label = wxT("") ) = 0;
00040 virtual void DrawFrame( wxDC &dc, wxRect r, bool fDocked ) = 0;
00041 virtual void DrawPattern( wxDC &dc, wxRect r ) = 0;
00042 virtual void DrawSplitter( wxDC &dc, wxRect r, wxOrientation orientation ) = 0;
00043 virtual void DrawClose( wxDC &dc, wxRect r, wxPen &pen, int size );
00044 virtual void DrawEmptyWorkspace( wxDC &dc, wxRect r, bool edge ) = 0;
00045 virtual void DrawHeader( wxDC &dc, wxRect r, wxOrientation orientation,
00046 const wxString &label, const wxFont &font ) = 0;
00047 virtual void DrawBackground( wxDC &dc, wxRect &r );
00048 virtual void DrawEdge( wxDC &dc, wxRect r, bool invert = false );
00049 virtual void DrawLabel( wxDC &dc, wxRect r, wxOrientation orientation,
00050 const wxString &label, const wxFont &font );
00051
00052
00053 virtual wxCursor GetMoveCursor() = 0;
00054 virtual wxCursor GetHSplitCursor() = 0;
00055 virtual wxCursor GetVSplitCursor() = 0;
00056 };
00057
00058
00059
00060
00061
00062 #if defined(__WXMSW__)
00063 #include "wx/msw/gdi.h"
00064 #elif defined(__WXGTK__)
00065 #include "wx/gtk/gdi.h"
00066 #else
00067 #error "Your platform does not currently support wxGdi"
00068 #endif
00069
00070
00071
00072
00073
00074
00075
00076 #endif
00077