]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/textcmn.cpp
Fixed Unicode breakage
[wxWidgets.git] / src / common / textcmn.cpp
index ff02305ca2ab538caddaf20dd3fbc7795dd34c78..10e92ab2c1f77bac53b432d09ddadc549fb0c0da 100644 (file)
@@ -13,7 +13,7 @@
 // declarations
 // ============================================================================
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
     #pragma implementation "textctrlbase.h"
 #endif
 
@@ -230,7 +230,7 @@ bool wxTextCtrlBase::LoadFile(const wxString& filename)
 bool wxTextCtrlBase::SaveFile(const wxString& filename)
 {
     wxString filenameToUse = filename.IsEmpty() ? m_filename : filename;
-    if ( !filenameToUse )
+    if ( filenameToUse.empty() )
     {
         // what kind of message to give? is it an error or a program bug?
         wxLogDebug(wxT("Can't save textctrl to file without filename."));
@@ -239,19 +239,20 @@ bool wxTextCtrlBase::SaveFile(const wxString& filename)
     }
 
 #if wxUSE_FFILE
-    wxFFile file(filename, _T("w"));
+    wxFFile file(filenameToUse, _T("w"));
     if ( file.IsOpened() && file.Write(GetValue()) )
     {
         // it's not modified any longer
         DiscardEdits();
 
-        m_filename = filename;
+        // if it worked, save for future calls
+        m_filename = filenameToUse;
 
         return TRUE;
     }
+#endif // wxUSE_FFILE
 
     wxLogError(_("The text couldn't be saved."));
-#endif // wxUSE_FFILE
 
     return FALSE;
 }
@@ -347,10 +348,15 @@ bool wxTextCtrlBase::CanPaste() const
 // emulating key presses
 // ----------------------------------------------------------------------------
 
+#ifdef __WIN32__
+// the generic version is unused in wxMSW
+bool wxTextCtrlBase::EmulateKeyPress(const wxKeyEvent& WXUNUSED(event))
+{
+    return FALSE;
+}
+#else // !__WIN32__
 bool wxTextCtrlBase::EmulateKeyPress(const wxKeyEvent& event)
 {
-    // the generic version is unused in wxMSW
-#ifndef __WIN32__
     wxChar ch = 0;
     int keycode = event.GetKeyCode();
     switch ( keycode )
@@ -436,10 +442,10 @@ bool wxTextCtrlBase::EmulateKeyPress(const wxKeyEvent& event)
 
         return TRUE;
     }
-#endif // !__WIN32__
 
     return FALSE;
 }
+#endif // !__WIN32__
 
 // ----------------------------------------------------------------------------
 // selection and ranges
@@ -482,6 +488,18 @@ void wxTextCtrlBase::DoUpdateWindowUI(wxUpdateUIEvent& event)
     }    
 }
 
+// ----------------------------------------------------------------------------
+// hit testing
+// ----------------------------------------------------------------------------
+
+wxTextCtrlHitTestResult
+wxTextCtrlBase::HitTest(const wxPoint& WXUNUSED(pt),
+                        wxTextCoord * WXUNUSED(col),
+                        wxTextCoord * WXUNUSED(row)) const
+{
+    // not implemented
+    return wxTE_HT_UNKNOWN;
+}
 
 #else // !wxUSE_TEXTCTRL