Diffstat (limited to 'core/apps/textedit/textedit.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | core/apps/textedit/textedit.cpp | 33 |
1 files changed, 25 insertions, 8 deletions
diff --git a/core/apps/textedit/textedit.cpp b/core/apps/textedit/textedit.cpp index c869dc9..515fcdc 100644 --- a/core/apps/textedit/textedit.cpp +++ b/core/apps/textedit/textedit.cpp @@ -24,2 +24,3 @@ #include "fileSaver.h" +#include "filePermissions.h" @@ -49,2 +50,5 @@ #include <qwidgetstack.h> +#include <qcheckbox.h> +#include <unistd.h> +#include <sys/stat.h> @@ -417,3 +421,3 @@ TextEdit::~TextEdit() { -// saveAs(); +// save(); @@ -696,2 +700,3 @@ bool TextEdit::save() QString name= doc->name(); + QString rt = editor->text(); @@ -700,2 +705,7 @@ bool TextEdit::save() + struct stat buf; + mode_t mode; + lstat(file.latin1(), &buf); + mode = buf.st_mode; + doc->setName( name); @@ -705,6 +715,5 @@ bool TextEdit::save() } -// if(doc) -// delete doc; -// doc = 0; editor->setEdited( false ); + + chmod( file.latin1(), mode); return true; @@ -716,3 +725,3 @@ bool TextEdit::saveAs() { - qDebug("saveAsFile "+currentFileName); +// qDebug("saveAsFile "+currentFileName); @@ -755,2 +764,3 @@ bool TextEdit::saveAs() + fileSaveDlg=new fileSaver(this,"SaveFile",TRUE,0, currentFileName); @@ -774,3 +784,2 @@ bool TextEdit::saveAs() qDebug("openFile doclnk "+currentFileName); - } doc->setName( currentFileName); @@ -782,6 +791,13 @@ bool TextEdit::saveAs() } -// delete doc; -// doc = 0; + 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; } + } + } + if(fileSaveDlg) @@ -837,2 +853,3 @@ void TextEdit::accept() { + save(); close(); |