adding wxobject and RTTI

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@42243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor
2006-10-22 17:52:23 +00:00
parent 3abcfa9b7f
commit 8ddf8e829a
2 changed files with 17 additions and 3 deletions

View File

@@ -26,7 +26,7 @@ class WXDLLEXPORT wxWindowDC;
* in direction of positive y axis. * in direction of positive y axis.
*/ */
class WXDLLEXPORT wxGraphicsPath class WXDLLEXPORT wxGraphicsPath : public wxObject
{ {
public : public :
wxGraphicsPath() {} wxGraphicsPath() {}
@@ -83,7 +83,16 @@ public :
void AddArc( const wxPoint2DDouble& c, wxDouble r, wxDouble startAngle, wxDouble endAngle, bool clockwise); void AddArc( const wxPoint2DDouble& c, wxDouble r, wxDouble startAngle, wxDouble endAngle, bool clockwise);
/*
// returns the native path
virtual void * GetNativePath() = 0;
// give the native path returned by GetNativePath() back (there might be some deallocations necessary)
virtual void UnGetNativePath(void *p) = 0;
*/
DECLARE_NO_COPY_CLASS(wxGraphicsPath) DECLARE_NO_COPY_CLASS(wxGraphicsPath)
DECLARE_ABSTRACT_CLASS(wxGraphicsPath)
}; };
/* /*
@@ -120,7 +129,7 @@ public :
} ; } ;
*/ */
class WXDLLEXPORT wxGraphicsContext class WXDLLEXPORT wxGraphicsContext : public wxObject
{ {
public: public:
wxGraphicsContext() {} wxGraphicsContext() {}
@@ -259,6 +268,7 @@ public:
// wrappers using wxPoint2DDouble TODO // wrappers using wxPoint2DDouble TODO
DECLARE_NO_COPY_CLASS(wxGraphicsContext) DECLARE_NO_COPY_CLASS(wxGraphicsContext)
DECLARE_ABSTRACT_CLASS(wxGraphicsContext)
}; };
#endif #endif

View File

@@ -48,6 +48,8 @@ static inline double DegToRad(double deg)
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
IMPLEMENT_ABSTRACT_CLASS(wxGraphicsPath, wxObject)
wxPoint2DDouble wxGraphicsPath::GetCurrentPoint() wxPoint2DDouble wxGraphicsPath::GetCurrentPoint()
{ {
wxDouble x,y; wxDouble x,y;
@@ -150,6 +152,8 @@ void wxGraphicsPath::AddArcToPoint( wxDouble x1, wxDouble y1 , wxDouble x2, wxDo
// wxGraphicsContext Convenience Methods // wxGraphicsContext Convenience Methods
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
IMPLEMENT_ABSTRACT_CLASS(wxGraphicsContext, wxObject)
void wxGraphicsContext::DrawPath( const wxGraphicsPath *path, int fillStyle ) void wxGraphicsContext::DrawPath( const wxGraphicsPath *path, int fillStyle )
{ {
FillPath( path , fillStyle ); FillPath( path , fillStyle );
@@ -1089,7 +1093,7 @@ bool wxGCDC::DoBlit(
wxCoord wwdest = LogicalToDeviceXRel(width); wxCoord wwdest = LogicalToDeviceXRel(width);
wxCoord hhdest = LogicalToDeviceYRel(height); wxCoord hhdest = LogicalToDeviceYRel(height);
wxMemoryDC* memdc = dynamic_cast<wxMemoryDC*>(source); wxMemoryDC* memdc = wxDynamicCast(source,wxMemoryDC);
if ( memdc && logical_func == wxCOPY ) if ( memdc && logical_func == wxCOPY )
{ {
wxBitmap blit = memdc->GetSelectedBitmap(); wxBitmap blit = memdc->GetSelectedBitmap();