mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2025-12-15 16:39:43 -05:00
Use a special enum for inherit/enable/disable variables.
This commit is contained in:
parent
be934b2fce
commit
afb285a476
6 changed files with 60 additions and 48 deletions
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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();
|
||||
|
|
|
|||
|
|
@ -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();
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue