X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fapplicationwindow.cpp;h=71e8a087d5618225543d37438e1e5b8c23986d53;hb=921bf050ffe5fc81a9ab377e634180e659ee5d5d;hp=bf9baf45781fb076e8c9f9c733969f3f5784ba53;hpb=642cf72c11b49a9e00128ab6258a2438c785a5ab;p=architektonas diff --git a/src/applicationwindow.cpp b/src/applicationwindow.cpp index bf9baf4..71e8a08 100644 --- a/src/applicationwindow.cpp +++ b/src/applicationwindow.cpp @@ -40,9 +40,14 @@ #include "layerwidget.h" #include "mirroraction.h" #include "painter.h" +#include "rotateaction.h" #include "settingsdialog.h" +// Class variables +DrawingView * ApplicationWindow::drawing; + + ApplicationWindow::ApplicationWindow(): baseUnitInput(new QLineEdit), dimensionSizeInput(new QLineEdit), @@ -397,7 +402,6 @@ void ApplicationWindow::SetInternalToolStates(void) { Object::SetDeleteActive(deleteAct->isChecked()); Object::SetDimensionActive(addDimensionAct->isChecked()); - drawing->SetRotateToolActive(rotateAct->isChecked()); // We can be sure that if we've come here, then either an active tool is // being deactivated, or a new tool is being created. In either case, the @@ -406,22 +410,20 @@ void ApplicationWindow::SetInternalToolStates(void) { delete drawing->toolAction; drawing->toolAction = NULL; + Object::ignoreClicks = false; } -#if 0 - drawing->SetAddLineToolActive(addLineAct->isChecked()); - drawing->SetAddCircleToolActive(addCircleAct->isChecked()); - drawing->SetAddArcToolActive(addArcAct->isChecked()); - drawing->SetAddDimensionToolActive(addDimensionAct->isChecked()); -#else drawing->SetToolActive(addLineAct->isChecked() ? new DrawLineAction() : NULL); drawing->SetToolActive(addCircleAct->isChecked() ? new DrawCircleAction() : NULL); drawing->SetToolActive(addArcAct->isChecked() ? new DrawArcAction() : NULL); drawing->SetToolActive(addDimensionAct->isChecked() ? new DrawDimensionAction() : NULL); drawing->SetToolActive(mirrorAct->isChecked() ? new MirrorAction() : NULL); -#endif + drawing->SetToolActive(rotateAct->isChecked() ? new RotateAction() : NULL); - update(); + if (drawing->toolAction) + Object::ignoreClicks = true; + + drawing->update(); }