Set a better default size for the visualisation, and make resizing work

This commit is contained in:
David Sansome 2010-06-06 18:17:41 +00:00
parent 1895582eb9
commit 994d6d9c20
3 changed files with 23 additions and 2 deletions

View File

@ -55,7 +55,7 @@ void ProjectMVisualisation::paintGL() {
}
void ProjectMVisualisation::resizeGL(int w, int h) {
projectm_->projectM_resetGL(w, h);
}
void ProjectMVisualisation::ConsumeBuffer(GstBuffer *buffer, GstEnginePipeline*) {

View File

@ -19,6 +19,11 @@
#include "engines/gstengine.h"
#include <QHBoxLayout>
#include <QSettings>
const char* VisualisationContainer::kSettingsGroup = "Visualisations";
const int VisualisationContainer::kDefaultWidth = 828;
const int VisualisationContainer::kDefaultHeight = 512;
VisualisationContainer::VisualisationContainer(QWidget *parent)
: QWidget(parent),
@ -26,13 +31,18 @@ VisualisationContainer::VisualisationContainer(QWidget *parent)
vis_(new ProjectMVisualisation(this))
{
setWindowTitle(tr("Clementine Visualisation"));
resize(512, 512);
QHBoxLayout* layout = new QHBoxLayout(this);
layout->setMargin(0);
layout->setSpacing(0);
layout->addWidget(vis_);
setLayout(layout);
QSettings s;
s.beginGroup(kSettingsGroup);
if (!restoreGeometry(s.value("geometry").toByteArray())) {
resize(kDefaultWidth, kDefaultHeight);
}
}
void VisualisationContainer::SetEngine(GstEngine* engine) {
@ -50,3 +60,9 @@ void VisualisationContainer::hideEvent(QHideEvent*) {
if (engine_)
engine_->RemoveBufferConsumer(vis_);
}
void VisualisationContainer::resizeEvent(QResizeEvent *) {
QSettings s;
s.beginGroup(kSettingsGroup);
s.setValue("geometry", saveGeometry());
}

View File

@ -28,12 +28,17 @@ class VisualisationContainer : public QWidget {
public:
VisualisationContainer(QWidget* parent = 0);
static const char* kSettingsGroup;
static const int kDefaultWidth;
static const int kDefaultHeight;
void SetEngine(GstEngine* engine);
protected:
// QWidget
void showEvent(QShowEvent*);
void hideEvent(QHideEvent*);
void resizeEvent(QResizeEvent *);
private:
GstEngine* engine_;