// Purpose: wxWindow class
// Author: Vaclav Slavik
// RCS-ID: $Id$
-// Copyright: (c) 2001 SciTech Software, Inc. (www.scitechsoft.com)
+// Copyright: (c) 2001-2002 SciTech Software, Inc. (www.scitechsoft.com)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
virtual bool Reparent(wxWindowBase *newParent);
virtual void WarpPointer(int x, int y);
- virtual void CaptureMouse();
- virtual void ReleaseMouse();
virtual void Refresh(bool eraseBackground = TRUE,
const wxRect *rect = (const wxRect *) NULL);
#endif // WXWIN_COMPATIBILITY
virtual WXWidget GetHandle() const { return m_wnd; }
-
- virtual void SetTitle(const wxString& title) { m_title = title; }
- virtual wxString GetTitle() const { return m_title; }
+
+ void SetMGLwindow_t(struct window_t *wnd);
// implementation from now on
// --------------------------
protected:
- wxString m_title;
// the window handle
struct window_t *m_wnd;
// whether there should be wxEraseEvent before wxPaintEvent or not
// (see wxWindow::Refresh)
- bool m_frozen;
- bool m_refreshAfterThaw;
- wxFont m_font;
+ bool m_frozen:1;
+ bool m_refreshAfterThaw:1;
+ int m_eraseBackground;
// implement the base class pure virtuals
virtual void DoClientToScreen( int *x, int *y ) const;
int sizeFlags = wxSIZE_AUTO);
virtual void DoSetClientSize(int width, int height);
+ virtual void DoCaptureMouse();
+ virtual void DoReleaseMouse();
+
// move the window to the specified location and resize it: this is called
// from both DoSetSize() and DoSetClientSize() and would usually just call
// ::MoveWindow() except for composite controls which will want to arrange
// themselves inside the given rectangle
virtual void DoMoveWindow(int x, int y, int width, int height);
+
+ void OnIdle(wxIdleEvent& event);
private:
// common part of all ctors
MGLDevCtx *m_paintMGLDC;
friend class wxPaintDC;
- void OnEraseBackground(wxEraseEvent& event);
- void OnSetFocus(wxFocusEvent& event);
-
- DECLARE_DYNAMIC_CLASS(wxWindowMGL);
- DECLARE_NO_COPY_CLASS(wxWindowMGL);
+ DECLARE_DYNAMIC_CLASS(wxWindowMGL)
+ DECLARE_NO_COPY_CLASS(wxWindowMGL)
DECLARE_EVENT_TABLE()
public:
void HandlePaint(MGLDevCtx *dc);
// needed by wxWindowPainter
+ MGLDevCtx *GetPaintMGLDC() const { return m_paintMGLDC; }
};