-
even authored0546902a
bsidetview.cpp 1.49 KiB
#include <QtGui>
#include <iostream>
#include <cstdlib>
#include "bsidetview.h"
using namespace std;
BSIdetView::BSIdetView (BSDetector *detector)
{
// CAUTION : don't activate antialiasing here !!!
setBackgroundBrush (QBrush (Qt::white));
setScene (new QGraphicsScene (0, 0, 800, 200));
idet = new BSIdetItem (detector);
scene()->addItem (idet);
setWindowTitle (idet->itemTitle ());
resize (QSize (816, 216));
}
BSIdetView::~BSIdetView ()
{
scene()->removeItem (idet);
delete idet;
}
void BSIdetView::paint (QPainter *painter,
const QStyleOptionGraphicsItem *option,
QWidget *widget)
{
Q_UNUSED (option);
Q_UNUSED (widget);
Q_UNUSED (painter);
}
void BSIdetView::setImage (QImage *image, VMap *idata)
{
idet->setImage (image, idata);
}
void BSIdetView::buildScans (Pt2i p1, Pt2i p2)
{
idet->buildScans (p1, p2);
}
bool BSIdetView::processKeyEvent (QKeyEvent *event)
{
switch (event->key ())
{
case Qt::Key_I :
idet->toggleDisplay ((event->modifiers () & Qt::ShiftModifier) == 0);
setWindowTitle (idet->itemTitle ());
idet->update ();
break;
case Qt::Key_Left :
idet->incX (-1);
idet->update ();
break;
case Qt::Key_Right :
idet->incX (1);
idet->update ();
break;
case Qt::Key_Up :
idet->incY (1);
idet->update ();
break;
case Qt::Key_Down :
idet->incY (-1);
idet->update ();
break;
}
return false;
}