X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/580616706f52835ee5ee48e6ef2ad15b822df971..907ea7d5cc64befac486b269b3ab5b87dfc246d5:/include/wx/mgl/window.h diff --git a/include/wx/mgl/window.h b/include/wx/mgl/window.h index 51bc37f24c..8f72a27476 100644 --- a/include/wx/mgl/window.h +++ b/include/wx/mgl/window.h @@ -3,7 +3,7 @@ // 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 ///////////////////////////////////////////////////////////////////////////// @@ -14,10 +14,6 @@ // headers // --------------------------------------------------------------------------- -#ifdef __GNUG__ - #pragma interface "window.h" -#endif - #include "wx/font.h" struct window_t; @@ -27,7 +23,7 @@ class MGLDevCtx; // wxWindow declaration for MGL // --------------------------------------------------------------------------- -class WXDLLEXPORT wxWindowMGL : public wxWindowBase +class WXDLLIMPEXP_CORE wxWindowMGL : public wxWindowBase { public: wxWindowMGL() { Init(); } @@ -52,37 +48,32 @@ public: long style = 0, const wxString& name = wxPanelNameStr); + // implement base class (pure) virtual methods + // ------------------------------------------- + + virtual void SetLabel( const wxString &WXUNUSED(label) ) {} + virtual wxString GetLabel() const { return wxEmptyString; } + virtual void Raise(); virtual void Lower(); - virtual bool Show(bool show = TRUE); + virtual bool Show(bool show = true); virtual void SetFocus(); virtual bool Reparent(wxWindowBase *newParent); virtual void WarpPointer(int x, int y); - virtual void CaptureMouse(); - virtual void ReleaseMouse(); - virtual void Refresh(bool eraseBackground = TRUE, + virtual void Refresh(bool eraseBackground = true, const wxRect *rect = (const wxRect *) NULL); virtual void Update(); - virtual void Clear(); - virtual void Freeze(); - virtual void Thaw(); virtual bool SetCursor(const wxCursor &cursor); - virtual bool SetFont(const wxFont &font) { m_font = font; return TRUE; } + virtual bool SetFont(const wxFont &font) { m_font = font; return true; } virtual int GetCharHeight() const; virtual int GetCharWidth() const; - virtual void GetTextExtent(const wxString& string, - int *x, int *y, - int *descent = (int *) NULL, - int *externalLeading = (int *) NULL, - const wxFont *theFont = (const wxFont *) NULL) - const; #if wxUSE_DRAG_AND_DROP virtual void SetDropTarget(wxDropTarget *dropTarget); @@ -91,33 +82,31 @@ public: // 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 // -------------------------- protected: + virtual void DoFreeze(); + virtual void DoThaw(); + + // the window handle struct window_t *m_wnd; // whether there should be wxEraseEvent before wxPaintEvent or not // (see wxWindow::Refresh) - bool m_frozen:1; bool m_refreshAfterThaw:1; int m_eraseBackground; // implement the base class pure virtuals + virtual void DoGetTextExtent(const wxString& string, + int *x, int *y, + int *descent = NULL, + int *externalLeading = NULL, + const wxFont *font = NULL) const; virtual void DoClientToScreen( int *x, int *y ) const; virtual void DoScreenToClient( int *x, int *y ) const; virtual void DoGetPosition( int *x, int *y ) const; @@ -128,6 +117,9 @@ protected: 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 @@ -139,12 +131,12 @@ private: void Init(); // counterpart to SetFocus void KillFocus(); - + MGLDevCtx *m_paintMGLDC; friend class wxPaintDC; - DECLARE_DYNAMIC_CLASS(wxWindowMGL); - DECLARE_NO_COPY_CLASS(wxWindowMGL); + DECLARE_DYNAMIC_CLASS(wxWindowMGL) + wxDECLARE_NO_COPY_CLASS(wxWindowMGL); DECLARE_EVENT_TABLE() public: @@ -154,5 +146,4 @@ public: }; -#endif - // _WX_WINDOW_H_ +#endif // _WX_WINDOW_H_