OTHER: Fix memleak and fixed small bug in hideEvent handlers

When promoe was minimized or on a different virtual desktop when it was quit,
the visible setting of playlist and equalizer was set to false.
So even when those two were visible before switching to a different desktop
they where set to closed when promoe was started the next time
This commit is contained in:
Thomas Frauendorfer 2008-11-29 16:20:03 +01:00
parent 4df3266088
commit c7e1a7fa6b
8 changed files with 105 additions and 112 deletions

View file

@ -17,13 +17,13 @@
#include "QWidget"
#include <QSettings>
#include <QMoveEvent>
#include "mainwindow.h"
#include "equalizerwidget.h"
EqualizerWindow::EqualizerWindow (QWidget *parent) : BaseWindow (parent)
{
setObjectName ("equalizer");
m_mw = dynamic_cast<MainWindow *>(parent);
setWindowFlags (Qt::Dialog | Qt::FramelessWindowHint);
@ -37,34 +37,8 @@ EqualizerWindow::EqualizerWindow (QWidget *parent) : BaseWindow (parent)
setFixedSize (275, 116);
}
void
EqualizerWindow::hideEvent (QHideEvent *event)
{
QSettings s;
s.setValue ("equalizer/visible", false);
emit visibilityChanged (false);
}
void
EqualizerWindow::showEvent (QShowEvent *event)
{
QSettings s;
s.setValue ("equalizer/visible", true);
m_mw->attachWidgets ();
emit visibilityChanged (true);
}
void
EqualizerWindow::setEnabled (void)
{
qDebug ("test");
}
void
EqualizerWindow::moveEvent (QMoveEvent *event)
{
QSettings s;
s.setValue ("equalizer/pos", pos ());
}

View file

@ -19,10 +19,6 @@
#include "basewindow.h"
class QWidget;
class QMoveEvent;
class QHideEvent;
class QShowEvent;
class MainWindow;
class EqualizerWidget;
@ -33,18 +29,9 @@ class EqualizerWindow : public BaseWindow
EqualizerWindow(QWidget *parent);
~EqualizerWindow() {}
signals:
void visibilityChanged(bool visible);
public slots:
void setEnabled (void);
protected:
void hideEvent (QHideEvent *event);
void showEvent (QShowEvent *event);
void moveEvent(QMoveEvent *event);
private:
MainWindow *m_mw;
EqualizerWidget *m_equalizer;