summaryrefslogtreecommitdiff
authorllornkcor <llornkcor>2005-02-06 03:49:06 (UTC)
committer llornkcor <llornkcor>2005-02-06 03:49:06 (UTC)
commitb09f9ce74d40f47bc336b4647c6c091a4f3bd5b6 (patch) (side-by-side diff)
tree212816ea85f372b28c22c85b3dbf1e6d4dcfa887
parentd0af8c31f8c74d8aa90477ad672dd876b661eba1 (diff)
downloadopie-b09f9ce74d40f47bc336b4647c6c091a4f3bd5b6.zip
opie-b09f9ce74d40f47bc336b4647c6c091a4f3bd5b6.tar.gz
opie-b09f9ce74d40f47bc336b4647c6c091a4f3bd5b6.tar.bz2
fix #1472 - no prompt on esc exit
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/apps/textedit/textedit.cpp49
1 files changed, 26 insertions, 23 deletions
diff --git a/core/apps/textedit/textedit.cpp b/core/apps/textedit/textedit.cpp
index c7273c5..26b907b 100644
--- a/core/apps/textedit/textedit.cpp
+++ b/core/apps/textedit/textedit.cpp
@@ -371,125 +371,128 @@ TextEdit::TextEdit( QWidget *parent, const char *name, WFlags f )
defaultFont = QFont ( family, size, weight, italic );
editor-> setFont ( defaultFont );
// updateCaption();
cfg.setGroup ( "View" );
promptExit = cfg.readBoolEntry ( "PromptExit", false );
openDesktop = cfg.readBoolEntry ( "OpenDesktop", true );
filePerms = cfg.readBoolEntry ( "FilePermissions", false );
useSearchBar = cfg.readBoolEntry ( "SearchBar", false );
startWithNew = cfg.readBoolEntry ( "startNew", true);
featureAutoSave = cfg.readBoolEntry( "autosave", false);
if(useSearchBar) searchBarAction->setOn(true);
if(promptExit) nAdvanced->setOn( true );
if(openDesktop) desktopAction->setOn( true );
if(filePerms) filePermAction->setOn( true );
if(startWithNew) nStart->setOn( true );
if(featureAutoSave) nAutoSave->setOn(true);
// {
// doTimer(true);
// }
bool wrap = cfg. readBoolEntry ( "Wrap", true );
wa-> setOn ( wrap );
setWordWrap ( wrap );
/////////////////
if( qApp->argc() > 1) {
currentFileName=qApp->argv()[1];
QFileInfo fi(currentFileName);
if(fi.baseName().left(1) == "") {
openDotFile(currentFileName);
} else {
openFile(currentFileName);
}
} else {
edited1=false;
openDotFile("");
}
viewSelection = cfg.readNumEntry( "FileView", 0 );
}
TextEdit::~TextEdit() {
- owarn << "textedit d'tor" << oendl;
+ if( edited1 && !promptExit) {
+ switch( savePrompt() ) {
+ case 1: {
+ saveAs();
+ }
+ break;
+ };
+ }
+
delete editor;
}
void TextEdit::closeEvent(QCloseEvent *) {
- if( edited1 && promptExit)
- {
- switch( savePrompt() )
- {
- case 1:
- {
- saveAs();
- qApp->quit();
- }
- break;
-
- case 2:
- {
- qApp->quit();
- }
- break;
-
- case -1:
- break;
- };
- }
+ if( promptExit) {
+ switch( savePrompt() ) {
+ case 1: {
+ saveAs();
+ qApp->quit();
+ }
+ break;
+
+ case 2: {
+ qApp->quit();
+ }
+ break;
+
+ case -1:
+ break;
+ };
+ }
else
qApp->quit();
-
}
void TextEdit::cleanUp() {
Config cfg ( "TextEdit" );
cfg. setGroup ( "Font" );
QFont f = editor->font();
cfg.writeEntry ( "Family", f. family ( ));
cfg.writeEntry ( "Size", f. pointSize ( ));
cfg.writeEntry ( "Weight", f. weight ( ));
cfg.writeEntry ( "Italic", f. italic ( ));
cfg.setGroup ( "View" );
cfg.writeEntry ( "Wrap", editor->wordWrap() == QMultiLineEdit::WidgetWidth );
cfg.writeEntry ( "FileView", viewSelection );
cfg.writeEntry ( "PromptExit", promptExit );
cfg.writeEntry ( "OpenDesktop", openDesktop );
cfg.writeEntry ( "FilePermissions", filePerms );
cfg.writeEntry ( "SearchBar", useSearchBar );
cfg.writeEntry ( "startNew", startWithNew );
}
void TextEdit::accept() {
if( edited1)
saveAs();
qApp->quit();
}
void TextEdit::zoomIn() {
setFontSize(editor->font().pointSize()+1,false);
}
void TextEdit::zoomOut() {
setFontSize(editor->font().pointSize()-1,true);
}
void TextEdit::setFontSize(int sz, bool round_down_not_up) {
int s=10;
for (int i=0; i<nfontsizes; i++) {
if ( fontsize[i] == sz ) {
s = sz;
break;
} else if ( round_down_not_up ) {
if ( fontsize[i] < sz )