26 wxT(
"/GUI/DefaultWaveformScaleChoice");
34 {
wxT(
"Linear"),
XO(
"Linear (amp)") },
35 { dbLogValueString,
XO(
"Logarithmic (dB)") },
36 { dbLinValueString,
XO(
"Linear (dB)") },
74 auto &mutTrack =
const_cast<WaveTrack&
>(track);
84 WaveChannel &channel, std::unique_ptr<WaveformSettings> pSettings)
86 channel.
GetTrack().Attachments::Assign(
key1, move(pSettings));
102 if (
this != &other) {
168 for (
int nn = codes.size(); ii < nn; ++ii) {
170 codes[ii].ToLong(&value);
206 {
wxT(
"Linear"),
XO(
"Linear (amp)") },
207 {
wxT(
"dB"),
XO(
"Logarithmic (dB)") },
208 {
wxT(
"LinearDB"),
XO(
"Linear (dB)") },
215 int* pDefaultRangeIndex)
224 static const std::initializer_list<TranslatableString> sChoices = {
225 XO(
"-36 dB (shallow range for high-amplitude editing)"),
226 XO(
"-48 dB (PCM range of 8 bit samples)"),
227 XO(
"-60 dB (PCM range of 10 bit samples)"),
228 XO(
"-72 dB (PCM range of 12 bit samples)"),
229 XO(
"-84 dB (PCM range of 14 bit samples)"),
230 XO(
"-96 dB (PCM range of 16 bit samples)"),
231 XO(
"-120 dB (approximate limit of human hearing)"),
232 XO(
"-145 dB (PCM range of 24 bit samples)"),
236 *pChoices = sChoices;
238 if (pDefaultRangeIndex)
239 *pDefaultRangeIndex = 2;
248 return std::make_unique<WaveformSettings>(*
this);
IntSetting DecibelScaleCutoff
Negation of this value is the lowest dB level that should be shown in dB scales.
std::vector< TranslatableString > TranslatableStrings
Client code makes static instance from a factory of attachments; passes it to Get or Find as a retrie...
Adapts EnumSettingBase to a particular enumeration type.
bool Read(T *pVar) const
overload of Read returning a boolean that is true if the value was previously defined */
A Track that contains audio waveform data.
Extend wxArrayString with move operations and construction and insertion fromstd::initializer_list.
Owner< Base > PointerType