Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/keepassxreboot/keepassxc.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFelix Geyer <debfx@fobos.de>2011-07-07 14:45:14 +0400
committerFelix Geyer <debfx@fobos.de>2011-07-07 14:45:14 +0400
commitafb285a4769e8285b2e09bde1068ffe80ee6fe4d (patch)
treec54af71703509e2351bb27f3d4bb8215fcf5e8a1 /src
parentbe934b2fcece56b4ba4f9a733721cc85a5f653a3 (diff)
Use a special enum for inherit/enable/disable variables.
Diffstat (limited to 'src')
-rw-r--r--src/core/Group.cpp12
-rw-r--r--src/core/Group.h14
-rw-r--r--src/format/KeePass2XmlReader.cpp12
-rw-r--r--src/format/KeePass2XmlWriter.cpp43
-rw-r--r--src/format/KeePass2XmlWriter.h1
5 files changed, 38 insertions, 44 deletions
diff --git a/src/core/Group.cpp b/src/core/Group.cpp
index 3461e623f..bea395843 100644
--- a/src/core/Group.cpp
+++ b/src/core/Group.cpp
@@ -88,12 +88,12 @@ QString Group::defaultAutoTypeSequence() const
return m_defaultAutoTypeSequence;
}
-int Group::autoTypeEnabled() const
+Group::TriState Group::autoTypeEnabled() const
{
return m_autoTypeEnabled;
}
-int Group::searchingEnabed() const
+Group::TriState Group::searchingEnabed() const
{
return m_searchingEnabled;
}
@@ -155,17 +155,13 @@ void Group::setDefaultAutoTypeSequence(const QString& sequence)
m_defaultAutoTypeSequence = sequence;
}
-void Group::setAutoTypeEnabled(int enable)
+void Group::setAutoTypeEnabled(TriState enable)
{
- Q_ASSERT(enable >= -1 && enable <= 1);
-
m_autoTypeEnabled = enable;
}
-void Group::setSearchingEnabled(int enable)
+void Group::setSearchingEnabled(TriState enable)
{
- Q_ASSERT(enable >= -1 && enable <= 1);
-
m_searchingEnabled = enable;
}
diff --git a/src/core/Group.h b/src/core/Group.h
index 15d5119c0..ac37e9e39 100644
--- a/src/core/Group.h
+++ b/src/core/Group.h
@@ -31,6 +31,8 @@ class Group : public QObject
Q_OBJECT
public:
+ enum TriState { Inherit, Enable, Disable };
+
Group();
~Group();
Uuid uuid() const;
@@ -42,8 +44,8 @@ public:
TimeInfo timeInfo() const;
bool isExpanded() const;
QString defaultAutoTypeSequence() const;
- int autoTypeEnabled() const;
- int searchingEnabed() const;
+ Group::TriState autoTypeEnabled() const;
+ Group::TriState searchingEnabed() const;
Entry* lastTopVisibleEntry() const;
void setUuid(const Uuid& uuid);
@@ -54,8 +56,8 @@ public:
void setTimeInfo(const TimeInfo& timeInfo);
void setExpanded(bool expanded);
void setDefaultAutoTypeSequence(const QString& sequence);
- void setAutoTypeEnabled(int enable);
- void setSearchingEnabled(int enable);
+ void setAutoTypeEnabled(TriState enable);
+ void setSearchingEnabled(TriState enable);
void setLastTopVisibleEntry(Entry* entry);
Group* parentGroup();
@@ -98,8 +100,8 @@ private:
TimeInfo m_timeInfo;
bool m_isExpanded;
QString m_defaultAutoTypeSequence;
- int m_autoTypeEnabled;
- int m_searchingEnabled;
+ TriState m_autoTypeEnabled;
+ TriState m_searchingEnabled;
Entry* m_lastTopVisibleEntry;
QList<Group*> m_children;
QList<Entry*> m_entries;
diff --git a/src/format/KeePass2XmlReader.cpp b/src/format/KeePass2XmlReader.cpp
index 2c8989f0e..ba4877bec 100644
--- a/src/format/KeePass2XmlReader.cpp
+++ b/src/format/KeePass2XmlReader.cpp
@@ -340,13 +340,13 @@ Group* KeePass2XmlReader::parseGroup()
QString str = readString();
if (str.compare("null", Qt::CaseInsensitive) == 0) {
- group->setAutoTypeEnabled(-1);
+ group->setAutoTypeEnabled(Group::Inherit);
}
else if (str.compare("true", Qt::CaseInsensitive) == 0) {
- group->setAutoTypeEnabled(1);
+ group->setAutoTypeEnabled(Group::Enable);
}
else if (str.compare("false", Qt::CaseInsensitive) == 0) {
- group->setAutoTypeEnabled(0);
+ group->setAutoTypeEnabled(Group::Disable);
}
else {
raiseError();
@@ -357,13 +357,13 @@ Group* KeePass2XmlReader::parseGroup()
QString str = readString();
if (str.compare("null", Qt::CaseInsensitive) == 0) {
- group->setSearchingEnabled(-1);
+ group->setSearchingEnabled(Group::Inherit);
}
else if (str.compare("true", Qt::CaseInsensitive) == 0) {
- group->setSearchingEnabled(1);
+ group->setSearchingEnabled(Group::Enable);
}
else if (str.compare("false", Qt::CaseInsensitive) == 0) {
- group->setSearchingEnabled(0);
+ group->setSearchingEnabled(Group::Disable);
}
else {
raiseError();
diff --git a/src/format/KeePass2XmlWriter.cpp b/src/format/KeePass2XmlWriter.cpp
index 8244c32fb..e7a3938c3 100644
--- a/src/format/KeePass2XmlWriter.cpp
+++ b/src/format/KeePass2XmlWriter.cpp
@@ -182,31 +182,9 @@ void KeePass2XmlWriter::writeGroup(const Group* group)
writeBool("IsExpanded", group->isExpanded());
writeString("DefaultAutoTypeSequence", group->defaultAutoTypeSequence());
- int autoTypeEnabled = group->autoTypeEnabled();
- QString autoTypeEnabledStr;
- if (autoTypeEnabled == -1) {
- autoTypeEnabledStr = "null";
- }
- else if (autoTypeEnabled == 0) {
- autoTypeEnabledStr = "false";
- }
- else {
- autoTypeEnabledStr = "true";
- }
- writeString("EnableAutoType", autoTypeEnabledStr);
+ writeTriState("EnableAutoType", group->autoTypeEnabled());
- int searchingEnabed = group->searchingEnabed();
- QString searchingEnabedStr;
- if (searchingEnabed == -1) {
- searchingEnabedStr = "null";
- }
- else if (searchingEnabed == 0) {
- searchingEnabedStr = "false";
- }
- else {
- searchingEnabedStr = "true";
- }
- writeString("EnableSearching", searchingEnabedStr);
+ writeTriState("EnableSearching", group->searchingEnabed());
writeUuid("LastTopVisibleEntry", group->lastTopVisibleEntry());
@@ -441,6 +419,23 @@ void KeePass2XmlWriter::writeColor(const QString& qualifiedName, const QColor& c
writeString(qualifiedName, colorStr);
}
+void KeePass2XmlWriter::writeTriState(const QString& qualifiedName, Group::TriState triState)
+{
+ QString value;
+
+ if (triState == Group::Inherit) {
+ value = "null";
+ }
+ else if (triState == Group::Enable) {
+ value = "true";
+ }
+ else {
+ value = "false";
+ }
+
+ writeString(qualifiedName, value);
+}
+
QString KeePass2XmlWriter::colorPartToString(int value)
{
QString str = QString::number(value, 16).toUpper();
diff --git a/src/format/KeePass2XmlWriter.h b/src/format/KeePass2XmlWriter.h
index 4b8a39e7c..bd21ed0a8 100644
--- a/src/format/KeePass2XmlWriter.h
+++ b/src/format/KeePass2XmlWriter.h
@@ -67,6 +67,7 @@ private:
void writeUuid(const QString& qualifiedName, const Entry* entry);
void writeBinary(const QString& qualifiedName, const QByteArray& ba);
void writeColor(const QString& qualifiedName, const QColor& color);
+ void writeTriState(const QString& qualifiedName, Group::TriState triState);
QString colorPartToString(int value);
QXmlStreamWriter m_xml;