1 #include "DoubleSpinBoxControl.h" 2 3 namespace ADM_qtScript 4 { DoubleSpinBoxControl(const QString & title,double minValue,double maxValue,double value,int decimals)5 DoubleSpinBoxControl::DoubleSpinBoxControl(const QString& title, double minValue, double maxValue, double value, int decimals) 6 { 7 this->_title = title; 8 this->_minValue = minValue; 9 this->_maxValue = maxValue; 10 this->_value = value; 11 this->_decimals = decimals; 12 } 13 constructor(QScriptContext * context,QScriptEngine * engine)14 QScriptValue DoubleSpinBoxControl::constructor(QScriptContext *context, QScriptEngine *engine) 15 { 16 if (context->isCalledAsConstructor()) 17 { 18 if (context->argumentCount() == 3 && context->argument(0).isString() && context->argument(1).isNumber() && context->argument(2).isNumber()) 19 { 20 return engine->newQObject(new DoubleSpinBoxControl( 21 context->argument(0).toString(), context->argument(1).toNumber(), context->argument(2).toNumber()), QScriptEngine::ScriptOwnership); 22 } 23 else if (context->argumentCount() == 4 && context->argument(0).isString() && context->argument(1).isNumber() && context->argument(2).isNumber() && 24 context->argument(3).isNumber()) 25 { 26 return engine->newQObject(new DoubleSpinBoxControl( 27 context->argument(0).toString(), context->argument(1).toNumber(), context->argument(2).toNumber(), context->argument(3).toNumber()), 28 QScriptEngine::ScriptOwnership); 29 } 30 else 31 { 32 return context->throwError("Invalid arguments passed to constructor"); 33 } 34 } 35 36 return engine->undefinedValue(); 37 } 38 createControl(void)39 diaElem* DoubleSpinBoxControl::createControl(void) 40 { 41 return new diaElemFloat(&this->_value, this->_title.toUtf8().constData(), this->_minValue, this->_maxValue, NULL, this->_decimals); 42 } 43 getDecimals()44 int DoubleSpinBoxControl::getDecimals() 45 { 46 return this->_decimals; 47 } 48 getMinimumValue()49 double DoubleSpinBoxControl::getMinimumValue() 50 { 51 return this->_minValue; 52 } 53 getMaximumValue()54 double DoubleSpinBoxControl::getMaximumValue() 55 { 56 return this->_maxValue; 57 } 58 getTitle()59 const QString& DoubleSpinBoxControl::getTitle() 60 { 61 return this->_title; 62 } 63 getValue()64 double DoubleSpinBoxControl::getValue() 65 { 66 return this->_value; 67 } 68 setDecimals(int decimals)69 void DoubleSpinBoxControl::setDecimals(int decimals) 70 { 71 this->_decimals = decimals; 72 } 73 setMaximumValue(double value)74 void DoubleSpinBoxControl::setMaximumValue(double value) 75 { 76 this->_maxValue = value; 77 } 78 setMinimumValue(double value)79 void DoubleSpinBoxControl::setMinimumValue(double value) 80 { 81 this->_minValue = value; 82 } 83 setTitle(const QString & title)84 void DoubleSpinBoxControl::setTitle(const QString& title) 85 { 86 this->_title = title; 87 } 88 setValue(double value)89 void DoubleSpinBoxControl::setValue(double value) 90 { 91 this->_value = value; 92 } 93 }