X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/69ea41a788381b93135a583f546112c1e1345447..a9c64a1b2e9b00e0a09dc2ed5964b86625614f8e:/include/wx/mac/corefoundation/cfstring.h diff --git a/include/wx/mac/corefoundation/cfstring.h b/include/wx/mac/corefoundation/cfstring.h index 428e5c8c14..16a95cf2ff 100644 --- a/include/wx/mac/corefoundation/cfstring.h +++ b/include/wx/mac/corefoundation/cfstring.h @@ -9,42 +9,47 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// +#ifndef __WX_CFSTRINGHOLDER_H__ +#define __WX_CFSTRINGHOLDER_H__ + #ifdef __DARWIN__ #include #else #include #endif -void wxMacConvertNewlines13To10( char * data ) ; -void wxMacConvertNewlines10To13( char * data ) ; -void wxMacConvertNewlines13To10( wxString *data ) ; -void wxMacConvertNewlines10To13( wxString *data ) ; +#include "wx/dlimpexp.h" +#include "wx/fontenc.h" -#if wxUSE_UNICODE -void wxMacConvertNewlines13To10( wxChar * data ) ; -void wxMacConvertNewlines10To13( wxChar * data ) ; -#endif +class WXDLLIMPEXP_FWD_BASE wxString; + +WXDLLIMPEXP_BASE void wxMacConvertNewlines13To10( wxString *data ) ; +WXDLLIMPEXP_BASE void wxMacConvertNewlines10To13( wxString *data ) ; -wxUint32 wxMacGetSystemEncFromFontEnc(wxFontEncoding encoding) ; -wxFontEncoding wxMacGetFontEncFromSystemEnc(wxUint32 encoding) ; -void wxMacWakeUp() ; +WXDLLIMPEXP_BASE void wxMacConvertNewlines13To10( char * data ) ; +WXDLLIMPEXP_BASE void wxMacConvertNewlines10To13( char * data ) ; -class wxMacCFStringHolder +WXDLLIMPEXP_BASE wxUint32 wxMacGetSystemEncFromFontEnc(wxFontEncoding encoding) ; +WXDLLIMPEXP_BASE wxFontEncoding wxMacGetFontEncFromSystemEnc(wxUint32 encoding) ; +WXDLLIMPEXP_BASE void wxMacWakeUp() ; + +class WXDLLIMPEXP_BASE wxMacCFStringHolder { public: - wxMacCFStringHolder() - : m_cfs(NULL) , m_release(false) + wxMacCFStringHolder() + : m_cfs(NULL) , m_release(false) { } - wxMacCFStringHolder(const wxString &str , wxFontEncoding encoding ) - : m_cfs(NULL) , m_release(false) + wxMacCFStringHolder(const wxString &str, + wxFontEncoding encoding = wxFONTENCODING_DEFAULT) + : m_cfs(NULL) , m_release(false) { Assign( str , encoding ) ; } wxMacCFStringHolder(CFStringRef ref , bool release = true ) - : m_cfs(ref) , m_release(release) + : m_cfs(ref) , m_release(release) { } @@ -68,16 +73,35 @@ public: m_cfs = NULL ; } - void Assign( const wxString &str , wxFontEncoding encoding ) ; + void Assign(const wxString &str, + wxFontEncoding encoding = wxFONTENCODING_DEFAULT); - operator CFStringRef () { return m_cfs; } + operator CFStringRef () const { return m_cfs; } wxString AsString( wxFontEncoding encoding = wxFONTENCODING_DEFAULT ) ; private: CFStringRef m_cfs; bool m_release ; - + DECLARE_NO_COPY_CLASS( wxMacCFStringHolder ) } ; +// corresponding class for holding UniChars (native unicode characters) + +class WXDLLIMPEXP_BASE wxMacUniCharBuffer +{ +public : + wxMacUniCharBuffer( const wxString &str ) ; + + ~wxMacUniCharBuffer() ; + + UniChar* GetBuffer() ; + + UniCharCount GetChars() ; + +private : + UniChar* m_ubuf ; + UniCharCount m_chars ; +}; +#endif //__WXCFSTRINGHOLDER_H__