use AllocExclusive for reference counting

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík
2002-02-09 23:29:05 +00:00
parent 5c235ea098
commit 6d7ee9e860
8 changed files with 90 additions and 99 deletions

View File

@@ -56,11 +56,14 @@ public:
// implementation:
void Unshare();
void* GetMaskPattern() const;
void* GetPixPattern() const;
protected:
// ref counting code
virtual wxObjectRefData *CreateRefData() const;
virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
private:
DECLARE_DYNAMIC_CLASS(wxBrush)
};

View File

@@ -90,17 +90,16 @@ public:
virtual void SetUnderlined(bool underlined);
virtual void SetEncoding(wxFontEncoding encoding);
// implementation from now on
void Unshare();
struct font_t *GetMGLfont_t(float scale, bool antialiased);
// no data :-)
protected:
// common part of all ctors
void Init() {}
// ref counting code
virtual wxObjectRefData *CreateRefData() const;
virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
private:
DECLARE_DYNAMIC_CLASS(wxFont)
};

View File

@@ -65,11 +65,14 @@ public:
bool Ok() const;
void Unshare();
// implementation:
void* GetPixPattern() const;
protected:
// ref counting code
virtual wxObjectRefData *CreateRefData() const;
virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
private:
DECLARE_DYNAMIC_CLASS(wxPen)
};

View File

@@ -55,6 +55,8 @@ public:
// Clear current region
void Clear(void);
bool Offset(wxCoord x, wxCoord y);
// Union rectangle or region with this.
bool Union(wxCoord x, wxCoord y, wxCoord width, wxCoord height);
bool Union(const wxRect& rect) { return Union(rect.x, rect.y, rect.width, rect.height); }
@@ -97,9 +99,11 @@ public:
// implementation from now on:
const MGLRegion& GetMGLRegion() const;
private:
void Unshare();
protected:
// ref counting code
virtual wxObjectRefData *CreateRefData() const;
virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
};