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