svgui  1.9
WindowTypeSelector.h
Go to the documentation of this file.
00001 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*-  vi:set ts=8 sts=4 sw=4: */
00002 
00003 /*
00004     Sonic Visualiser
00005     An audio file viewer and annotation editor.
00006     Centre for Digital Music, Queen Mary, University of London.
00007     This file copyright 2006 Chris Cannam.
00008     
00009     This program is free software; you can redistribute it and/or
00010     modify it under the terms of the GNU General Public License as
00011     published by the Free Software Foundation; either version 2 of the
00012     License, or (at your option) any later version.  See the file
00013     COPYING included with this distribution for more information.
00014 */
00015 
00016 #ifndef _WINDOW_TYPE_SELECTOR_H_
00017 #define _WINDOW_TYPE_SELECTOR_H_
00018 
00019 #include <QFrame>
00020 
00021 #include "base/Window.h"
00022 
00023 class WindowShapePreview;
00024 class QComboBox;
00025 
00026 class WindowTypeSelector : public QFrame
00027 {
00028     Q_OBJECT
00029 
00030 public:
00031     WindowTypeSelector(WindowType defaultType = WindowType(999), // 999 -> get from preferences
00032                        QWidget *parent = 0);
00033     virtual ~WindowTypeSelector();
00034 
00035     WindowType getWindowType() const;
00036 
00037 signals:
00038     void windowTypeChanged(WindowType type);
00039 
00040 public slots:
00041     void setWindowType(WindowType type);
00042 
00043 protected slots:
00044     void windowIndexChanged(int index);
00045 
00046 protected:
00047     QComboBox *m_windowCombo;
00048     WindowShapePreview *m_windowShape;
00049     WindowType *m_windows;
00050     WindowType m_windowType;
00051 };
00052 
00053 #endif