#ifndef _WX_UNIV_WINDOW_H_
#define _WX_UNIV_WINDOW_H_
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
- #pragma interface "univwindow.h"
-#endif
-
#include "wx/bitmap.h" // for m_bitmapBg
class WXDLLEXPORT wxControlRenderer;
// ctors and create functions
// ---------------------------
- wxWindow();
+ wxWindow() { Init(); }
wxWindow(wxWindow *parent,
wxWindowID id,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = 0,
- const wxString& name = wxPanelNameStr);
+ const wxString& name = wxPanelNameStr)
+ : wxWindowNative(parent, id, pos, size, style | wxCLIP_CHILDREN, name)
+ { Init(); }
bool Create(wxWindow *parent,
wxWindowID id,
long style = 0,
const wxString& name = wxPanelNameStr);
+ virtual ~wxWindow();
+
// background pixmap support
// -------------------------
int pos,
int page,
int range,
- bool refresh = TRUE );
- virtual void SetScrollPos(int orient, int pos, bool refresh = TRUE);
+ bool refresh = true );
+ virtual void SetScrollPos(int orient, int pos, bool refresh = true);
virtual int GetScrollPos(int orient) const;
virtual int GetScrollThumb(int orient) const;
virtual int GetScrollRange(int orient) const;
// return all state flags at once (combination of wxCONTROL_XXX values)
int GetStateFlags() const;
- // set the "highlighted" flag and return TRUE if it changed
- virtual bool SetCurrent(bool doit = TRUE);
+ // set the "highlighted" flag and return true if it changed
+ virtual bool SetCurrent(bool doit = true);
// get the scrollbar (may be NULL) for the given orientation
wxScrollBar *GetScrollbar(int orient) const
// methods used by wxColourScheme to choose the colours for this window
// --------------------------------------------------------------------
- // return TRUE if this is a panel/canvas window which contains other
+ // return true if this is a panel/canvas window which contains other
// controls only
- virtual bool IsCanvasWindow() const { return FALSE; }
-
- // returns TRUE if the control has "transparent" areas such
- // as a wxStaticText and wxCheckBox and the background should
- // be adapted from a parent window
- virtual bool HasTransparentBackground() { return FALSE; }
-
- // to be used with function above: transparent windows get
- // their background from parents that return TRUE here,
- // so this is mostly for wxPanel, wxTopLevelWindow etc.
- virtual bool ProvidesBackground() const { return FALSE; }
-
- // return TRUE if this control can be highlighted when the mouse is over
+ virtual bool IsCanvasWindow() const { return false; }
+
+ // return true if this control can be highlighted when the mouse is over
// it (the theme decides itself whether it is really highlighted or not)
- virtual bool CanBeHighlighted() const { return FALSE; }
+ virtual bool CanBeHighlighted() const { return false; }
- // return TRUE if we should use the colours/fonts returned by the
+ // return true if we should use the colours/fonts returned by the
// corresponding GetXXX() methods instead of the default ones
- bool UseBgCol() const { return m_hasBgCol; }
bool UseFgCol() const { return m_hasFgCol; }
bool UseFont() const { return m_hasFont; }
- // return TRUE if this window serves as a container for the other windows
+ // return true if this window serves as a container for the other windows
// only and doesn't get any input itself
- virtual bool IsStaticBox() const { return FALSE; }
+ virtual bool IsStaticBox() const { return false; }
// returns the (low level) renderer to use for drawing the control by
// querying the current theme
// erase part of the control
virtual void EraseBackground(wxDC& dc, const wxRect& rect);
-
+
// overridden base class methods
// -----------------------------
// the rect coordinates are, for us, in client coords, but if no rect is
// specified, the entire window is refreshed
- virtual void Refresh(bool eraseBackground = TRUE,
+ virtual void Refresh(bool eraseBackground = true,
const wxRect *rect = (const wxRect *) NULL);
// we refresh the window when it is dis/enabled
- virtual bool Enable(bool enable = TRUE);
+ virtual bool Enable(bool enable = true);
+
+ // should we use the standard control colours or not?
+ virtual bool ShouldInheritColours() const { return false; }
protected:
// common part of all ctors
// event handlers
void OnSize(wxSizeEvent& event);
- void OnNcPaint(wxPaintEvent& event);
+ void OnNcPaint(wxNcPaintEvent& event);
void OnPaint(wxPaintEvent& event);
void OnErase(wxEraseEvent& event);
void OnKeyUp(wxKeyEvent& event);
#endif // wxUSE_MENUS
- // draw the control background, return TRUE if done
+ // draw the control background, return true if done
virtual bool DoDrawBackground(wxDC& dc);
// draw the controls border
// the renderer we use
wxRenderer *m_renderer;
-
+
// background bitmap info
wxBitmap m_bitmapBg;
int m_alignBgBitmap;
wxStretch m_stretchBgBitmap;
-
+
// old size
wxSize m_oldSize;
bool m_isCurrent:1;
#ifdef __WXMSW__
+public:
// override MSWWindowProc() to process WM_NCHITTEST
- long MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
+ WXLRESULT MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam);
#endif // __WXMSW__
private:
};
#endif // _WX_UNIV_WINDOW_H_
-