]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/corefoundation/cfstring.cpp
Border corrections
[wxWidgets.git] / src / mac / corefoundation / cfstring.cpp
index 8cfdec84b80dfe889a239b2b04b9138042db527a..541cef0c5be3c122f6c4a13cc395e9fe695059d1 100644 (file)
@@ -47,56 +47,19 @@ void wxMacConvertNewlines10To13( char * data )
     }
 }
 
+const wxString sCR((wxChar)13);
+const wxString sLF((wxChar)10);
+
 void wxMacConvertNewlines13To10( wxString * data )
 {
-    size_t len = data->Length() ;
-
-    if ( len == 0 || wxStrchr(data->c_str(),0x0d)==NULL)
-        return ;
-
-    wxString temp(*data) ;
-    wxStringBuffer buf(*data,len ) ;
-    memcpy( buf , temp.c_str() , (len+1)*sizeof(wxChar) ) ;
-
-    wxMacConvertNewlines13To10( buf ) ;
+    data->Replace( sCR,sLF);
 }
 
 void wxMacConvertNewlines10To13( wxString * data )
 {
-    size_t len = data->Length() ;
-
-    if ( data->Length() == 0 || wxStrchr(data->c_str(),0x0a)==NULL)
-        return ;
-
-    wxString temp(*data) ;
-    wxStringBuffer buf(*data,len ) ;
-    memcpy( buf , temp.c_str() , (len+1)*sizeof(wxChar) ) ;
-    wxMacConvertNewlines10To13( buf ) ;
+    data->Replace( sLF,sCR);
 }
 
-
-#if wxUSE_UNICODE
-void wxMacConvertNewlines13To10( wxChar * data )
-{
-    wxChar * buf = data ;
-    while( (buf=wxStrchr(buf,0x0d)) != NULL )
-    {
-        *buf = 0x0a ;
-        buf++ ;
-    }
-}
-
-void wxMacConvertNewlines10To13( wxChar * data )
-{
-    wxChar * buf =  data ;
-    while( (buf=wxStrchr(buf,0x0a)) != NULL )
-    {
-        *buf = 0x0d ;
-        buf++ ;
-    }
-}
-#endif
-
 wxUint32 wxMacGetSystemEncFromFontEnc(wxFontEncoding encoding)
 {
     TextEncodingBase enc = 0 ;
@@ -633,7 +596,7 @@ wxFontEncoding wxMacGetFontEncFromSystemEnc(wxUint32 encoding)
 //
 
 // converts this string into a carbon foundation string with optional pc 2 mac encoding
-void wxMacCFStringHolder::Assign( const wxString &st , wxFontEncoding encoding )
+void wxMacCFStringHolder::Assign( const wxString &st , wxFontEncoding WXUNUSED_IN_UNICODE(encoding) )
 {
     Release() ;
     if (st.IsEmpty())
@@ -666,7 +629,7 @@ void wxMacCFStringHolder::Assign( const wxString &st , wxFontEncoding encoding )
     m_release = true ;
 }
 
-wxString wxMacCFStringHolder::AsString(wxFontEncoding encoding)
+wxString wxMacCFStringHolder::AsString(wxFontEncoding WXUNUSED_IN_UNICODE(encoding))
 {
     if ( m_cfs == NULL )
         return wxEmptyString ;
@@ -703,9 +666,9 @@ wxString wxMacCFStringHolder::AsString(wxFontEncoding encoding)
 #endif
 
     buf[noChars] = 0 ;
-    wxMacConvertNewlines10To13( buf ) ;
     wxString result(buf) ;
     delete[] buf ;
+    wxMacConvertNewlines10To13( &result);
     return result ;
 }