Audacity 3.2.0
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/WaveChannelViewConstants.h"
21#include "WaveformSettings.h" // for ScaleTypeValues
22
23class ShuttleGui;
24
25#define TRACKS_PREFS_PLUGIN_SYMBOL ComponentInterfaceSymbol{ XO("Tracks") }
26
27class AUDACITY_DLL_API TracksPrefs final : public PrefsPanel
28{
29 public:
31
32 TracksPrefs(wxWindow * parent, wxWindowID winid);
34 ComponentInterfaceSymbol GetSymbol() const override;
35 TranslatableString GetDescription() const override;
36
37 bool Commit() override;
38 ManualPageID HelpPageName() override;
39
40 static bool GetPinnedHeadPreference();
41 static void SetPinnedHeadPreference(bool value, bool flush = false);
42
43 static double GetPinnedHeadPositionPreference();
44 static void SetPinnedHeadPositionPreference(double value, bool flush = false);
45
46 static WaveChannelViewConstants::Display ViewModeChoice();
47 static WaveformSettings::ScaleTypeValues WaveformScaleChoice();
48 static WaveChannelViewConstants::SampleDisplay SampleViewChoice();
49 static WaveChannelViewConstants::ZoomPresets Zoom1Choice();
50 static WaveChannelViewConstants::ZoomPresets Zoom2Choice();
51
52 private:
53 void Populate();
54 void PopulateOrExchange(ShuttleGui & S) override;
55
57};
58
59#endif
#define S(N)
Definition: ToChars.cpp:64
This specialization of Setting for bool adds a Toggle method to negate the saved value.
Definition: Prefs.h:346
virtual ComponentInterfaceSymbol GetSymbol() const =0
virtual TranslatableString GetDescription() const =0
ComponentInterfaceSymbol pairs a persistent string identifier used internally with an optional,...
Base class for a panel in the PrefsDialog. Classes derived from this class include BatchPrefs,...
Definition: PrefsPanel.h:51
virtual ManualPageID HelpPageName()
If not empty string, the Help button is added below the panel.
Definition: PrefsPanel.cpp:60
virtual bool Commit()=0
virtual void PopulateOrExchange(ShuttleGui &WXUNUSED(S))
Definition: PrefsPanel.h:120
Derived from ShuttleGuiBase, an Audacity specific class for shuttling data to and from GUI.
Definition: ShuttleGui.h:640
A PrefsPanel for track display and behavior properties.
Definition: TracksPrefs.h:28
static BoolSetting TracksFitVerticallyZoomed
Definition: TracksPrefs.h:30
static int iPreferencePinned
Definition: TracksPrefs.h:56
Holds a msgid for the translation catalog; may also bind format arguments.