X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fdrawingview.cpp;h=99c4da9f2779054f5edbb6e607ee4e4f8f44371e;hb=8d80165e3ab9173b8689b3b3420b40bf3020161f;hp=58e0979495b3794d2df175ced51453ac6b6a912b;hpb=f507d97c1b1118834a70332f5f79d8479a6964c0;p=architektonas diff --git a/src/drawingview.cpp b/src/drawingview.cpp index 58e0979..99c4da9 100644 --- a/src/drawingview.cpp +++ b/src/drawingview.cpp @@ -45,7 +45,7 @@ DrawingView::DrawingView(QWidget * parent/*= NULL*/): QWidget(parent), // The value in the settings file will override this. - useAntialiasing(true), + useAntialiasing(true), numSelected(0), gridBackground(BACKGROUND_MAX_SIZE, BACKGROUND_MAX_SIZE), scale(1.0), offsetX(-10), offsetY(-10),// document(Vector(0, 0)), gridPixels(0), collided(false)//, toolAction(NULL) @@ -90,7 +90,7 @@ DrawingView::DrawingView(QWidget * parent/*= NULL*/): QWidget(parent), document.objects.push_back(new Arc(Vector(300, 300), 32, PI / 4.0, PI * 1.3)), document.objects.push_back(new Arc(Vector(200, 200), 60, PI / 2.0, PI * 1.5)); document.objects.push_back(new Dimension(Vector(50, 40), Vector(5, 5))); - document.objects.push_back(new Text(Vector(10, 83), "Tyegxt!")); + document.objects.push_back(new Text(Vector(10, 83), "Here is some awesome text!")); #endif /* @@ -511,10 +511,7 @@ void DrawingView::RenderObjects(Painter * painter, Container * c) case OTText: { Text * t = (Text *)obj; - - for(float angle=0; angle<(PI*3.0/2.0); angle+=PI/8.0) - painter->DrawTextObject(t->p1, t->s.c_str(), scaledThickness, angle); - + painter->DrawTextObject(t->p1, t->s.c_str(), scaledThickness); break; } default: @@ -524,6 +521,25 @@ void DrawingView::RenderObjects(Painter * painter, Container * c) } +void DrawingView::DeleteSelectedItems(void) +{ + std::vector::iterator i = document.objects.begin(); + + while (i != document.objects.end()) + { + Object * obj = (Object *)(*i); + + if (obj->selected) + { + delete obj; + document.objects.erase(i); + } + else + i++; + } +} + + void DrawingView::resizeEvent(QResizeEvent * /*event*/) { Global::screenSize = Vector(size().width(), size().height()); @@ -625,6 +641,7 @@ void DrawingView::mouseMoveEvent(QMouseEvent * event) { std::vector::iterator i; // QRectF bounds; + numSelected = 0; for(i=document.objects.begin(); i!=document.objects.end(); i++) { @@ -720,6 +737,9 @@ void DrawingView::mouseMoveEvent(QMouseEvent * event) default: break; } + + if (obj->selected) + numSelected++; } }