}
+void ApplicationWindow::HandleGridSizeInBaseUnits(QString text)
+{
+ // Parse the text...
+ bool ok;
+ double value = text.toDouble(&ok);
+
+ // Nothing parsable to a double, so quit...
+ if (!ok)
+ return;
+
+ drawing->gridSpacing = value;
+ Painter::zoom = drawing->gridPixels / drawing->gridSpacing;
+ drawing->update();
+}
+
+
void ApplicationWindow::CreateActions(void)
{
exitAct = CreateAction(tr("&Quit"), tr("Quit"), tr("Exits the application."),
toolbar->setObjectName("View");
toolbar->addAction(zoomInAct);
toolbar->addAction(zoomOutAct);
+
QSpinBox * spinbox = new QSpinBox;
toolbar->addWidget(spinbox);
+ QLineEdit * lineedit = new QLineEdit;
+ toolbar->addWidget(lineedit);
toolbar = addToolBar(tr("Edit"));
toolbar->setObjectName("Edit");
spinbox->setRange(4, 256);
spinbox->setValue(12);
+ lineedit->setText("12");
connect(spinbox, SIGNAL(valueChanged(int)), this, SLOT(HandleGridSizeInPixels(int)));
+ connect(lineedit, SIGNAL(textChanged(QString)), this, SLOT(HandleGridSizeInBaseUnits(QString)));
}