summaryrefslogtreecommitdiff
path: root/core/apps/textedit/textedit.cpp
Side-by-side diff
Diffstat (limited to 'core/apps/textedit/textedit.cpp') (more/less context) (show whitespace changes)
-rw-r--r--core/apps/textedit/textedit.cpp33
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
@@ -23,4 +23,5 @@
#include "fileBrowser.h"
#include "fileSaver.h"
+#include "filePermissions.h"
#include "fontDialog.h"
@@ -48,4 +49,7 @@
#include <qtoolbutton.h>
#include <qwidgetstack.h>
+#include <qcheckbox.h>
+#include <unistd.h>
+#include <sys/stat.h>
#include <stdlib.h> //getenv
@@ -416,5 +420,5 @@ TextEdit::TextEdit( QWidget *parent, const char *name, WFlags f )
TextEdit::~TextEdit()
{
-// saveAs();
+// save();
Config cfg("TextEdit");
@@ -695,8 +699,14 @@ bool TextEdit::save()
QString file = doc->file();
QString name= doc->name();
+
QString rt = editor->text();
currentFileName= name ;
qDebug("saveFile "+currentFileName);
+ struct stat buf;
+ mode_t mode;
+ lstat(file.latin1(), &buf);
+ mode = buf.st_mode;
+
doc->setName( name);
FileManager fm;
@@ -704,8 +714,7 @@ bool TextEdit::save()
return false;
}
-// if(doc)
-// delete doc;
-// doc = 0;
editor->setEdited( false );
+
+ chmod( file.latin1(), mode);
return true;
}
@@ -715,5 +724,5 @@ bool TextEdit::save()
bool TextEdit::saveAs()
{
- qDebug("saveAsFile "+currentFileName);
+// qDebug("saveAsFile "+currentFileName);
// case of nothing to save... /// there's always something to save
@@ -754,4 +763,5 @@ bool TextEdit::saveAs()
}
+
fileSaveDlg=new fileSaver(this,"SaveFile",TRUE,0, currentFileName);
qDebug("wanna save filename "+currentFileName);
@@ -773,5 +783,4 @@ bool TextEdit::saveAs()
// editor->setText(rt);
qDebug("openFile doclnk "+currentFileName);
- }
doc->setName( currentFileName);
updateCaption( currentFileName);
@@ -781,8 +790,15 @@ bool TextEdit::saveAs()
return false;
}
-// 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)
delete fileSaveDlg;
@@ -836,4 +852,5 @@ void TextEdit::closeEvent( QCloseEvent *e )
void TextEdit::accept()
{
+ save();
close();
// fileOpen(); //godamn thats obnoxious! lemme out!!!