pspinbox.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include "pspinbox.h"
00021
00022 #include <limits.h>
00023
00024 #include <qspinbox.h>
00025 #include <qlayout.h>
00026
00027 namespace PropertyLib{
00028
00029 PSpinBox::PSpinBox(MultiProperty *property, QWidget *parent, const char *name)
00030 :PropertyWidget(property, parent, name)
00031 {
00032 QHBoxLayout *l = new QHBoxLayout(this, 0, 0);
00033 m_edit = new QSpinBox(INT_MIN, INT_MAX, 1, this);
00034 m_edit->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding);
00035 l->addWidget(m_edit);
00036
00037 connect(m_edit, SIGNAL(valueChanged(int)), this, SLOT(updateProperty(int)));
00038 }
00039
00040 PSpinBox::PSpinBox(MultiProperty *property, int minValue, int maxValue, int step, QWidget *parent, const char *name)
00041 :PropertyWidget(property, parent, name)
00042 {
00043 QHBoxLayout *l = new QHBoxLayout(this, 0, 0);
00044 m_edit = new QSpinBox(minValue, maxValue, step, this);
00045 l->addWidget(m_edit);
00046
00047 connect(m_edit, SIGNAL(valueChanged(int)), this, SLOT(updateProperty(int)));
00048 }
00049
00050 QVariant PSpinBox::value() const
00051 {
00052 return QVariant(m_edit->cleanText().toInt());
00053 }
00054
00055 void PSpinBox::setValue(const QVariant &value, bool emitChange)
00056 {
00057 disconnect(m_edit, SIGNAL(valueChanged(int)), this, SLOT(updateProperty(int)));
00058 m_edit->setValue(value.toInt());
00059 connect(m_edit, SIGNAL(valueChanged(int)), this, SLOT(updateProperty(int)));
00060 if (emitChange)
00061 emit propertyChanged(m_property, value);
00062 }
00063
00064 void PSpinBox::updateProperty(int val)
00065 {
00066 emit propertyChanged(m_property, QVariant(val));
00067 }
00068
00069 }
00070
00071 #ifndef PURE_QT
00072 #include "pspinbox.moc"
00073 #endif
This file is part of the documentation for KDevelop Version 3.1.2.