summaryrefslogtreecommitdiffstats
path: root/scribus/smspinbox.cpp
diff options
context:
space:
mode:
authorcraig <craig@11d20701-8431-0410-a711-e3c959e3b870>2012-01-01 11:40:09 +0000
committercraig <craig@11d20701-8431-0410-a711-e3c959e3b870>2012-01-01 11:40:09 +0000
commit7ed83b6c6666eb8b6b104c211ae7e52907350372 (patch)
tree4430b556abac0ad660a0aacf1887d77f85d8be02 /scribus/smspinbox.cpp
downloadscribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.gz
scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.xz
scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.zip
Branch 1.3.5 tree to 1.4.x tree, goodbye 1.3.x
git-svn-id: svn://scribus.net/branches/Version14x/Scribus@17163 11d20701-8431-0410-a711-e3c959e3b870
Diffstat (limited to 'scribus/smspinbox.cpp')
-rw-r--r--scribus/smspinbox.cpp83
1 files changed, 83 insertions, 0 deletions
diff --git a/scribus/smspinbox.cpp b/scribus/smspinbox.cpp
new file mode 100644
index 0000000..b0941a7
--- /dev/null
+++ b/scribus/smspinbox.cpp
@@ -0,0 +1,83 @@
+/*
+For general Scribus (>=1.3.2) copyright and licensing information please refer
+to the COPYING file provided with the program. Following this notice may exist
+a copyright and/or license notice that predates the release of Scribus 1.3.2
+for which a new license (GPL+exception) is in place.
+*/
+
+#include "smspinbox.h"
+
+SMSpinBox::SMSpinBox(QWidget *parent)
+: QSpinBox(parent),
+ hasParent_(false),
+ useParentValue_(false),
+ pValue_(0)
+{
+
+}
+
+void SMSpinBox::setValue(int val)
+{
+ disconnect(this, SIGNAL(valueChanged(int)), this, SLOT(slotValueChanged()));
+ hasParent_ = false;
+ pValue_ = 0;
+ setFont(false);
+
+ QSpinBox::setValue(val);
+}
+
+void SMSpinBox::setValue(int val, bool isParentVal)
+{
+ disconnect(this, SIGNAL(valueChanged(int)), this, SLOT(slotValueChanged()));
+ hasParent_ = true;
+ pValue_ = val;
+ setFont(!isParentVal);
+
+ QSpinBox::setValue(val);
+ connect(this, SIGNAL(valueChanged(int)), this, SLOT(slotValueChanged()));
+}
+
+void SMSpinBox::clear()
+{
+ disconnect(this, SIGNAL(valueChanged(int)), this, SLOT(slotValueChanged()));
+ QSpinBox::clear();
+ connect(this, SIGNAL(valueChanged(int)), this, SLOT(slotValueChanged()));
+}
+
+void SMSpinBox::setParentValue(int val)
+{
+ hasParent_ = true;
+ pValue_ = val;
+}
+
+bool SMSpinBox::useParentValue()
+{
+ bool ret = useParentValue_;
+ useParentValue_ = false;
+ return ret;
+}
+
+void SMSpinBox::interpretText()
+{
+// QString t = text();
+// if (hasParent_ && (t == "" || t.isEmpty() || t == QString::null))
+ if (hasParent_ && text().isEmpty())
+ {
+ useParentValue_ = true;
+ setValue(pValue_, true);
+ }
+ QSpinBox::interpretText();
+}
+
+void SMSpinBox::setFont(bool wantBold)
+{
+ QFont f(font());
+ f.setBold(wantBold);
+ QSpinBox::setFont(f);
+}
+
+void SMSpinBox::slotValueChanged()
+{
+ if(hasParent_)
+ setFont(true);
+}