X-Git-Url: https://vaikene.ee/gitweb/pswgen09.html?a=blobdiff_plain;ds=inline;f=src%2Fapps%2FPswGen%2FStorage%2Fistorage.h;h=add6f7a342d7a496835b0dfb69f062b6a3391da7;hb=4c0329c5c2690bde28212c89029015a5da4c7e34;hp=8af8ba53dc0bd25d2e74fc5265eeef90a7d03153;hpb=77caaebac175110f337767d4b7422bdaa6b7ac1f;p=evaf
diff --git a/src/apps/PswGen/Storage/istorage.h b/src/apps/PswGen/Storage/istorage.h
index 8af8ba5..add6f7a 100644
--- a/src/apps/PswGen/Storage/istorage.h
+++ b/src/apps/PswGen/Storage/istorage.h
@@ -3,7 +3,7 @@
* @brief Interface for password storage modules
* @author Enar Vaikene
*
- * Copyright (c) 2011 Enar Vaikene
+ * Copyright (c) 2011-2019 Enar Vaikene
*
* This file is part of the eVaf C++ cross-platform application development framework.
*
@@ -39,20 +39,37 @@ class Data : public QSharedData
{
public:
- Data()
+ Data(QString const & name)
: QSharedData()
, mModified(false)
+ , mName(name)
+ , mSuffix()
, mLength(0)
, mFlags(0)
{}
- Data(int l, uint f = 0)
+ Data(QString const & name, QString const & suffix, int l, uint f = 0)
: QSharedData()
, mModified(false)
+ , mName(name)
+ , mSuffix(suffix)
, mLength(l)
, mFlags(f)
{}
+ /// Name of the password
+ inline QString const & name() const { return mName; }
+
+ /// Optional suffix added to the name
+ inline QString const & suffix() const { return mSuffix; }
+ void setSuffix(QString const & suffix)
+ {
+ if (suffix != mSuffix) {
+ mSuffix = suffix;
+ mModified = true;
+ }
+ }
+
/// Length of the generated password
inline int length() const { return mLength; }
inline void setLength(int value)
@@ -83,6 +100,8 @@ public:
private:
bool mModified;
+ QString mName;
+ QString mSuffix;
int mLength;
uint mFlags;
@@ -98,6 +117,11 @@ private:
struct iStorage
{
+ /**
+ * Empty virtual destructor
+ */
+ ~iStorage() {}
+
/**
* Saves the data record
* @param name Name of the password