forked from openkylin/bovo
58 lines
1.8 KiB
C++
58 lines
1.8 KiB
C++
/*******************************************************************
|
|
*
|
|
* Copyright 2007 Aron Boström <c02ab@efd.lth.se>
|
|
*
|
|
* Bovo is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; either version 2, or (at your option)
|
|
* any later version.
|
|
*
|
|
* Bovo is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with Bovo; see the file COPYING. If not, write to
|
|
* the Free Software Foundation, 51 Franklin Street, Fifth Floor,
|
|
* Boston, MA 02110-1301, USA.
|
|
*
|
|
********************************************************************/
|
|
|
|
// Declaration include
|
|
#include "view.h"
|
|
|
|
// Qt Includes
|
|
#include <QColor>
|
|
#include <QGraphicsScene>
|
|
#include <QResizeEvent>
|
|
|
|
// Bovo includes
|
|
#include "scene.h"
|
|
|
|
namespace gui {
|
|
|
|
View::View(Scene* scene, const QColor& bgColor, QWidget *parent) : QGraphicsView(scene, parent),
|
|
m_scene(scene) {
|
|
Q_UNUSED(bgColor);
|
|
setFrameStyle(QFrame::NoFrame);
|
|
// setCacheMode(QGraphicsView::CacheBackground);
|
|
setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
|
setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
|
setMinimumSize(sizeHint());
|
|
resize(sizeHint());
|
|
setAlignment(Qt::AlignLeft | Qt::AlignTop);
|
|
}
|
|
|
|
void View::resizeEvent( QResizeEvent* ev ) {
|
|
fitInView(sceneRect(), Qt::KeepAspectRatio);
|
|
QGraphicsView::resizeEvent(ev);
|
|
}
|
|
|
|
QSize View::sizeHint() const {
|
|
return {static_cast<int>(m_scene->width()),
|
|
static_cast<int>(m_scene->height())};
|
|
}
|
|
|
|
} /* namespace gui */
|