X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=src%2Fapplicationwindow.cpp;h=f9362ca5967071d34a0202608d9759249c32b759;hb=143b369c0308a8cd524cb0ed51c5d67d6be69603;hp=daae37cf0e4fd61898f1eac1998d1184e7c91922;hpb=70297ac8ec7453e4196f4b58056bcfe4b04f2aca;p=architektonas diff --git a/src/applicationwindow.cpp b/src/applicationwindow.cpp index daae37c..f9362ca 100644 --- a/src/applicationwindow.cpp +++ b/src/applicationwindow.cpp @@ -31,6 +31,10 @@ #include "about.h" #include "blockwidget.h" #include "drawingview.h" +#include "drawarcaction.h" +#include "drawcircleaction.h" +#include "drawdimensionaction.h" +#include "drawlineaction.h" #include "fileio.h" #include "generaltab.h" #include "layerwidget.h" @@ -295,13 +299,16 @@ when zooming in, new origin will be (xCenter - origin.x) / 2, (yCenter - origin. // This just zooms leaving origin intact... should zoom in at the current center! [DONE] // This should actually be calculated by drawing->gridPixels / grid size. Painter::zoom *= zoomFactor; - drawing->gridSpacing = drawing->gridPixels / Painter::zoom; +// drawing->gridSpacing = drawing->gridPixels / Painter::zoom; + Object::gridSpacing = drawing->gridPixels / Painter::zoom; // zoomIndicator->setText(QString("Grid: %2\" Zoom: %1%").arg(Painter::zoom * 100.0 * SCREEN_ZOOM).arg(drawing->gridSpacing)); - zoomIndicator->setText(QString("Grid: %1\", BU: Inch").arg(drawing->gridSpacing)); +// zoomIndicator->setText(QString("Grid: %1\", BU: Inch").arg(drawing->gridSpacing)); + zoomIndicator->setText(QString("Grid: %1\", BU: Inch").arg(Object::gridSpacing)); drawing->UpdateGridBackground(); drawing->update(); - baseUnitInput->setText(QString("%1").arg(drawing->gridSpacing)); +// baseUnitInput->setText(QString("%1").arg(drawing->gridSpacing)); + baseUnitInput->setText(QString("%1").arg(Object::gridSpacing)); } @@ -334,13 +341,16 @@ x 2 = (-426, -301) //printf("Zoom out...\n"); // This just zooms leaving origin intact... should zoom out at the current center! [DONE] Painter::zoom /= zoomFactor; - drawing->gridSpacing = drawing->gridPixels / Painter::zoom; +// drawing->gridSpacing = drawing->gridPixels / Painter::zoom; + Object::gridSpacing = drawing->gridPixels / Painter::zoom; // zoomIndicator->setText(QString("Grid: %2\" Zoom: %1%").arg(Painter::zoom * 100.0 * SCREEN_ZOOM).arg(drawing->gridSpacing)); - zoomIndicator->setText(QString("Grid: %1\", BU: Inch").arg(drawing->gridSpacing)); +// zoomIndicator->setText(QString("Grid: %1\", BU: Inch").arg(drawing->gridSpacing)); + zoomIndicator->setText(QString("Grid: %1\", BU: Inch").arg(Object::gridSpacing)); drawing->UpdateGridBackground(); drawing->update(); - baseUnitInput->setText(QString("%1").arg(drawing->gridSpacing)); +// baseUnitInput->setText(QString("%1").arg(drawing->gridSpacing)); + baseUnitInput->setText(QString("%1").arg(Object::gridSpacing)); } @@ -384,9 +394,19 @@ void ApplicationWindow::SetInternalToolStates(void) drawing->toolAction = NULL; } +#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); +#endif + + update(); } @@ -486,8 +506,10 @@ void ApplicationWindow::HandleGridSizeInBaseUnits(QString text) if (!ok || value == 0) return; - drawing->gridSpacing = value; - Painter::zoom = drawing->gridPixels / drawing->gridSpacing; +// drawing->gridSpacing = value; +// Painter::zoom = drawing->gridPixels / drawing->gridSpacing; + Object::gridSpacing = value; + Painter::zoom = drawing->gridPixels / Object::gridSpacing; drawing->UpdateGridBackground(); drawing->update(); }