#if wxUSE_STD_IOSTREAM
#include "wx/ioswrap.h"
+ #include "wx/beforestd.h"
#if wxUSE_IOSTREAMH
#include <fstream.h>
#else
#include <fstream>
#endif
+ #include "wx/afterstd.h"
#else
#include "wx/wfstream.h"
#endif
#else
wxString filter = docTemplate->GetFileFilter() ;
#endif
- wxString tmp = wxFileSelector(_("Save as"),
- docTemplate->GetDirectory(),
+ wxString defaultDir = docTemplate->GetDirectory();
+ if (defaultDir.IsEmpty())
+ defaultDir = wxPathOnly(GetFilename());
+
+ wxString tmp = wxFileSelector(_("Save As"),
+ defaultDir,
wxFileNameFromPath(GetFilename()),
docTemplate->GetDefaultExtension(),
filter,
wxString title = GetUserReadableName();
wxString msgTitle;
- if (!wxTheApp->GetAppName().empty())
- msgTitle = wxTheApp->GetAppName();
+ if (!wxTheApp->GetAppDisplayName().empty())
+ msgTitle = wxTheApp->GetAppDisplayName();
else
msgTitle = wxString(_("Warning"));
bool wxDocument::DoSaveDocument(const wxString& file)
{
wxString msgTitle;
- if (!wxTheApp->GetAppName().empty())
- msgTitle = wxTheApp->GetAppName();
+ if (!wxTheApp->GetAppDisplayName().empty())
+ msgTitle = wxTheApp->GetAppDisplayName();
else
msgTitle = wxString(_("File error"));
// If docName is empty, a document is not currently active.
wxString wxDocManager::MakeFrameTitle(wxDocument* doc)
{
- wxString appName = wxTheApp->GetAppName();
+ wxString appName = wxTheApp->GetAppDisplayName();
wxString title;
if (!doc)
title = appName;
wxWindow* parent = wxFindSuitableParent();
- wxString pathTmp = wxFileSelectorEx(_("Select a file"),
+ wxString pathTmp = wxFileSelectorEx(_("Open File"),
m_lastDirectory,
wxEmptyString,
&FilterIndex,
if (!wxFileExists(pathTmp))
{
wxString msgTitle;
- if (!wxTheApp->GetAppName().empty())
- msgTitle = wxTheApp->GetAppName();
+ if (!wxTheApp->GetAppDisplayName().empty())
+ msgTitle = wxTheApp->GetAppDisplayName();
else
msgTitle = wxString(_("File error"));
wxCHECK_RET( i < m_fileHistory.GetCount(),
wxT("invalid index in wxFileHistory::RemoveFileFromHistory") );
- // delete the element from the array
+ // delete the element from the array
m_fileHistory.RemoveAt(i);
wxList::compatibility_iterator node = m_fileMenus.GetFirst();
buf.Printf(wxT("file%d"), 1);
wxString historyFile;
- while ((m_fileHistory.GetCount() < m_fileMaxFiles) &&
+ while ((m_fileHistory.GetCount() < m_fileMaxFiles) &&
config.Read(buf, &historyFile) && !historyFile.empty())
{
m_fileHistory.Add(historyFile);
return false;
char buf[4096];
- do
+ for ( ;; )
{
stream.Read(buf, WXSIZEOF(buf));
const size_t nRead = stream.LastRead();
- if ( !nRead || !file.Write(buf, nRead) )
+ if ( !nRead )
+ {
+ if ( stream.Eof() )
+ break;
+
+ return false;
+ }
+
+ if ( !file.Write(buf, nRead) )
return false;
}
- while ( !stream.Eof() );
return true;
}