// 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
/////////////////////////////////////////////////////////////////////////////
// headers
// ---------------------------------------------------------------------------
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma interface "window.h"
#endif
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);
// Accept files for dragging
virtual void DragAcceptFiles(bool accept);
-#if WXWIN_COMPATIBILITY
- // event handlers
- // Handle a control command
- virtual void OnCommand(wxWindow& win, wxCommandEvent& event);
-
- // Override to define new behaviour for default action (e.g. double
- // clicking on a listbox)
- virtual void OnDefaultAction(wxControl * WXUNUSED(initiatingItem)) { }
-#endif // WXWIN_COMPATIBILITY
-
virtual WXWidget GetHandle() const { return m_wnd; }
+
+ void SetMGLwindow_t(struct window_t *wnd);
// implementation from now on
// --------------------------
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 OnInternalIdle();
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; }
};