]> Shamusworld >> Repos - architektonas/blobdiff - src/actions/actiondrawarc3p.cpp
In the middle of removing Snapper class/fixing snapper rendering...
[architektonas] / src / actions / actiondrawarc3p.cpp
index 77ed90f16def627cc7306b0915142a4d555863c5..46eeb37c57ae3d25990407913f5a476ab455d83c 100644 (file)
@@ -12,6 +12,7 @@
 // Who  When        What
 // ---  ----------  -----------------------------------------------------------
 // JLH  06/03/2010  Added this text. :-)
+// JLH  09/17/2010  Fixed preview/snapper rendering.
 //
 
 #include "actiondrawarc3p.h"
@@ -61,19 +62,19 @@ void ActionDrawArc3P::trigger()
                container->addEntity(arc);
 
                // upd. undo list:
-               if (document != NULL)
+               if (document)
                {
                        document->startUndoCycle();
                        document->addUndoable(arc);
                        document->endUndoCycle();
                }
 
-               deleteSnapper();
-               graphicView->moveRelativeZero(Vector(0.0, 0.0));
-               graphicView->drawEntity(arc);
+//             deleteSnapper();
+//             graphicView->moveRelativeZero(Vector(0.0, 0.0));
+//             graphicView->drawEntity(arc);
                graphicView->moveRelativeZero(arc->getEndpoint());
-               drawSnapper();
-
+//             drawSnapper();
+               graphicView->redraw();
                setStatus(SetPoint1);
                reset();
        }
@@ -88,9 +89,9 @@ void ActionDrawArc3P::preparePreview()
        if (point1.valid && point2.valid && point3.valid)
        {
                Arc arc(NULL, data);
-               bool suc = arc.createFrom3P(point1, point2, point3);
+               bool success = arc.createFrom3P(point1, point2, point3);
 
-               if (suc)
+               if (success)
                        data = arc.getData();
        }
 }
@@ -116,6 +117,8 @@ void ActionDrawArc3P::mouseMoveEvent(QMouseEvent * e)
 //                     clearPreview();
 //                     preview->addEntity(line);
 //                     drawPreview();
+                       graphicView->preview.clear();
+                       graphicView->preview.addEntity(new Line(&(graphicView->preview), LineData(point1, point2)));
                }
                break;
 
@@ -131,12 +134,16 @@ void ActionDrawArc3P::mouseMoveEvent(QMouseEvent * e)
 //                     clearPreview();
 //                     preview->addEntity(arc);
 //                     drawPreview();
+                       graphicView->preview.clear();
+                       graphicView->preview.addEntity(new Arc(&(graphicView->preview), data));
                }
                break;
 
        default:
                break;
        }
+
+       graphicView->redraw();
 }
 
 void ActionDrawArc3P::mouseReleaseEvent(QMouseEvent * e)
@@ -148,9 +155,10 @@ void ActionDrawArc3P::mouseReleaseEvent(QMouseEvent * e)
        }
        else if (e->button() == Qt::RightButton)
        {
-               deletePreview();
-               deleteSnapper();
+//             deletePreview();
+//             deleteSnapper();
                init(getStatus() - 1);
+               graphicView->redraw();
        }
 }