summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Markmann <tm@ayena.de>2013-10-15 14:31:02 (GMT)
committerSwift Review <review@swift.im>2013-10-17 08:03:37 (GMT)
commit5f0eeca41f0559c5b416c78fd51445fd93cf61ff (patch)
treead4b7bb586385be7916213999dfb4248dae2c437 /Swift/QtUI/QtVCardWidget/QtVCardGeneralField.cpp
parent040ceccfc67ce41fdd836ae874da68e04e6ca944 (diff)
downloadswift-5f0eeca41f0559c5b416c78fd51445fd93cf61ff.zip
swift-5f0eeca41f0559c5b416c78fd51445fd93cf61ff.tar.bz2
VCard: Assert existence of field widgets instead of if-testing.
Change-Id: Ie92f4f1714b8fb6dc5c1e2729151c8e00c33215b License: This patch is BSD-licensed, see Documentation/Licenses/BSD-simplified.txt for details.
Diffstat (limited to 'Swift/QtUI/QtVCardWidget/QtVCardGeneralField.cpp')
-rw-r--r--Swift/QtUI/QtVCardWidget/QtVCardGeneralField.cpp39
1 files changed, 19 insertions, 20 deletions
diff --git a/Swift/QtUI/QtVCardWidget/QtVCardGeneralField.cpp b/Swift/QtUI/QtVCardWidget/QtVCardGeneralField.cpp
index 5b3ef87..f8b9247 100644
--- a/Swift/QtUI/QtVCardWidget/QtVCardGeneralField.cpp
+++ b/Swift/QtUI/QtVCardWidget/QtVCardGeneralField.cpp
@@ -4,17 +4,17 @@
* See Documentation/Licenses/BSD-simplified.txt for more information.
*/
-#include "QtVCardGeneralField.h"
+#include <Swift/QtUI/QtVCardWidget/QtVCardGeneralField.h>
+
+#include <cassert>
#include <QHBoxLayout>
-#include <Swiften/Base/Log.h>
namespace Swift {
QtVCardGeneralField::QtVCardGeneralField(QWidget* parent, QGridLayout* layout, bool editable, int row, QString label, bool preferrable, bool taggable) :
- QWidget(parent), preferrable(preferrable), taggable(taggable), layout(layout), row(row), preferredCheckBox(0), label(0), labelText(label),
+ QWidget(parent), editable(editable), preferrable(preferrable), taggable(taggable), layout(layout), row(row), preferredCheckBox(0), label(0), labelText(label),
tagComboBox(0), closeButton(0) {
- setEditable(editable);
}
QtVCardGeneralField::~QtVCardGeneralField() {
@@ -54,6 +54,7 @@ void QtVCardGeneralField::initialize() {
tagLabel->hide();
childWidgets << label << tagComboBox << tagLabel << closeButton;
+ setEditable(editable);
}
bool QtVCardGeneralField::isEditable() const {
@@ -61,24 +62,22 @@ bool QtVCardGeneralField::isEditable() const {
}
void QtVCardGeneralField::setEditable(bool editable) {
+ assert(tagComboBox);
+ assert(closeButton);
+
this->editable = editable;
- if (tagComboBox) {
- if (taggable) {
- tagLabel->setText(tagComboBox->itemText(0));
- tagComboBox->setVisible(editable);
- tagLabel->setVisible(!editable);
- } else {
- tagLabel->hide();
- tagComboBox->hide();
- }
+ if (taggable) {
+ tagLabel->setText(tagComboBox->itemText(0));
+ tagComboBox->setVisible(editable);
+ tagLabel->setVisible(!editable);
+ } else {
+ tagLabel->hide();
+ tagComboBox->hide();
}
- if (closeButton) closeButton->setVisible(editable);
- if (preferredCheckBox) {
- if (editable) {
- preferredCheckBox->show();
- } else if (!preferredCheckBox->isChecked()) {
- preferredCheckBox->hide();
- }
+ closeButton->setVisible(editable);
+ if (preferrable) {
+ assert(preferredCheckBox);
+ preferredCheckBox->setVisible(editable ? true : preferredCheckBox->isChecked());
preferredCheckBox->setEnabled(editable);
}
editableChanged(this->editable);