Diffstat (limited to 'noncore/apps/confedit/listviewitemconfigentry.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/apps/confedit/listviewitemconfigentry.cpp | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/noncore/apps/confedit/listviewitemconfigentry.cpp b/noncore/apps/confedit/listviewitemconfigentry.cpp new file mode 100644 index 0000000..16be46e --- a/dev/null +++ b/noncore/apps/confedit/listviewitemconfigentry.cpp @@ -0,0 +1,107 @@ +/*************************************************************************** + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + ***************************************************************************/ + // (c) 2002 Patrick S. Vogtp <tille@handhelds.org> + +#include "listviewitemconfigentry.h" +#include "listviewitemconffile.h" + +ListViewItemConfigEntry::ListViewItemConfigEntry(ListViewItemConfFile *parent, QString group, QString key) + : ListViewItemConf(parent) +{ + _fileItem = parent; + _file = parent->fileName(); + _group = group; + setKey(key); + _fileItem->unchanged(); +} + +ListViewItemConfigEntry::~ListViewItemConfigEntry() +{ +} + +bool ListViewItemConfigEntry::isGroup() +{ + return _key.isEmpty(); +} + +bool ListViewItemConfigEntry::isKey() +{ + return !_key.isEmpty(); +} + +QString ListViewItemConfigEntry::getFile() +{ + return _file; +} + +void ListViewItemConfigEntry::setGroup(QString g) +{ + if (g==_group) return; + _group = g; + changed(); +} + +QString ListViewItemConfigEntry::getGroup() +{ + return _group; +} + +void ListViewItemConfigEntry::setKey(QString key) +{ + int pos = key.find("="); + _key = key.left(pos).stripWhiteSpace(); + _value = key.right(key.length() - pos - 1).stripWhiteSpace(); + displayText(); +} + +QString ListViewItemConfigEntry::getKey() +{ + return _key; +} + +QString ListViewItemConfigEntry::getValue() +{ + return _value; +} + +void ListViewItemConfigEntry::keyChanged(QString k) +{ + if (k==_key) return; + _key = k; + changed(); +} + +void ListViewItemConfigEntry::valueChanged(QString v) +{ + if (v==_value) return; + _value = v; + changed(); +} + +void ListViewItemConfigEntry::displayText() +{ + QString s; + if (_changed) s="*"; + if (isGroup()) + { + s += "["+_group+"]"; + _type = Group; + }else{ + s += _key+" = "+_value; + _type = Key; + } + setText(0,s); +} + +void ListViewItemConfigEntry::changed() +{ + _changed=true; + displayText(); + _fileItem->changed(); +}
\ No newline at end of file |