1/////////////////////////////////////////////////////////////////////////////// 2// Name: mac/dataform.h 3// Purpose: declaration of the wxDataFormat class 4// Author: Stefan Csomor (lifted from dnd.h) 5// Modified by: 6// Created: 10/21/99 7// RCS-ID: $Id: dataform.h 27408 2004-05-23 20:53:33Z JS $ 8// Copyright: (c) 1999 Stefan Csomor 9// Licence: wxWindows licence 10/////////////////////////////////////////////////////////////////////////////// 11 12#ifndef _WX_MAC_DATAFORM_H 13#define _WX_MAC_DATAFORM_H 14 15class WXDLLEXPORT wxDataFormat 16{ 17public: 18 typedef unsigned long NativeFormat; 19 20 wxDataFormat(); 21 wxDataFormat(wxDataFormatId vType); 22 wxDataFormat(const wxString& rId); 23 wxDataFormat(const wxChar* pId); 24 wxDataFormat(NativeFormat vFormat); 25 26 wxDataFormat& operator=(NativeFormat vFormat) 27 { SetId(vFormat); return *this; } 28 29 // comparison (must have both versions) 30 bool operator==(NativeFormat format) const 31 { return m_format == (NativeFormat)format; } 32 bool operator!=(NativeFormat format) const 33 { return m_format != (NativeFormat)format; } 34 bool operator==(wxDataFormatId format) const 35 { return m_type == (wxDataFormatId)format; } 36 bool operator!=(wxDataFormatId format) const 37 { return m_type != (wxDataFormatId)format; } 38 39 // explicit and implicit conversions to NativeFormat which is one of 40 // standard data types (implicit conversion is useful for preserving the 41 // compatibility with old code) 42 NativeFormat GetFormatId() const { return m_format; } 43 operator NativeFormat() const { return m_format; } 44 45 void SetId(NativeFormat format); 46 47 // string ids are used for custom types - this SetId() must be used for 48 // application-specific formats 49 wxString GetId() const; 50 void SetId(const wxChar* pId); 51 52 // implementation 53 wxDataFormatId GetType() const { return m_type; } 54 void SetType( wxDataFormatId type ); 55 56private: 57 wxDataFormatId m_type; 58 NativeFormat m_format; 59}; 60 61#endif // _WX_MAC_DATAFORM_H 62