annotate main/PreferencesDialog.h @ 906:fbd2534d17f8

Add option to toggle H:M:S time display (when off, just show seconds even when more than 60)
author Chris Cannam
date Wed, 18 Feb 2015 12:08:17 +0000
parents c7945dad2f49
children a16456ca5e71
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@906 60 void showHMSChanged(int state);
Chris@702 61 void octaveSystemChanged(int system);
Chris@225 62 void viewFontSizeChanged(int sz);
Chris@237 63 void showSplashChanged(int state);
Chris@436 64 void defaultTemplateChanged(int);
Chris@658 65 void localeChanged(int);
Chris@686 66 void networkPermissionChanged(int state);
Chris@180 67
Chris@180 68 void tempDirButtonClicked();
Chris@0 69
Chris@0 70 void okClicked();
Chris@0 71 void applyClicked();
Chris@0 72 void cancelClicked();
Chris@0 73
Chris@0 74 protected:
Chris@9 75 WindowTypeSelector *m_windowTypeSelector;
Chris@0 76 QPushButton *m_applyButton;
Chris@180 77
Chris@436 78 QTabWidget *m_tabs;
Chris@436 79 QMap<Tab, int> m_tabOrdering;
Chris@436 80
Chris@180 81 QLineEdit *m_tempDirRootEdit;
Chris@436 82
Chris@436 83 QString m_currentTemplate;
Chris@436 84 QStringList m_templates;
Chris@658 85
Chris@658 86 QString m_currentLocale;
Chris@658 87 QStringList m_locales;
Chris@0 88
Chris@9 89 WindowType m_windowType;
Chris@180 90 int m_spectrogramSmoothing;
Chris@299 91 int m_spectrogramXSmoothing;
Chris@180 92 int m_propertyLayout;
Chris@0 93 float m_tuningFrequency;
Chris@263 94 int m_audioDevice;
Chris@180 95 int m_resampleQuality;
Chris@180 96 bool m_resampleOnLoad;
Chris@686 97 bool m_networkPermission;
Chris@180 98 QString m_tempDirRoot;
Chris@180 99 int m_backgroundMode;
Chris@337 100 int m_timeToTextMode;
Chris@906 101 bool m_showHMS;
Chris@702 102 int m_octaveSystem;
Chris@225 103 int m_viewFontSize;
Chris@237 104 bool m_showSplash;
Chris@180 105
Chris@180 106 bool m_changesOnRestart;
Chris@0 107 };
Chris@0 108
Chris@0 109 #endif