annotate main/PreferencesDialog.h @ 719:35f1af908dcb

Avoid potential crash when network connection fails
author Chris Cannam
date Tue, 13 May 2014 09:50:59 +0100
parents c7945dad2f49
children fbd2534d17f8
rev   line source
Chris@0 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@0 2
Chris@0 3 /*
Chris@0 4 Sonic Visualiser
Chris@0 5 An audio file viewer and annotation editor.
Chris@0 6 Centre for Digital Music, Queen Mary, University of London.
Chris@0 7 This file copyright 2006 Chris Cannam.
Chris@0 8
Chris@0 9 This program is free software; you can redistribute it and/or
Chris@0 10 modify it under the terms of the GNU General Public License as
Chris@0 11 published by the Free Software Foundation; either version 2 of the
Chris@0 12 License, or (at your option) any later version. See the file
Chris@0 13 COPYING included with this distribution for more information.
Chris@0 14 */
Chris@0 15
Chris@0 16 #ifndef _PREFERENCES_DIALOG_H_
Chris@0 17 #define _PREFERENCES_DIALOG_H_
Chris@0 18
Chris@0 19 #include <QDialog>
Chris@436 20 #include <QMap>
Chris@0 21
Chris@0 22 #include "base/Window.h"
Chris@0 23
Chris@9 24 class WindowTypeSelector;
Chris@0 25 class QPushButton;
Chris@180 26 class QLineEdit;
Chris@436 27 class QTabWidget;
Chris@0 28
Chris@0 29 class PreferencesDialog : public QDialog
Chris@0 30 {
Chris@0 31 Q_OBJECT
Chris@0 32
Chris@0 33 public:
Chris@528 34 PreferencesDialog(QWidget *parent = 0);
Chris@9 35 virtual ~PreferencesDialog();
Chris@0 36
Chris@436 37 enum Tab {
Chris@436 38 GeneralTab,
Chris@436 39 AppearanceTab,
Chris@436 40 AnalysisTab,
Chris@436 41 TemplateTab
Chris@436 42 };
Chris@436 43 void switchToTab(Tab tab);
Chris@436 44
Chris@163 45 public slots:
Chris@163 46 void applicationClosing(bool quickly);
Chris@163 47
Chris@0 48 protected slots:
Chris@9 49 void windowTypeChanged(WindowType type);
Chris@115 50 void spectrogramSmoothingChanged(int state);
Chris@299 51 void spectrogramXSmoothingChanged(int state);
Chris@0 52 void propertyLayoutChanged(int layout);
Chris@0 53 void tuningFrequencyChanged(double freq);
Chris@263 54 void audioDeviceChanged(int device);
Chris@32 55 void resampleQualityChanged(int quality);
Chris@180 56 void resampleOnLoadChanged(int state);
Chris@180 57 void tempDirRootChanged(QString root);
Chris@180 58 void backgroundModeChanged(int mode);
Chris@337 59 void timeToTextModeChanged(int mode);
Chris@702 60 void octaveSystemChanged(int system);
Chris@225 61 void viewFontSizeChanged(int sz);
Chris@237 62 void showSplashChanged(int state);
Chris@436 63 void defaultTemplateChanged(int);
Chris@658 64 void localeChanged(int);
Chris@686 65 void networkPermissionChanged(int state);
Chris@180 66
Chris@180 67 void tempDirButtonClicked();
Chris@0 68
Chris@0 69 void okClicked();
Chris@0 70 void applyClicked();
Chris@0 71 void cancelClicked();
Chris@0 72
Chris@0 73 protected:
Chris@9 74 WindowTypeSelector *m_windowTypeSelector;
Chris@0 75 QPushButton *m_applyButton;
Chris@180 76
Chris@436 77 QTabWidget *m_tabs;
Chris@436 78 QMap<Tab, int> m_tabOrdering;
Chris@436 79
Chris@180 80 QLineEdit *m_tempDirRootEdit;
Chris@436 81
Chris@436 82 QString m_currentTemplate;
Chris@436 83 QStringList m_templates;
Chris@658 84
Chris@658 85 QString m_currentLocale;
Chris@658 86 QStringList m_locales;
Chris@0 87
Chris@9 88 WindowType m_windowType;
Chris@180 89 int m_spectrogramSmoothing;
Chris@299 90 int m_spectrogramXSmoothing;
Chris@180 91 int m_propertyLayout;
Chris@0 92 float m_tuningFrequency;
Chris@263 93 int m_audioDevice;
Chris@180 94 int m_resampleQuality;
Chris@180 95 bool m_resampleOnLoad;
Chris@686 96 bool m_networkPermission;
Chris@180 97 QString m_tempDirRoot;
Chris@180 98 int m_backgroundMode;
Chris@337 99 int m_timeToTextMode;
Chris@702 100 int m_octaveSystem;
Chris@225 101 int m_viewFontSize;
Chris@237 102 bool m_showSplash;
Chris@180 103
Chris@180 104 bool m_changesOnRestart;
Chris@0 105 };
Chris@0 106
Chris@0 107 #endif