Audacity  3.0.3
TracksPrefs.h
Go to the documentation of this file.
1 /**********************************************************************
2 
3  Audacity: A Digital Audio Editor
4 
5  TracksPrefs.h
6 
7  Brian Gunlogson
8  Joshua Haberman
9  James Crook
10 
11 **********************************************************************/
12 
13 #ifndef __AUDACITY_TRACKS_PREFS__
14 #define __AUDACITY_TRACKS_PREFS__
15 
16 //#include <wx/defs.h>
17 
18 #include <vector>
19 #include "PrefsPanel.h"
20 #include "../tracks/playabletrack/wavetrack/ui/WaveTrackViewConstants.h"
21 #include "WaveformSettings.h" // for ScaleTypeValues
22 
23 class ShuttleGui;
24 
25 #define TRACKS_PREFS_PLUGIN_SYMBOL ComponentInterfaceSymbol{ XO("Tracks") }
26 
27 class AUDACITY_DLL_API TracksPrefs final : public PrefsPanel
28 {
29  public:
30  TracksPrefs(wxWindow * parent, wxWindowID winid);
31  ~TracksPrefs();
34 
35  bool Commit() override;
36  ManualPageID HelpPageName() override;
37 
38  static bool GetPinnedHeadPreference();
39  static void SetPinnedHeadPreference(bool value, bool flush = false);
40 
41  static double GetPinnedHeadPositionPreference();
42  static void SetPinnedHeadPositionPreference(double value, bool flush = false);
43 
44  static wxString GetDefaultAudioTrackNamePreference();
45 
46  static WaveTrackViewConstants::Display ViewModeChoice();
47  static WaveformSettings::ScaleTypeValues WaveformScaleChoice();
48  static WaveTrackViewConstants::SampleDisplay SampleViewChoice();
49  static WaveTrackViewConstants::ZoomPresets Zoom1Choice();
50  static WaveTrackViewConstants::ZoomPresets Zoom2Choice();
51 
52  private:
53  void Populate();
54  void PopulateOrExchange(ShuttleGui & S) override;
55 
56  static int iPreferencePinned;
57 };
58 
59 #endif
TranslatableString
Holds a msgid for the translation catalog; may also bind format arguments.
Definition: TranslatableString.h:32
ComponentInterface::GetSymbol
virtual ComponentInterfaceSymbol GetSymbol()=0
WaveformSettings::ScaleTypeValues
ScaleTypeValues
Definition: WaveformSettings.h:58
PrefsPanel.h
PrefsPanel::HelpPageName
virtual ManualPageID HelpPageName()
If not empty string, the Help button is added below the panel.
Definition: PrefsPanel.cpp:98
PrefsPanel::PopulateOrExchange
virtual void PopulateOrExchange(ShuttleGui &WXUNUSED(S))
Definition: PrefsPanel.h:116
TracksPrefs::iPreferencePinned
static int iPreferencePinned
Definition: TracksPrefs.h:56
WaveTrackViewConstants::Display
Display
Definition: WaveTrackViewConstants.h:18
ComponentInterfaceSymbol
ComponentInterfaceSymbol pairs a persistent string identifier used internally with an optional,...
Definition: ComponentInterfaceSymbol.h:27
PrefsPanel::Commit
virtual bool Commit()=0
WaveformSettings.h
ComponentInterface::GetDescription
virtual TranslatableString GetDescription()=0
WaveTrackViewConstants::SampleDisplay
SampleDisplay
Definition: WaveTrackViewConstants.h:45
TracksPrefs
A PrefsPanel for track display and behavior properties.
Definition: TracksPrefs.h:28
TaggedIdentifier< ManualPageIDTag >
WaveTrackViewConstants::ZoomPresets
ZoomPresets
Definition: WaveTrackViewConstants.h:51
PrefsPanel
Base class for a panel in the PrefsDialog. Classes derived from this class include BatchPrefs,...
Definition: PrefsPanel.h:51
ShuttleGui
Derived from ShuttleGuiBase, an Audacity specific class for shuttling data to and from GUI.
Definition: ShuttleGui.h:631