#include "painter.h"
#include "rotateaction.h"
#include "settingsdialog.h"
+#include "trimaction.h"
// Class variables
dock2->setObjectName("Blocks");
// Create status bar
- zoomIndicator = new QLabel("Grid: 12.0\" Zoom: 12.5%");
+ zoomIndicator = new QLabel("Grid: 12.0\" BU: Inch");
statusBar()->addPermanentWidget(zoomIndicator);
statusBar()->showMessage(tr("Ready"));
{
QString filename = QFileDialog::getOpenFileName(this, tr("Open Drawing"),
"", tr("Architektonas files (*.drawing)"));
+
+ // User cancelled open
+ if (filename.isEmpty())
+ return;
+
FILE * file = fopen(filename.toAscii().data(), "r");
if (file == 0)
}
+void ApplicationWindow::TrimTool(void)
+{
+ ClearUIToolStatesExcept(trimAct);
+ SetInternalToolStates();
+}
+
+
void ApplicationWindow::AddLineTool(void)
{
ClearUIToolStatesExcept(addLineAct);
if (exception != mirrorAct)
mirrorAct->setChecked(false);
+
+ if (exception != trimAct)
+ trimAct->setChecked(false);
}
drawing->SetToolActive(addDimensionAct->isChecked() ? new DrawDimensionAction() : NULL);
drawing->SetToolActive(mirrorAct->isChecked() ? new MirrorAction() : NULL);
drawing->SetToolActive(rotateAct->isChecked() ? new RotateAction() : NULL);
+ drawing->SetToolActive(trimAct->isChecked() ? new TrimAction() : NULL);
if (drawing->toolAction)
Object::ignoreClicks = true;
mirrorAct = CreateAction(tr("&Mirror"), tr("Mirror"), tr("Mirror selected objects around a line."), QIcon(":/res/mirror-tool.png"), QKeySequence("m,i"), true);
connect(mirrorAct, SIGNAL(triggered()), this, SLOT(MirrorTool()));
+ trimAct = CreateAction(tr("&Trim"), tr("Trim"), tr("Trim extraneous lines from selected objects."), QIcon(":/res/trim-tool.png"), QKeySequence("t,r"), true);
+ connect(trimAct, SIGNAL(triggered()), this, SLOT(TrimTool()));
+
//Hm. I think we'll have to have separate logic to do the "Radio Group Toolbar" thing...
// Yup, in order to turn them off, we'd have to have an "OFF" toolbar button. Ick.
menu->addAction(fixLengthAct);
menu->addAction(rotateAct);
menu->addAction(mirrorAct);
+ menu->addAction(trimAct);
menu->addAction(connectAct);
menu->addAction(disconnectAct);
menu->addSeparator();
toolbar->addAction(fixLengthAct);
toolbar->addAction(rotateAct);
toolbar->addAction(mirrorAct);
+ toolbar->addAction(trimAct);
toolbar->addAction(deleteAct);
toolbar->addAction(connectAct);
toolbar->addAction(disconnectAct);