Diffstat (limited to 'core/apps/textedit/textedit.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | core/apps/textedit/textedit.cpp | 38 |
1 files changed, 32 insertions, 6 deletions
diff --git a/core/apps/textedit/textedit.cpp b/core/apps/textedit/textedit.cpp index 03f3a1e..78c4d8a 100644 --- a/core/apps/textedit/textedit.cpp +++ b/core/apps/textedit/textedit.cpp @@ -164,11 +164,11 @@ public: clearTableFlags(); setTableFlags( Tbl_vScrollBar | Tbl_autoHScrollBar ); } - //public slots: void find( const QString &txt, bool caseSensitive, bool backwards ); +//public slots: /* signals: void notFound(); void searchWrapped(); @@ -239,9 +239,10 @@ static const int fontsize[nfontsizes] = {8,10,12,14,18,24}; TextEdit::TextEdit( QWidget *parent, const char *name, WFlags f ) : QMainWindow( parent, name, f ), bFromDocView( FALSE ) { doc = 0; - + edited=FALSE; + edited1=FALSE; setToolBarsMovable( FALSE ); setIcon( Resource::loadPixmap( "TextEditor" ) ); @@ -399,8 +400,9 @@ TextEdit::TextEdit( QWidget *parent, const char *name, WFlags f ) editor = new QpeEditor( editorStack ); editor->setFrameStyle( QFrame::Panel | QFrame::Sunken ); editorStack->addWidget( editor, get_unique_id() ); + connect( editor, SIGNAL( textChanged() ), this, SLOT( editorChanged() ) ); resize( 200, 300 ); // setFontSize(defsize,TRUE); @@ -555,9 +557,12 @@ void TextEdit::newFileOpen() } } } delete browseForFiles; - editor->setEdited( true ); + editor->setEdited( FALSE); + edited1=FALSE; + edited=FALSE; + setCaption(caption().right(caption().length()-1)); } #if 0 void TextEdit::slotFind() @@ -683,9 +688,13 @@ void TextEdit::openFile( const DocLnk &f ) if ( doc ) delete doc; doc = new DocLnk(f); editor->setText(txt); - editor->setEdited( false); + editor->setEdited( FALSE); + edited1=FALSE; + edited=FALSE; + setCaption(caption().right(caption().length()-1)); + qDebug("openFile doclnk "+currentFileName); doc->setName(currentFileName); updateCaption(); } @@ -730,9 +739,13 @@ bool TextEdit::save() FileManager fm; if ( !fm.saveFile( *doc, rt ) ) { return false; } - editor->setEdited( false ); + editor->setEdited( FALSE); + edited1=FALSE; + edited=FALSE; + setCaption(caption().right(caption().length()-1)); + chmod( file.latin1(), mode); } return true; @@ -812,14 +825,19 @@ bool TextEdit::saveAs() if( fileSaveDlg->filePermCheck->isChecked() ) { filePermissions *filePerm; filePerm = new filePermissions(this, "Permissions",true,0,(const QString &)fileNm); filePerm->exec(); - editor->setEdited( false ); + if( filePerm) delete filePerm; } } } + editor->setEdited( FALSE); + edited1=FALSE; + edited=FALSE; + if(caption().left(1)=="*") + setCaption(caption().right(caption().length()-1)); if(fileSaveDlg) delete fileSaveDlg; return true; @@ -937,4 +955,12 @@ void TextEdit::changeStartConfig( bool b ) { cfg.writeEntry("startNew","FALSE"); } update(); } + +void TextEdit::editorChanged() { + if(editor->edited() && edited && !edited1) { + setCaption( "*"+caption()); + edited1=TRUE; + } + edited=TRUE; +} |