#include #include #include #include #include "MultInputView.h" #include "../field/allunits.h" #include "../field/enum.properties.h" MultInputView::MultInputView(QWidget *parent, QSqlDatabase *dbh, int id, QString name, int type, int num) : ObjectView(parent, dbh, id, name, type, num) { leftFields = new QGridLayout(NULL); rightFields = new QGridLayout(NULL); flagsFields = new QHBoxLayout(NULL); // Assign default values fields[OBJECT_NAME] = new CharString(parent, id, OBJECT_NAME, name, tr("Name:"), leftFields, 0); fields[PRESENT_VALUE] = new UnsignedInt(parent, id, PRESENT_VALUE, 0, tr("Value:"), leftFields, 1); fields[PROFILE_NAME] = new CharString(parent, id, PROFILE_NAME, "", tr("Profile:"), leftFields, 2); fields[STATE_TEXT] = new MultStateList(parent, id, tr("States:"), leftFields, 3); fields[OUT_OF_SERVICE] = new Bool(parent, id, OUT_OF_SERVICE, 0, tr("Out of Service"), rightFields, 0); fields[DEVICE_TYPE] = new CharString(parent, id, DEVICE_TYPE, "Thermister", tr("Type:"), rightFields, 1); fields[NOTIFY_TYPE] = new BacNotifyType(parent, id, NOTIFY_TYPE, 0, tr("Notify Type:"), rightFields, 2); fields[EVENT_STATE] = new BacEventState(parent, id, EVENT_STATE, 0, tr("Event State:"), rightFields, 3); fields[RELIABILITY] = new BacReliability(parent, id, RELIABILITY, 0, tr("Reliability:"), rightFields, 4); fields[NOTIFICATION_CLASS] = new UnsignedInt(parent, id, NOTIFICATION_CLASS, 0, tr("EV Class:"), rightFields, 5); fields[STATUS_FLAGS] = new BacStatusFlags(parent, id, STATUS_FLAGS, 0, tr("Status Flags")); fields[EVENT_ENABLE] = new BacEventTransition(parent, id, EVENT_ENABLE, 0, tr("Events Enabled")); fields[ACKED_TRANSITIONS] = new BacEventTransition(parent, id, ACKED_TRANSITIONS, 0, tr("ACK'd Transitions")); fields[DESCRIPTION] = new BigCharString(parent, id, DESCRIPTION, "", tr("Description")); fields[EVENT_TIME_STAMPS] = new TimeStampTriplet(parent, id, EVENT_TIME_STAMPS, "", tr("Last Event Times")); flagsFields->addWidget(fields[STATUS_FLAGS]->Input()); flagsFields->addWidget(fields[EVENT_ENABLE]->Input()); flagsFields->addWidget(fields[ACKED_TRANSITIONS]->Input()); DBLoad(); Draw(); } void MultInputView::Draw() { // Place everything mainLayout = new QGridLayout(this); mainLayout->addLayout(leftFields, 0, 0); mainLayout->addLayout(rightFields, 0, 1); mainLayout->addLayout(flagsFields, 1, 0, 1, 2); mainLayout->addWidget(fields[EVENT_TIME_STAMPS]->Input(), 2, 0, 1, 2); mainLayout->addWidget(fields[DESCRIPTION]->Label(), 3, 0, 1, 2); mainLayout->addWidget(fields[DESCRIPTION]->Input(), 4, 0, 1, 2); }