summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/zsafe/zsafe.cpp137
-rw-r--r--noncore/apps/zsafe/zsafe.h1
2 files changed, 54 insertions, 84 deletions
diff --git a/noncore/apps/zsafe/zsafe.cpp b/noncore/apps/zsafe/zsafe.cpp
index f3d57f8..41c572a 100644
--- a/noncore/apps/zsafe/zsafe.cpp
+++ b/noncore/apps/zsafe/zsafe.cpp
@@ -363,13 +363,13 @@ static const char* const general_data[] = {
if (conf)
{
delete conf;
#ifdef DESKTOP
#ifndef Q_WS_WIN
- conf = new QSettings ();
+ conf = new QSettings();
conf->insertSearchPath (QSettings::Unix, QDir::homeDirPath());
#else
conf = new QSettings (cfgFile);
conf->insertSearchPath (QSettings::Unix, cfgFile);
#endif
#else
@@ -490,29 +490,27 @@ ZSafe::ZSafe( QWidget* parent, const char* name, bool modal, WFlags fl )
#endif
#endif
setCaption( tr( "ZSafe" ) );
QString zsafeAppDirPath = QDir::homeDirPath() + "/Documents/application/zsafe";
QString filename = conf->readEntry(APP_KEY+"document");
- if (filename.isEmpty() || filename.isNull())
+ if ( !QFileInfo(filename).exists() || !QDir(zsafeAppDirPath).exists() )
{
-
// check if the directory application exists, if not
// create it
// #ifndef Q_WS_WIN
// QString d1("Documents/application");
// #else
QString d1(QDir::homeDirPath() + "/Documents/application");
// #endif
QDir pd1(d1);
if (!pd1.exists())
{
-
QDir pd2(QDir::homeDirPath() + "/Documents");
if (!pd2.exists()) {
- QDir pd3(QDir::homeDirPath());
+ QDir pd3(QDir::homeDirPath());
if (!pd3.mkdir("Documents", FALSE)) {
}
}
if (!pd2.mkdir("application", FALSE))
{
@@ -542,13 +540,12 @@ ZSafe::ZSafe( QWidget* parent, const char* name, bool modal, WFlags fl )
tr("<P>Can't create directory %1</P><P>ZSafe will now exit.</P>").arg(d2));
#endif
exitZs (1);
}
}
- // set the default filename
filename = zsafeAppDirPath + "/passwords.zsf";
// save the current filename to the config file
conf->writeEntry(APP_KEY+"document", filename);
saveConf();
}
@@ -1336,38 +1333,13 @@ void ZSafe::writeAllEntries()
QMessageBox::critical( 0, tr("ZSafe"),
tr("No document defined.\nYou have to create a new document"));
return;
}
// open the file dialog
-#ifndef DESKTOP
-#ifndef NO_OPIE
- QMap<QString, QStringList> mimeTypes;
- mimeTypes.insert(tr("All"), QStringList() );
- mimeTypes.insert(tr("Text"), "text/*" );
- QString fn = OFileDialog::getSaveFileName( OFileSelector::EXTENDED_ALL,
- QDir::homeDirPath() + "/Documents/application/zsafe",
- QString::null,
- mimeTypes,
- this,
- tr ("Export text file"));
-#else
- QString fn = ScQtFileEdit::getSaveAsFileName(this,
- tr ("Export text file"),
- QDir::homeDirPath() + "/Documents/application/zsafe",
- "*.txt");
-#endif
-#else
- QString fn = QFileDialog::getSaveFileName(
- QDir::homeDirPath() + "/Documents/application/zsafe",
- "ZSafe (*.txt)",
- this,
- "ZSafe File Dialog"
- "Choose a text file" );
-#endif
-
+ QString fn = zsaveDialog();
// open the new document
if (fn && fn.length() > 0 )
{
QFile f( fn );
if ( !f.open( IO_WriteOnly ) ) {
#ifndef NO_OPIE
@@ -1918,12 +1890,14 @@ void ZSafe::resume(int)
//---------------------------------------------
bool ZSafe::openDocument(const char* _filename, const char* )
{
+ QString name= _filename;
+ qWarning("openDocument "+name);
int retval;
char* entry[FIELD_SIZE];
// #ifndef Q_WS_WIN
int validationFlag = conf->readNumEntry(APP_KEY+"valzsafe", 1);
// #else
// int validationFlag = 1;
@@ -1967,13 +1941,27 @@ bool ZSafe::openDocument(const char* _filename, const char* )
#ifdef Q_WS_WIN
this->setCaption("Qt ZSafe");
#else
this->setCaption("ZSafe");
#endif
filename = "";
+ switch( QMessageBox::warning( this, tr("ZSafe"),
+ tr("<P>You must create a new document first. Ok to create?</P>"),
+ tr("&Yes"), tr("&No."),
+ 0
+ ) )
+ {
+ case 1: // No
return false;
+ break;
+ case 0: // Yes
+ newDocument();
+ return false;
+ break;
+ }
+
}
// load the validation entry
if (validationFlag == 0)
{
@@ -3444,37 +3432,13 @@ void ZSafe::pasteItem()
}
void ZSafe::newDocument()
{
// open the file dialog
-#ifndef DESKTOP
-#ifndef NO_OPIE
- QMap<QString, QStringList> mimeTypes;
- mimeTypes.insert(tr("All"), QStringList() );
- mimeTypes.insert(tr("ZSafe"), "zsafe/*" );
- QString newFile = OFileDialog::getSaveFileName( OFileSelector::EXTENDED_ALL,
- QDir::homeDirPath() + "/Documents/application/zsafe",
- QString::null,
- mimeTypes,
- this,
- tr ("Create new ZSafe document"));
-#else
- QString newFile = ScQtFileEdit::getSaveAsFileName(this,
- tr ("Create new ZSafe document"),
- QDir::homeDirPath() + "/Documents/application/zsafe",
- "*.zsf");
-#endif
-#else
- QString newFile = QFileDialog::getSaveFileName(
- QDir::homeDirPath() + "/Documents/application/zsafe",
- "ZSafe (*.zsf)",
- this,
- "ZSafe File Dialog"
- "Choose a ZSafe file" );
-#endif
+ QString newFile = zsaveDialog();
// open the new document
if (newFile && newFile.length() > 0 )
{
// save the previous opened document
if (!filename.isEmpty())
@@ -3610,39 +3574,13 @@ void ZSafe::loadDocument()
}
}
void ZSafe::saveDocumentAs()
{
-#ifndef DESKTOP
-#ifndef NO_OPIE
- QMap<QString, QStringList> mimeTypes;
- mimeTypes.insert(tr("All"), QStringList() );
- mimeTypes.insert(tr("ZSafe"), "zsafe/*" );
- QString newFile = OFileDialog::getSaveFileName( OFileSelector::EXTENDED_ALL,
- QDir::homeDirPath() + "/Documents/application/zsafe",
- QString::null,
- mimeTypes,
- this,
- tr ("Save ZSafe document as.."));
-#else
- QString newFile = ScQtFileEdit::getSaveAsFileName(this,
- tr ("Save ZSafe document as.."),
- QDir::homeDirPath() + "/Documents/application/zsafe",
- "*.zsf");
-#endif
-#else
- // open the file dialog
- QString newFile = QFileDialog::getSaveFileName(
- QDir::homeDirPath() + "/Documents/application/zsafe",
- "ZSafe (*.zsf)",
- this,
- "ZSafe File Dialog"
- "Choose a ZSafe file" );
-#endif
-
+QString newFile = zsaveDialog();
// open the new document
if (newFile && newFile.length() > 0 )
{
// save the previous opened document
if (!filename.isEmpty())
saveDocument(filename, FALSE);
@@ -3850,12 +3788,14 @@ void ZSafe::setDocument(const QString& fileref)
categories.clear();
m_password = "";
selectedItem = NULL;
openDocument(filename);
+#else
+Q_UNUSED(fileref);
#endif
}
void ZSafe::ListPressed(int mouse, QListViewItem *item, const QPoint&, int column) {
if(item ==0) return;
@@ -3901,6 +3841,35 @@ void ZSafe::ListPressed(int mouse, QListViewItem *item, const QPoint&, int colum
void ZSafe::copyClip( const QString &text) {
QClipboard *cb = QApplication::clipboard();
cb->setText( text);
}
+QString ZSafe::zsaveDialog() {
+
+ QString fn;
+#ifndef DESKTOP
+#ifndef NO_OPIE
+ QMap<QString, QStringList> mimeTypes;
+ mimeTypes.insert(tr("All"), QStringList() );
+ mimeTypes.insert(tr("Text"), "text/*" );
+ fn = OFileDialog::getSaveFileName( OFileSelector::EXTENDED_ALL,
+ QDir::homeDirPath() + "/Documents/application/zsafe",
+ QString::null,
+ mimeTypes,
+ this,
+ tr ("Export text file"));
+#else
+ fn = ScQtFileEdit::getSaveAsFileName(this,
+ tr ("Export text file"),
+ QDir::homeDirPath() + "/Documents/application/zsafe",
+ "*.txt");
+#endif
+#else
+ fn = QFileDialog::getSaveFileName(
+ QDir::homeDirPath() + "/Documents/application/zsafe",
+ "ZSafe (*.txt)",
+ this,
+ "ZSafe");
+#endif
+ return fn;
+}
diff --git a/noncore/apps/zsafe/zsafe.h b/noncore/apps/zsafe/zsafe.h
index ca041ff..7419797 100644
--- a/noncore/apps/zsafe/zsafe.h
+++ b/noncore/apps/zsafe/zsafe.h
@@ -150,12 +150,13 @@ public:
void saveCategoryDialogFields(CategoryDialog *dialog);
void resume(int signum);
void exitZs (int ec);
+ QString zsaveDialog();
public slots:
virtual void deletePwd();
virtual void editPwd();
virtual void newPwd();
virtual void findPwd();