summaryrefslogtreecommitdiff
authorllornkcor <llornkcor>2004-09-18 09:14:31 (UTC)
committer llornkcor <llornkcor>2004-09-18 09:14:31 (UTC)
commitf0e025a8e64f96390377c0aa66e8b5602494d7d0 (patch) (side-by-side diff)
tree3c812aec7e4bec59cea71f2e16cd1f77230a79fd
parenteaf09b9b6e1abbe36e814a8e4da315ac8d96bd63 (diff)
downloadopie-f0e025a8e64f96390377c0aa66e8b5602494d7d0.zip
opie-f0e025a8e64f96390377c0aa66e8b5602494d7d0.tar.gz
opie-f0e025a8e64f96390377c0aa66e8b5602494d7d0.tar.bz2
fix #1399
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/apps/textedit/textedit.cpp36
1 files changed, 21 insertions, 15 deletions
diff --git a/core/apps/textedit/textedit.cpp b/core/apps/textedit/textedit.cpp
index 086fdb6..1d0df6a 100644
--- a/core/apps/textedit/textedit.cpp
+++ b/core/apps/textedit/textedit.cpp
@@ -770,63 +770,69 @@ void TextEdit::showEditTools() {
else
searchBar->show();
setWState (WState_Reserved1 );
}
/*!
unprompted save */
bool TextEdit::save() {
+ QString name, file;
odebug << "saveAsFile " + currentFileName << oendl;
if(currentFileName.isEmpty()) {
saveAs();
return false;
}
-
- QString file = doc->file();
- odebug << "saver file "+file << oendl;
- QString name= doc->name();
- odebug << "File named "+name << oendl;
+ name = currentFileName;
+ if(doc) {
+ file = doc->file();
+ odebug << "saver file "+file << oendl;
+ name = doc->name();
+ odebug << "File named "+name << oendl;
+ } else {
+ name = file = currentFileName;
+ }
+
QString rt = editor->text();
if( !rt.isEmpty() ) {
if(name.isEmpty()) {
saveAs();
} else {
- currentFileName= name ;
+ currentFileName = name;
odebug << "saveFile "+currentFileName << oendl;
struct stat buf;
mode_t mode;
stat(file.latin1(), &buf);
mode = buf.st_mode;
if(!fileIs) {
doc->setName( name);
FileManager fm;
if ( !fm.saveFile( *doc, rt ) ) {
- QMessageBox::message(tr("Text Edit"),tr("Save Failed"));
+ QMessageBox::message(tr("Text Edit"),tr("Save Failed"));
return false;
}
} else {
odebug << "regular save file" << oendl;
QFile f(file);
- if( f.open(IO_WriteOnly)) {
- QCString crt = rt.utf8();
- f.writeBlock(crt,crt.length());
- } else {
- QMessageBox::message(tr("Text Edit"),tr("Write Failed"));
- return false;
- }
+ if( f.open(IO_WriteOnly)) {
+ QCString crt = rt.utf8();
+ f.writeBlock(crt,crt.length());
+ } else {
+ QMessageBox::message(tr("Text Edit"),tr("Write Failed"));
+ return false;
+ }
}
editor->setEdited( false);
edited1=false;
edited=false;
if(caption().left(1)=="*")
- setCaption(caption().right(caption().length()-1));
+ setCaption(caption().right(caption().length()-1));
chmod( file.latin1(), mode);
}
return true;
}
return false;
}