Chris@139: /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*-  vi:set ts=8 sts=4 sw=4: */
Chris@139: 
Chris@139: /*
Chris@139:     Sonic Visualiser
Chris@139:     An audio file viewer and annotation editor.
Chris@139:     Centre for Digital Music, Queen Mary, University of London.
Chris@139:     This file copyright 2006 Chris Cannam.
Chris@139:     
Chris@139:     This program is free software; you can redistribute it and/or
Chris@139:     modify it under the terms of the GNU General Public License as
Chris@139:     published by the Free Software Foundation; either version 2 of the
Chris@139:     License, or (at your option) any later version.  See the file
Chris@139:     COPYING included with this distribution for more information.
Chris@139: */
Chris@139: 
Chris@1407: #ifndef SV_WINDOW_TYPE_SELECTOR_H
Chris@1407: #define SV_WINDOW_TYPE_SELECTOR_H
Chris@139: 
Chris@139: #include <QFrame>
Chris@139: 
Chris@139: #include "base/Window.h"
Chris@139: 
Chris@139: class WindowShapePreview;
Chris@139: class QComboBox;
Chris@139: 
Chris@139: class WindowTypeSelector : public QFrame
Chris@139: {
Chris@139:     Q_OBJECT
Chris@139: 
Chris@139: public:
Chris@908:     WindowTypeSelector(WindowType defaultType);
Chris@908:     WindowTypeSelector(); // get window type from preferences
Chris@139:     virtual ~WindowTypeSelector();
Chris@139: 
Chris@139:     WindowType getWindowType() const;
Chris@139: 
Chris@139: signals:
Chris@139:     void windowTypeChanged(WindowType type);
Chris@139: 
Chris@139: public slots:
Chris@139:     void setWindowType(WindowType type);
Chris@139: 
Chris@139: protected slots:
Chris@139:     void windowIndexChanged(int index);
Chris@139: 
Chris@139: protected:
Chris@139:     QComboBox *m_windowCombo;
Chris@139:     WindowShapePreview *m_windowShape;
Chris@139:     WindowType *m_windows;
Chris@139:     WindowType m_windowType;
Chris@908: 
Chris@908:     void init(WindowType type);
Chris@139: };
Chris@139: 
Chris@139: #endif