unsigned char red, green, blue;
};
-class wxPaletteRefData: public wxObjectRefData
+class wxPaletteRefData : public wxGDIRefData
{
- public:
-
- wxPaletteRefData(void);
- virtual ~wxPaletteRefData(void);
+public:
+ wxPaletteRefData();
+ wxPaletteRefData(const wxPaletteRefData& palette);
+ virtual ~wxPaletteRefData();
int m_count;
wxPaletteEntry *m_entries;
m_entries = NULL;
}
+wxPaletteRefData::wxPaletteRefData(const wxPaletteRefData& palette)
+{
+ m_count = palette.m_count;
+ m_entries = new wxPaletteEntry[m_count];
+ for ( int i = 0; i < m_count; i++ )
+ m_entries[i] = palette.m_entries[i];
+}
+
wxPaletteRefData::~wxPaletteRefData()
{
delete[] m_entries;
{
}
-bool wxPalette::operator == (const wxPalette& palette) const
-{
- return m_refData == palette.m_refData;
-}
-
-bool wxPalette::operator != (const wxPalette& palette) const
-{
- return m_refData != palette.m_refData;
-}
-
-bool wxPalette::Ok(void) const
+int wxPalette::GetColoursCount() const
{
- return (m_refData != NULL);
+ if (m_refData)
+ return M_PALETTEDATA->m_count;
+
+ return 0;
}
bool wxPalette::Create(int n,
return true;
}
+wxGDIRefData *wxPalette::CreateGDIRefData() const
+{
+ return new wxPaletteRefData;
+}
+
+wxGDIRefData *wxPalette::CloneGDIRefData(const wxGDIRefData *data) const
+{
+ return new wxPaletteRefData(*wx_static_cast(const wxPaletteRefData *, data));
+}
+
#endif // wxUSE_PALETTE