Editor for sensor units. More...
#include <projecteditor.h>
Public Member Functions | |
SensorUnitEditor (QWidget *parent=0) | |
virtual bool | isDirty () const |
Protected Slots | |
void | onAddButtonPress () |
virtual void | updateButtons () |
virtual void | onNewButtonPress () |
virtual void | onSubmitButtonPress () |
virtual void | onUndoButtonPress () |
Editor for sensor units.
SensorUnitEditor::SensorUnitEditor | ( | QWidget * | parent = 0 |
) | [inline] |
: BaseEditor(parent) { setObjectName("SensorUnitEditor"); setWindowTitle("Sensor unit editor"); m_model = new SqlQueryModel(this); m_model->setQuery(Database::execStatic("SELECT unit_name || ' (' || unit_symbol || ')' " "FROM tbl_sensor_units " "INNER JOIN tbl_units USING (unit_id) ORDER BY 1")); m_view = new QListView(this); m_view->setModel(m_model); m_view->setSelectionMode(QAbstractItemView::NoSelection); // button setup QVBoxLayout *buttonLayout = new QVBoxLayout(); buttonLayout->addWidget(button(BaseEditor::ButtonAdd)); buttonLayout->addStretch(); buttonLayout->addWidget(button(BaseEditor::ButtonClose)); mainLayout()->addWidget(m_view, 0, 0, 1, 1); mainLayout()->addLayout(buttonLayout, 0, 1, 2, 1); connect(button(BaseEditor::ButtonAdd), SIGNAL(clicked()), this, SLOT(onAddButtonPress())); }
virtual bool SensorUnitEditor::isDirty | ( | ) | const [inline, virtual] |
Implements BaseEditor.
{return false;}
void SensorUnitEditor::onAddButtonPress | ( | ) | [inline, protected, slot] |
Referenced by SensorUnitEditor().
{ QSqlQueryModel model; model.setQuery(Database::execStatic("SELECT unit_name || ' (' || unit_symbol || ')', unit_id " "FROM " " ( " " SELECT unit_id FROM tbl_units " " EXCEPT " " SELECT unit_id FROM tbl_sensor_units " " ) " "AS e INNER JOIN tbl_units USING (unit_id) ORDER BY 1")); SimpleViewSelectionDialog d("Unit selector", &model, this); if (d.exec()){ int row = d.selection().row(); bool ok; int unit_id = model.index(row, 1).data(Qt::DisplayRole).toInt(&ok); Q_ASSERT(ok); Q_ASSERT(unit_id != 0); Q_ASSERT(unit_id != -1); Database::execStatic("INSERT INTO tbl_sensor_units VALUES (" + QString::number(unit_id) + ")"); m_model->reQuery(); } }
virtual void SensorUnitEditor::onNewButtonPress | ( | ) | [inline, protected, virtual, slot] |
Implements BaseEditor.
{};
virtual void SensorUnitEditor::onSubmitButtonPress | ( | ) | [inline, protected, virtual, slot] |
Implements BaseEditor.
{};
virtual void SensorUnitEditor::onUndoButtonPress | ( | ) | [inline, protected, virtual, slot] |
Implements BaseEditor.
{};
virtual void SensorUnitEditor::updateButtons | ( | ) | [inline, protected, virtual, slot] |
Implements BaseEditor.
{};