wxMotif compilation fixes after wxDC changes

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50701 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2007-12-15 00:06:08 +00:00
parent 09294e12fb
commit fce127d758
12 changed files with 279 additions and 303 deletions

View File

@@ -1,6 +1,6 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/motif/dc.h
// Purpose: wxDC class
// Purpose: wxMotifDCImpl class
// Author: Julian Smart
// Modified by:
// Created: 17/09/98
@@ -12,48 +12,26 @@
#ifndef _WX_DC_H_
#define _WX_DC_H_
#include "wx/pen.h"
#include "wx/brush.h"
#include "wx/icon.h"
#include "wx/font.h"
#include "wx/gdicmn.h"
#include "wx/dc.h"
//-----------------------------------------------------------------------------
// constants
//-----------------------------------------------------------------------------
// ----------------------------------------------------------------------------
// wxMotifDCImpl
// ----------------------------------------------------------------------------
#ifndef MM_TEXT
#define MM_TEXT 0
#define MM_ISOTROPIC 1
#define MM_ANISOTROPIC 2
#define MM_LOMETRIC 3
#define MM_HIMETRIC 4
#define MM_TWIPS 5
#define MM_POINTS 6
#define MM_METRIC 7
#endif
//-----------------------------------------------------------------------------
// wxDC
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxDC : public wxDCBase
class WXDLLEXPORT wxMotifDCImpl : public wxDCImpl
{
DECLARE_DYNAMIC_CLASS(wxDC)
public:
wxDC();
virtual ~wxDC() { }
wxMotifDCImpl(wxDC *owner);
virtual wxSize GetPPI() const;
protected:
virtual void DoDrawIcon(const wxIcon& icon, wxCoord x, wxCoord y);
virtual void DoDrawBitmap(const wxBitmap &bmp, wxCoord x, wxCoord y,
bool useMask = false);
bool useMask = false);
virtual void DoSetClippingRegion(wxCoord x, wxCoord y,
wxCoord width, wxCoord height);
wxCoord width, wxCoord height);
virtual void DoGetSize(int *width, int *height) const;
virtual void DoGetSizeMM(int* width, int* height) const;
@@ -67,7 +45,7 @@ public:
wxCoord XLOG2DEVREL(wxCoord x) const { return LogicalToDeviceXRel(x); }
wxCoord YLOG2DEV(wxCoord y) const { return LogicalToDeviceY(y); }
wxCoord YLOG2DEVREL(wxCoord y) const { return LogicalToDeviceYRel(y); }
// Without device translation, for backing pixmap purposes
wxCoord XLOG2DEV_2(wxCoord x) const
{
@@ -78,7 +56,7 @@ public:
return wxRound((double)(y - m_logicalOriginY) * m_scaleY) * m_signY;
}
DECLARE_DYNAMIC_CLASS(wxMotifDCImpl)
};
#endif
// _WX_DC_H_
#endif // _WX_DC_H_

View File

@@ -1,6 +1,6 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/motif/dcclient.h
// Purpose: wxClientDC, wxPaintDC and wxWindowDC classes
// Purpose: wxClientDCImpl, wxPaintDCImpl and wxWindowDCImpl classes
// Author: Julian Smart
// Modified by:
// Created: 17/09/98
@@ -12,31 +12,21 @@
#ifndef _WX_DCCLIENT_H_
#define _WX_DCCLIENT_H_
#include "wx/dc.h"
#include "wx/motif/dc.h"
// ----------------------------------------------------------------------------
// fwd declarations
// ----------------------------------------------------------------------------
class WXDLLIMPEXP_FWD_CORE wxWindowDC;
class WXDLLIMPEXP_FWD_CORE wxWindow;
// Under Windows, wxClientDC, wxPaintDC and wxWindowDC are implemented
// differently. On many platforms, however, they will be the same.
//-----------------------------------------------------------------------------
// wxWindowDC
// wxWindowDCImpl
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxWindowDC : public wxDC
class WXDLLEXPORT wxWindowDCImpl : public wxMotifDCImpl
{
DECLARE_DYNAMIC_CLASS(wxWindowDC)
public:
wxWindowDC();
wxWindowDC( wxWindow *win );
wxWindowDCImpl(wxDC *owner);
wxWindowDCImpl(wxDC *owner, wxWindow *win);
virtual ~wxWindowDC();
virtual ~wxWindowDCImpl();
// TODO this function is Motif-only for now - should it go into base class?
void Clear(const wxRect& rect);
@@ -164,26 +154,29 @@ protected:
int m_currentStyle ;
int m_currentFill ;
int m_autoSetting ; // See comment in dcclient.cpp
DECLARE_DYNAMIC_CLASS(wxWindowDCImpl)
};
class WXDLLEXPORT wxPaintDC: public wxWindowDC
class WXDLLEXPORT wxPaintDCImpl: public wxWindowDCImpl
{
DECLARE_DYNAMIC_CLASS(wxPaintDC)
public:
wxPaintDC() { }
wxPaintDC(wxWindow* win);
wxPaintDCImpl(wxDC *owner) : wxWindowDCImpl(owner) { }
wxPaintDCImpl(wxDC *owner, wxWindow* win);
virtual ~wxPaintDC();
virtual ~wxPaintDCImpl();
DECLARE_DYNAMIC_CLASS(wxPaintDCImpl)
};
class WXDLLEXPORT wxClientDC: public wxWindowDC
class WXDLLEXPORT wxClientDCImpl: public wxWindowDCImpl
{
DECLARE_DYNAMIC_CLASS(wxClientDC)
public:
wxClientDC() { }
wxClientDC(wxWindow* win) : wxWindowDC(win) { }
wxClientDCImpl(wxDC *owner) : wxWindowDCImpl(owner) { }
wxClientDCImpl(wxDC *owner, wxWindow* win)
: wxWindowDCImpl(owner, win) { }
DECLARE_DYNAMIC_CLASS(wxClientDCImpl)
};
#endif // _WX_DCCLIENT_H_

View File

@@ -1,6 +1,6 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/motif/dcmemory.h
// Purpose: wxMemoryDC class
// Purpose: wxMemoryDCImpl class
// Author: Julian Smart
// Modified by:
// Created: 17/09/98
@@ -12,23 +12,23 @@
#ifndef _WX_DCMEMORY_H_
#define _WX_DCMEMORY_H_
#include "wx/dcclient.h"
#include "wx/motif/dcclient.h"
class WXDLLIMPEXP_CORE wxMemoryDC : public wxWindowDC, public wxMemoryDCBase
class WXDLLIMPEXP_CORE wxMemoryDCImpl : public wxWindowDCImpl
{
DECLARE_DYNAMIC_CLASS(wxMemoryDC)
public:
wxMemoryDC() { Init(); }
wxMemoryDC(wxBitmap& bitmap) { Init(); SelectObject(bitmap); }
wxMemoryDC( wxDC *dc ); // Create compatible DC
virtual ~wxMemoryDC();
wxMemoryDCImpl(wxMemoryDC *owner) : wxWindowDCImpl(owner) { Init(); }
wxMemoryDCImpl(wxMemoryDC *owner, wxBitmap& bitmap)
: wxWindowDCImpl(owner)
{
Init();
DoSelect(bitmap);
}
void DoGetSize( int *width, int *height ) const;
wxMemoryDCImpl(wxMemoryDC *owner, wxDC *dc);
virtual ~wxMemoryDCImpl();
wxBitmap& GetBitmap() const { return (wxBitmap&) m_bitmap; }
protected:
virtual void DoGetSize( int *width, int *height ) const;
virtual void DoSelect(const wxBitmap& bitmap);
private:
@@ -36,7 +36,9 @@ private:
void Init();
wxBitmap m_bitmap;
wxBitmap m_bitmap;
DECLARE_DYNAMIC_CLASS(wxMemoryDCImpl)
};
#endif

View File

@@ -12,20 +12,21 @@
#ifndef _WX_DCPRINT_H_
#define _WX_DCPRINT_H_
#include "wx/dc.h"
#include "wx/motif/dc.h"
class WXDLLEXPORT wxPrinterDC: public wxDC
class WXDLLEXPORT wxPrinterDC : public wxMotifDCImpl
{
public:
DECLARE_CLASS(wxPrinterDC)
// Create a printer DC
wxPrinterDC(const wxString& driver, const wxString& device, const wxString& output, bool interactive = true, int orientation = wxPORTRAIT);
wxPrinterDCImpl(const wxString& driver, const wxString& device,
const wxString& output,
bool interactive = true,
int orientation = wxPORTRAIT);
virtual ~wxPrinterDC();
wxRect GetPaperRect();
virtual ~wxPrinterDC();
DECLARE_CLASS(wxPrinterDCImpl)
};
#endif
// _WX_DCPRINT_H_
#endif // _WX_DCPRINT_H_

View File

@@ -1,6 +1,6 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/motif/dcscreen.h
// Purpose: wxScreenDC class
// Purpose: wxScreenDCImpl class
// Author: Julian Smart
// Modified by:
// Created: 17/09/98
@@ -12,16 +12,14 @@
#ifndef _WX_DCSCREEN_H_
#define _WX_DCSCREEN_H_
#include "wx/dcclient.h"
#include "wx/motif/dcclient.h"
class WXDLLEXPORT wxScreenDC: public wxWindowDC
class WXDLLEXPORT wxScreenDCImpl : public wxWindowDCImpl
{
DECLARE_DYNAMIC_CLASS(wxScreenDC)
public:
// Create a DC representing the whole screen
wxScreenDC();
virtual ~wxScreenDC();
wxScreenDCImpl(wxScreenDC *owner);
virtual ~wxScreenDCImpl();
// Compatibility with X's requirements for
// drawing on top of all windows
@@ -37,7 +35,8 @@ private:
// constructor.
static int sm_overlayWindowX;
static int sm_overlayWindowY;
DECLARE_DYNAMIC_CLASS(wxScreenDCImpl)
};
#endif
// _WX_DCSCREEN_H_
#endif // _WX_DCSCREEN_H_