void QG_GraphicView::CommonInitialization(void)
{
setBackground(background);
- buffer = NULL;
+//meh buffer = NULL;
lastWidth = 0;
lastHeight = 0;
//hrm.
painter = NULL;
RS_DEBUG->print("--> Setting up layout...");
- layout = new QGridLayout(this);
+ QGridLayout * layout = new QGridLayout(this);
layout->setColumnStretch(0, 1);
layout->setColumnStretch(1, 0);
layout->setColumnStretch(2, 0);
A non-zero alignment indicates that the widget should not grow to fill the available space but should be sized according to sizeHint().
*/
RS_DEBUG->print("--> Creating hScrollBar...");
- hScrollBar = new QG_ScrollBar(Qt::Horizontal, this);
+// hScrollBar = new QG_ScrollBar(Qt::Horizontal, this);
+ hScrollBar = new QScrollBar(Qt::Horizontal, this);
// hScrollBar->setLineStep(50);
hScrollBar->setSingleStep(50);
// layout->addMultiCellWidget(hScrollBar, 1, 1, 0, 0);
layout->addItem(new QSpacerItem(0, hScrollBar->sizeHint().height()), 1, 0);
RS_DEBUG->print("--> Creating vScrollBar...");
- vScrollBar = new QG_ScrollBar(Qt::Vertical, this);
+// vScrollBar = new QG_ScrollBar(Qt::Vertical, this);
+ vScrollBar = new QScrollBar(Qt::Vertical, this);
// vScrollBar->setLineStep(50);
vScrollBar->setSingleStep(50);
// layout->addMultiCellWidget(vScrollBar, 0, 0, 2, 2);
if (painter)
delete painter;
- if (buffer)
- {
- delete buffer;
- buffer = NULL;
- }
+//meh if (buffer)
+// {
+// delete buffer;
+// buffer = NULL;
+// }
cleanUp();
}
/*
This is retarded. There is absolutely no reason to have this shit in here.
This could be easily called from whoever calls this crap.
+
+And so... We remove it.
*/
+#if 0
// Next three methods from RS_LayerListListener Interface:
void QG_GraphicView::layerEdited(RS_Layer *)
{
{
redraw();
}
+#endif
void QG_GraphicView::emulateMouseMoveEvent()
{
RS_DEBUG->print("QG_GraphicView::adjustOffsetControls() begin");
- if (container == NULL || hScrollBar == NULL || vScrollBar == NULL)
+ if (!container || !hScrollBar || !vScrollBar)
return;
disableUpdate();
}
#endif
-#if 1
//Note that we do drawIt() regardless here because paintEvent() clears the background
//*unless* we create the window with a specific style. Depending on our draw code, we
//just may go that way...
drawIt();
//Need some logic here to do drawing in preview mode, since it'll be calling
//update now instead of trying to do a direct draw...
+#if 0
if (previewMode)
{
//hrm. painter->setCompositionMode(QPainter::CompositionMode_Xor);
// We'll set previewMode to false here, just because we can
previewMode = false;
}
-#endif
-
- if (snapperDraw)
-// if (false)
+#else
+ if (preview.Visible())
{
- snapperDraw = false;
-
- if (snapCoord1.valid)
+ RS_Pen oldPen = painter->getPen();
+ //ick. doesn't work...
+// pntr.setCompositionMode(QPainter::CompositionMode_Xor);
+ // One of these has GOT to work... (but NEITHER do...!)
+ // It's because this is the pen for the container, not the entities INSIDE...
+ // How do we fix that??? [by drawing the container ourselves, that's how. :-/]
+ painter->setPen(RS_Pen(RS_Color(60, 255, 80), RS2::Width00, RS2::SolidLine));
+// preview.setPen(RS_Pen(RS_Color(60, 255, 60), RS2::Width00, RS2::SolidLine));
+ painter->setOffset(preview.Offset());
+//This is green, but in the upper left hand corner...
+//painter->drawLine(Vector(15, 15), Vector(15, -15));
+//painter->drawLine(Vector(15, -15), Vector(-15, -15));
+//painter->drawLine(Vector(-15, -15), Vector(-15, 15));
+//painter->drawLine(Vector(-15, 15), Vector(15, 15));
+// drawEntityPlain(&preview);
+ for(RS_Entity * e=preview.firstEntity(RS2::ResolveNone); e!=NULL;
+ e = preview.nextEntity(RS2::ResolveNone))
{
- // snap point
-//This is causing segfaults in the Qt::Painter code...
-//*This* is causing the segfault!
-//Actually, it looks like buggy painting code in PaintInterface()...
- painter->drawCircle(toGui(snapCoord1), 4);
-
-#if 1
- // crosshairs:
- if (showCrosshairs1 == true)
- {
- painter->setPen(RS_Pen(RS_Color(0, 255, 255), RS2::Width00, RS2::DashLine));
- painter->drawLine(Vector(0, toGuiY(snapCoord1.y)),
- Vector(getWidth(), toGuiY(snapCoord1.y)));
- painter->drawLine(Vector(toGuiX(snapCoord1.x), 0),
- Vector(toGuiX(snapCoord1.x), getHeight()));
- }
-#endif
- }
-#if 1
- if (snapCoord1.valid && snapCoord1 != snapSpot1)
- {
- painter->drawLine(toGui(snapSpot1) + Vector(-5, 0), toGui(snapSpot1) + Vector(-1, 4));
- painter->drawLine(toGui(snapSpot1) + Vector(0, 5), toGui(snapSpot1) + Vector(4, 1));
- painter->drawLine(toGui(snapSpot1) + Vector(5, 0), toGui(snapSpot1) + Vector(1, -4));
- painter->drawLine(toGui(snapSpot1) + Vector(0, -5), toGui(snapSpot1) + Vector(-4, -1));
+// e->setPen(RS_Pen(RS_Color(60, 255, 80), RS2::Width00, RS2::SolidLine));
+ drawEntityPlain(e);
}
-#endif
+ //ick
+// pntr.setCompositionMode(QPainter::CompositionMode_Source);
+ painter->setOffset(Vector(0, 0));
+ painter->setPen(oldPen);
}
+#endif
+
+ if (snapper.Visible())
+ snapper.Draw(this, painter);
delete painter;
painter = NULL;