]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/textcmn.cpp
Changes corresponding to patch #841324 from Ian Brown:
[wxWidgets.git] / src / common / textcmn.cpp
index 5b8d40343e68238e0d5edfb5813e407ff48bf29b..cf77965c5b8d0149acdef14cd942013654799df1 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,12 +442,10 @@ bool wxTextCtrlBase::EmulateKeyPress(const wxKeyEvent& event)
 
         return TRUE;
     }
-#else
-    event;
-#endif // !__WIN32__
 
     return FALSE;
 }
+#endif // !__WIN32__
 
 // ----------------------------------------------------------------------------
 // selection and ranges