+ switch(e->button()) {
+ case Qt::LeftButton:
+ stopSelecting(e);
+ break;
+ case Qt::RightButton:
+ // ok so selectedMode and drawing mode should probably be combinded
+ // into a single state variable.
+ if (rubberBand and
+ not rubberBand->isVisible() and
+ selectedCanvasRegion.contains(e->pos())) {
+ displayContextMenu(e->globalPos());
+ }
+ break;
+ default:
+ break;
+ }
+
+}
+
+void SequenceBrowser::startSelecting(QMouseEvent *e)
+{
+ if (!rubberBand)
+ rubberBand = new QRubberBand(QRubberBand::Rectangle, this);
+
+ if (not rubberBand->isVisible()) {
+ bandOrigin = e->pos();
+ rubberBand->setGeometry(QRect(bandOrigin, QSize()));
+ rubberBand->show();
+ }
+}
+
+void SequenceBrowser::stopSelecting(QMouseEvent *e)
+{
+ if (rubberBand and rubberBand->isVisible()) {