- tms-old
- tms
- tmsControlGui
- BQComboBox.cpp
This file ( 2kB ) exceeds the allowed full mode (48 kb) size.
The editor full hight is disabled, only scrolling is allowed..
If you wish to edit a file, it is recommended to use the scroll mode as some users do not like the full height
mode, although some users like it.
/*
* Title: BQComboBox.cpp
* Author: M.Thomas BEAM Ltd
* Date: 2005-10-27
*
* Contents: Qt combo box that can be setup from a struct. Additionally support a signal
* passing the object.
*/
#include <BQComboBox.h>
BQComboBox::BQComboBox(QWidget* parent, const char* name, WFlags fl) : QComboBox(parent,name) {
oid = 0;
connect(this,SIGNAL(activated(int)),this, SLOT(activated(int)));
};
BQComboBox::BQComboBox(ComboDefinition* comboDef,QWidget* parent, const char* name, WFlags fl) : QComboBox(parent,name) {
oid = 0;
connect(this,SIGNAL(activated(int)),this, SLOT(activated(int)));
initWithDefinition(comboDef);
};
BQComboBox::~BQComboBox() {}
void BQComboBox::setId(int id) {
oid = id;
}
void BQComboBox::initWithDefinition(ComboDefinition* comboDef) {
ComboDefinition* d = comboDef;
odefinition = comboDef;
while (d->label != 0) {
insertItem(d->label);
d++;
}
d = comboDef;
while (d->label != 0) {
if (d->isDefault) {
setCurrentItem(d->index);
break;
}
d++;
}
}
void BQComboBox::setValue(double val) {
ComboDefinition* d = odefinition;
while (d->label != 0) {
if ( val == d->value) {
setCurrentItem(d->index);
break;
}
d++;
}
}
double BQComboBox::getDefault() {
ComboDefinition* d = odefinition;
double ret = d->value;
while (d->label != 0) {
if (d->isDefault) {
return d->value;
}
d++;
}
return ret;
}
double BQComboBox::getValue() {
ComboDefinition* d = odefinition;
while (d->index != currentItem() && (d->label != 0)) {
d++;
}
if ( d->label == 0x00)
return 0x00;
return d->value;
}
void BQComboBox::activated(int val) {
emit activated(this,oid,val);
}