#include #include #include #include #include "AnalogInputView.h" #include "../field/allunits.h" #include "../field/enum.properties.h" AnalogInputView::AnalogInputView(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 Real(parent, id, PRESENT_VALUE, 0.0, tr("Value:"), leftFields, 1); fields[UPDATE_INTERVAL] = new UnsignedInt(parent, id, UPDATE_INTERVAL, 5, tr("Update Interval:"), leftFields, 2); fields[PROFILE_NAME] = new CharString(parent, id, PROFILE_NAME, "", tr("Profile:"), leftFields, 3); fields[UNITS] = new EngineeringUnits(parent, id, UNITS, tr("Units:"), leftFields, 4); fields[MIN_PRES_VALUE] = new Real(parent, id, MIN_PRES_VALUE, tr("Min. Value:"), leftFields, 5); fields[MAX_PRES_VALUE] = new Real(parent, id, MAX_PRES_VALUE, tr("Max. Value:"), leftFields, 6); fields[RESOLUTION] = new Real(parent, id, RESOLUTION, tr("Resolution:"), leftFields, 7); fields[COV_INCREMENT] = new Real(parent, id, COV_INCREMENT, 1.0, tr("COV Increment:"), leftFields, 8); 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[LOW_LIMIT] = new Real(parent, id, LOW_LIMIT, 0, tr("Low Limit:"), rightFields, 5); fields[HIGH_LIMIT] = new Real(parent, id, HIGH_LIMIT, 0, tr("High Limit:"), rightFields, 6); fields[DEADBAND] = new Real(parent, id, DEADBAND, 0, tr("Deadband:"), rightFields, 7); fields[NOTIFICATION_CLASS] = new UnsignedInt(parent, id, NOTIFICATION_CLASS, 0, tr("EV Class:"), rightFields, 8); fields[STATUS_FLAGS] = new BacStatusFlags(parent, id, STATUS_FLAGS, 0, tr("Status Flags")); fields[LIMIT_ENABLE] = new BacLimitEnable(parent, id, LIMIT_ENABLE, 0, tr("Limits Enabled")); 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()); flagsFields->addWidget(fields[LIMIT_ENABLE]->Input()); DBLoad(); Draw(); } void AnalogInputView::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); }