author | llornkcor <llornkcor> | 2002-02-24 07:39:56 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-02-24 07:39:56 (UTC) |
commit | f7be370d10a69cfe78b04687fe728b32d566083a (patch) (side-by-side diff) | |
tree | 6e586d6543cfd3a60e9734b515642bd86fc052cd /core/apps/textedit/textedit.cpp | |
parent | f1c800025cf759ca0d6257a42f548216d217b16b (diff) | |
download | opie-f7be370d10a69cfe78b04687fe728b32d566083a.zip opie-f7be370d10a69cfe78b04687fe728b32d566083a.tar.gz opie-f7be370d10a69cfe78b04687fe728b32d566083a.tar.bz2 |
added file permissions dialog
Diffstat (limited to 'core/apps/textedit/textedit.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | core/apps/textedit/textedit.cpp | 75 |
1 files changed, 46 insertions, 29 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); @@ -759,31 +769,37 @@ bool TextEdit::saveAs() if( fileSaveDlg->result() == 1 ) { - QString fileNm=fileSaveDlg->selectedFileName; - qDebug("saving filename "+fileNm); - QFileInfo fi(fileNm); - currentFileName=fi.fileName(); - if(doc) { - qDebug("doclnk exists"); + QString fileNm=fileSaveDlg->selectedFileName; + qDebug("saving filename "+fileNm); + QFileInfo fi(fileNm); + currentFileName=fi.fileName(); + if(doc) { + qDebug("doclnk exists"); // QString file = doc->file(); // doc->removeFiles(); - delete doc; - DocLnk nf; - nf.setType("text/plain"); - nf.setFile( fileNm); - doc = new DocLnk(nf); + delete doc; + DocLnk nf; + nf.setType("text/plain"); + nf.setFile( fileNm); + doc = new DocLnk(nf); // editor->setText(rt); - qDebug("openFile doclnk "+currentFileName); - } - doc->setName( currentFileName); - updateCaption( currentFileName); - - FileManager fm; - if ( !fm.saveFile( *doc, rt ) ) { - return false; - } -// delete doc; -// doc = 0; - editor->setEdited( false ); + qDebug("openFile doclnk "+currentFileName); + doc->setName( currentFileName); + updateCaption( currentFileName); + + FileManager fm; + if ( !fm.saveFile( *doc, rt ) ) { + return false; + } + 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) - delete fileSaveDlg; + delete fileSaveDlg; return true; @@ -837,2 +853,3 @@ void TextEdit::accept() { + save(); close(); |