wxMGL update (no, it still doesn't work, I'm backuping it just in case my disk burns)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11250 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -15,7 +15,8 @@
|
||||
#endif
|
||||
|
||||
#include "wx/dc.h"
|
||||
#include "wx/window.h"
|
||||
|
||||
class WXDLLEXPORT wxWindowMGL;
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// classes
|
||||
@@ -29,12 +30,15 @@ class WXDLLEXPORT wxClientDC;
|
||||
// wxWindowDC
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
//FIXME_MGL
|
||||
class WXDLLEXPORT wxWindowDC : public wxDC
|
||||
{
|
||||
public:
|
||||
wxWindowDC() {}
|
||||
wxWindowDC( wxWindow *win ) {}
|
||||
virtual ~wxWindowDC();
|
||||
wxWindowDC(wxWindow *win);
|
||||
|
||||
protected:
|
||||
wxWindow *m_wnd;
|
||||
|
||||
private:
|
||||
DECLARE_DYNAMIC_CLASS(wxWindowDC)
|
||||
@@ -47,10 +51,11 @@ private:
|
||||
class WXDLLEXPORT wxClientDC : public wxWindowDC
|
||||
{
|
||||
public:
|
||||
wxClientDC() {}
|
||||
wxClientDC( wxWindow *win ) {}
|
||||
wxClientDC() : wxWindowDC() {}
|
||||
wxClientDC(wxWindow *win);
|
||||
|
||||
private:
|
||||
wxWindowMGL *m_wnd;
|
||||
DECLARE_DYNAMIC_CLASS(wxClientDC)
|
||||
};
|
||||
|
||||
@@ -58,6 +63,7 @@ private:
|
||||
// wxPaintDC
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
// FIXME_MGL
|
||||
class WXDLLEXPORT wxPaintDC : public wxClientDC
|
||||
{
|
||||
public:
|
||||
|
@@ -26,16 +26,15 @@ class WXDLLEXPORT wxScreenDC;
|
||||
// wxScreenDC
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
//FIXME_MGL
|
||||
class WXDLLEXPORT wxScreenDC: public wxPaintDC
|
||||
class WXDLLEXPORT wxScreenDC: public wxDC
|
||||
{
|
||||
public:
|
||||
wxScreenDC() {}
|
||||
wxScreenDC();
|
||||
~wxScreenDC() {}
|
||||
|
||||
static bool StartDrawingOnTop( wxWindow *window ) {}
|
||||
static bool StartDrawingOnTop( wxRect *rect = (wxRect *) NULL ) {}
|
||||
static bool EndDrawingOnTop() {}
|
||||
static bool StartDrawingOnTop(wxWindow *WXUNUSED(window)) { return TRUE; }
|
||||
static bool StartDrawingOnTop(wxRect *WXUNUSED(rect) = NULL) { return TRUE; }
|
||||
static bool EndDrawingOnTop() { return TRUE; }
|
||||
|
||||
private:
|
||||
DECLARE_DYNAMIC_CLASS(wxScreenDC)
|
||||
|
@@ -26,19 +26,19 @@ class WXDLLEXPORT wxMenuBar;
|
||||
class WXDLLEXPORT wxToolBar;
|
||||
class WXDLLEXPORT wxStatusBar;
|
||||
|
||||
class WXDLLEXPORT wxFrame;
|
||||
class WXDLLEXPORT wxFrameMGL;
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// wxFrame
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
//FIXME_MGL
|
||||
class WXDLLEXPORT wxFrame : public wxFrameBase
|
||||
class WXDLLEXPORT wxFrameMGL : public wxFrameBase
|
||||
{
|
||||
public:
|
||||
// construction
|
||||
wxFrame() { Init(); }
|
||||
wxFrame(wxWindow *parent,
|
||||
wxFrameMGL() { Init(); }
|
||||
wxFrameMGL(wxWindow *parent,
|
||||
wxWindowID id,
|
||||
const wxString& title,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
@@ -59,7 +59,7 @@ public:
|
||||
long style = wxDEFAULT_FRAME_STYLE,
|
||||
const wxString& name = wxFrameNameStr) {}
|
||||
|
||||
virtual ~wxFrame() {}
|
||||
virtual ~wxFrameMGL() {}
|
||||
|
||||
// implement base class pure virtuals
|
||||
virtual void Maximize(bool maximize = TRUE) {}
|
||||
@@ -126,7 +126,7 @@ protected:
|
||||
virtual void DoGetClientSize( int *width, int *height ) const {}
|
||||
|
||||
private:
|
||||
DECLARE_DYNAMIC_CLASS(wxFrame)
|
||||
DECLARE_DYNAMIC_CLASS(wxFrameMGL)
|
||||
};
|
||||
|
||||
#endif // __WX_FRAME_H__
|
||||
|
@@ -23,6 +23,7 @@ class WXDLLEXPORT wxBitmap;
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
extern MGLDevCtx *g_displayDC;
|
||||
extern winmng_t *g_winMng;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// helper functions
|
||||
@@ -48,4 +49,7 @@ public:
|
||||
};
|
||||
|
||||
|
||||
extern bool wxCreateMGL_WM();
|
||||
extern void wxDestroyMGL_WM();
|
||||
|
||||
#endif // _WX_PRIVATE_H_
|
||||
|
@@ -28,7 +28,7 @@ public:
|
||||
{ Init(); }
|
||||
~wxTimer() {}
|
||||
|
||||
virtual bool Start( int millisecs = -1, bool oneShot = FALSE ) {}
|
||||
virtual bool Start( int millisecs = -1, bool oneShot = FALSE ) { return TRUE; }
|
||||
virtual void Stop() {}
|
||||
|
||||
virtual bool IsRunning() const { return m_tag != -1; }
|
||||
|
@@ -1,127 +1,159 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: window.h
|
||||
// Purpose:
|
||||
// Name: wx/mgl/window.h
|
||||
// Purpose: wxWindow class
|
||||
// Author: Vaclav Slavik
|
||||
// Id: $Id$
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) 2001 SciTech Software, Inc. (www.scitechsoft.com)
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef _WX_WINDOW_H_
|
||||
#define _WX_WINDOW_H_
|
||||
|
||||
#ifndef __WX_WINDOW_H__
|
||||
#define __WX_WINDOW_H__
|
||||
// ---------------------------------------------------------------------------
|
||||
// headers
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma interface "window.h"
|
||||
#endif
|
||||
|
||||
#include "wx/font.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// wxWindow
|
||||
//-----------------------------------------------------------------------------
|
||||
struct window_t;
|
||||
class MGLDevCtx;
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// wxWindow declaration for MGL
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
class WXDLLEXPORT wxWindowMGL : public wxWindowBase
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxWindowMGL)
|
||||
|
||||
public:
|
||||
// creating the window
|
||||
// -------------------
|
||||
wxWindowMGL() {}
|
||||
wxWindowMGL() { Init(); }
|
||||
|
||||
wxWindowMGL(wxWindow *parent,
|
||||
wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0,
|
||||
const wxString& name = wxPanelNameStr) {}
|
||||
const wxString& name = wxPanelNameStr)
|
||||
{
|
||||
Init();
|
||||
Create(parent, id, pos, size, style, name);
|
||||
}
|
||||
|
||||
virtual ~wxWindowMGL();
|
||||
|
||||
bool Create(wxWindow *parent,
|
||||
wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0,
|
||||
const wxString& name = wxPanelNameStr) {}
|
||||
virtual ~wxWindowMGL() {}
|
||||
const wxString& name = wxPanelNameStr);
|
||||
|
||||
// implement base class (pure) virtual methods
|
||||
// -------------------------------------------
|
||||
virtual bool Destroy() {return TRUE;}
|
||||
virtual void Raise();
|
||||
virtual void Lower();
|
||||
|
||||
virtual void Raise() {}
|
||||
virtual void Lower() {}
|
||||
virtual bool Show(bool show = TRUE);
|
||||
|
||||
virtual bool Show( bool show = TRUE ) {return TRUE;}
|
||||
virtual bool Enable( bool enable = TRUE ) {return TRUE;}
|
||||
virtual void SetFocus();
|
||||
|
||||
virtual bool IsRetained() const {return TRUE;}
|
||||
virtual bool Reparent(wxWindowBase *newParent);
|
||||
|
||||
virtual void SetFocus() {}
|
||||
virtual bool AcceptsFocus() const {return TRUE;}
|
||||
virtual void WarpPointer(int x, int y);
|
||||
virtual void CaptureMouse();
|
||||
virtual void ReleaseMouse();
|
||||
|
||||
virtual bool Reparent( wxWindowBase *newParent ) {return 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 void WarpPointer(int x, int y) {}
|
||||
virtual void CaptureMouse() {}
|
||||
virtual void ReleaseMouse() {}
|
||||
virtual bool SetCursor(const wxCursor &cursor);
|
||||
virtual bool SetFont(const wxFont &font) { m_font = font; return TRUE; }
|
||||
|
||||
virtual void Refresh( bool eraseBackground = TRUE,
|
||||
const wxRect *rect = (const wxRect *) NULL ) {}
|
||||
virtual void Clear() {}
|
||||
|
||||
virtual bool SetBackgroundColour( const wxColour &colour ) {return TRUE;}
|
||||
virtual bool SetForegroundColour( const wxColour &colour ) {return TRUE;}
|
||||
virtual bool SetCursor( const wxCursor &cursor ) {return TRUE;}
|
||||
virtual bool SetFont( const wxFont &font ) {return TRUE;}
|
||||
|
||||
virtual int GetCharHeight() const {return 0;}
|
||||
virtual int GetCharWidth() const {return 0;}
|
||||
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 {}
|
||||
|
||||
virtual bool DoPopupMenu( wxMenu *menu, int x, int y ) {return TRUE;}
|
||||
|
||||
virtual void SetScrollbar( int orient, int pos, int thumbVisible,
|
||||
int range, bool refresh = TRUE ) {}
|
||||
virtual void SetScrollPos( int orient, int pos, bool refresh = TRUE ) {}
|
||||
virtual int GetScrollPos( int orient ) const {return 0;}
|
||||
virtual int GetScrollThumb( int orient ) const {return 0;}
|
||||
virtual int GetScrollRange( int orient ) const {return 0;}
|
||||
virtual void ScrollWindow( int dx, int dy,
|
||||
const wxRect* rect = (wxRect *) NULL ) {}
|
||||
const;
|
||||
|
||||
#if wxUSE_DRAG_AND_DROP
|
||||
virtual void SetDropTarget( wxDropTarget *dropTarget ) {}
|
||||
virtual void SetDropTarget(wxDropTarget *dropTarget);
|
||||
#endif // wxUSE_DRAG_AND_DROP
|
||||
|
||||
virtual WXWidget GetHandle() const { return NULL; }
|
||||
// Accept files for dragging
|
||||
virtual void DragAcceptFiles(bool accept);
|
||||
|
||||
/* For compatibility across platforms (not in event table) */
|
||||
void OnIdle(wxIdleEvent& WXUNUSED(event)) {};
|
||||
#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; }
|
||||
|
||||
|
||||
// implementation from now on
|
||||
// --------------------------
|
||||
|
||||
protected:
|
||||
// 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;
|
||||
|
||||
// implement the base class pure virtuals
|
||||
virtual void DoClientToScreen( int *x, int *y ) const {}
|
||||
virtual void DoScreenToClient( int *x, int *y ) const {}
|
||||
virtual void DoGetPosition( int *x, int *y ) const {}
|
||||
virtual void DoGetSize( int *width, int *height ) const {}
|
||||
virtual void DoGetClientSize( int *width, int *height ) 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;
|
||||
virtual void DoGetSize( int *width, int *height ) const;
|
||||
virtual void DoGetClientSize( int *width, int *height ) const;
|
||||
virtual void DoSetSize(int x, int y,
|
||||
int width, int height,
|
||||
int sizeFlags = wxSIZE_AUTO) {}
|
||||
virtual void DoSetClientSize(int width, int height) {}
|
||||
virtual void DoMoveWindow(int x, int y, int width, int height) {}
|
||||
int sizeFlags = wxSIZE_AUTO);
|
||||
virtual void DoSetClientSize(int width, int height);
|
||||
|
||||
#if wxUSE_TOOLTIPS
|
||||
virtual void DoSetToolTip( wxToolTip *tip ) {}
|
||||
#endif // wxUSE_TOOLTIPS
|
||||
|
||||
// common part of all ctors (can't be virtual because called from ctor)
|
||||
void Init() {}
|
||||
// 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);
|
||||
|
||||
private:
|
||||
// common part of all ctors
|
||||
void Init();
|
||||
// counterpart to SetFocus
|
||||
void KillFocus();
|
||||
|
||||
MGLDevCtx *m_paintMGLDC;
|
||||
friend class wxPaintDC;
|
||||
|
||||
void OnEraseBackground(wxEraseEvent& event);
|
||||
void OnSetFocus(wxFocusEvent& event);
|
||||
|
||||
DECLARE_DYNAMIC_CLASS(wxWindowMGL);
|
||||
DECLARE_NO_COPY_CLASS(wxWindowMGL);
|
||||
DECLARE_EVENT_TABLE()
|
||||
|
||||
public:
|
||||
void HandlePaint(MGLDevCtx *dc);
|
||||
// needed by wxWindowPainter
|
||||
};
|
||||
|
||||
#endif // ___WX_WINDOW_H__
|
||||
|
||||
#endif
|
||||
// _WX_WINDOW_H_
|
||||
|
Reference in New Issue
Block a user