void ModulePrefs::PopulateOrExchange(ShuttleGui & S) { wxArrayString StatusChoices; StatusChoices.Add( _("Disabled" ) ); StatusChoices.Add( _("Enabled" ) ); StatusChoices.Add( _("Ask" ) ); StatusChoices.Add( _("Failed" ) ); StatusChoices.Add( _("New" ) ); S.SetBorder(2); S.StartStatic(_("")); { S.AddFixedText(_("These are experimental Modules. Enable them only if you've read the manual\nand know what you are doing.") ); S.AddFixedText(wxString(wxT(" ")) + _("'Ask' means Audacity will ask if you want to load the plug-each time it starts.") ); S.AddFixedText(wxString(wxT(" ")) + _("'Failed' means Audacity thinks the plug-in is broken and won't run it.") ); S.AddFixedText(wxString(wxT(" ")) + _("'New' is like 'Ask', but asks just once.") ); S.StartMultiColumn( 2 ); int i; for(i=0;i<(int)mModules.GetCount();i++) S.TieChoice( mModules[i], mStatuses[i], &StatusChoices ); S.EndMultiColumn(); lse); } S.EndStatic(); }
/// Places controls on the panel and also exchanges data with them. void MousePrefs::PopulateOrExchange(ShuttleGui & S) { S.SetBorder(2); S.StartStatic(_("Mouse Bindings (default values, not configurable)"), 1); { mList = S.AddListControlReportMode(); } S.EndStatic(); }
void FindClippingDialog::PopulateOrExchange(ShuttleGui & S) { S.StartHorizontalLay(wxCENTER, false); { S.AddTitle(_("by Leland Lucius")); } S.EndHorizontalLay(); S.StartHorizontalLay(wxCENTER, false); { // Add a little space } S.EndHorizontalLay(); S.StartMultiColumn(2, wxALIGN_CENTER); { S.TieTextBox(_("Start threshold (samples):"), mEffect->mStart, 10)->SetValidator(wxTextValidator(wxFILTER_NUMERIC)); S.TieTextBox(_("Stop threshold (samples):"), mEffect->mStop, 10)->SetValidator(wxTextValidator(wxFILTER_NUMERIC)); } S.EndMultiColumn(); }
void EchoDialog::PopulateOrExchange(ShuttleGui & S) { S.StartHorizontalLay(wxCENTER, false); { /* i18n-hint: && in here is an escape character to get a single & on * screen, so keep it as is */ S.AddTitle(_("by Dominic Mazzoni && Vaughan Johnson")); } S.EndHorizontalLay(); S.StartHorizontalLay(wxCENTER, false); { // Add a little space } S.EndHorizontalLay(); S.StartMultiColumn(2, wxALIGN_CENTER); { m_pTextCtrl_Delay = S.AddTextBox(_("Delay time (seconds):"), wxT("1.0"), 10); m_pTextCtrl_Delay->SetValidator(wxTextValidator(wxFILTER_NUMERIC)); m_pTextCtrl_Decay = S.AddTextBox(_("Decay factor:"), wxT("0.5"), 10); m_pTextCtrl_Decay->SetValidator(wxTextValidator(wxFILTER_NUMERIC)); } S.EndMultiColumn(); }
void PaulstretchDialog::PopulateOrExchange(ShuttleGui & S){ S.StartHorizontalLay(wxCENTER, false); { S.AddTitle(_("by Nasca Octavian Paul")); } S.EndHorizontalLay(); S.StartHorizontalLay(wxCENTER, false); S.EndHorizontalLay(); S.StartMultiColumn(2, wxALIGN_CENTER); { /* i18n-hint: This is how many times longer the sound will be, e.g. applying * the effect to a 1-second sample, with the default Stretch Factor of 10.0 * will give an (approximately) 10 second sound */ m_pTextCtrl_Amount = S.AddTextBox(_("Stretch Factor:"),wxT("10.0"),10); m_pTextCtrl_Amount->SetValidator(wxTextValidator(wxFILTER_NUMERIC)); m_pTextCtrl_TimeResolution= S.AddTextBox(_("Time Resolution (seconds):"), wxT("0.25"),10); m_pTextCtrl_TimeResolution->SetValidator(wxTextValidator(wxFILTER_NUMERIC)); } S.EndMultiColumn(); };
void GetTrackInfoCommand::PopulateOrExchange(ShuttleGui & S) { wxArrayString types( nTypes, kTypes ); S.AddSpace(0, 5); S.StartMultiColumn(2, wxALIGN_CENTER); { S.TieChoice( _("Types:"), mInfoType, &types); } S.EndMultiColumn(); }
void EffectLeveller::PopulateOrExchange(ShuttleGui & S) { wxASSERT(kNumPasses == WXSIZEOF(kPassStrings)); wxArrayString passChoices; for (int i = 0; i < kNumPasses; i++) { passChoices.Add(wxGetTranslation(kPassStrings[i])); } wxArrayString dBChoices(Enums::NumDbChoices,Enums::GetDbChoices()); S.SetBorder(5); S.StartVerticalLay(); { S.AddSpace(5); S.StartMultiColumn(2, wxALIGN_CENTER); { S.AddChoice(_("Degree of Leveling:"), wxT(""), &passChoices)->SetValidator(wxGenericValidator(&mPassIndex)); S.AddChoice(_("Noise Threshold:"), wxT(""), &dBChoices)->SetValidator(wxGenericValidator(&mDbIndex)); } S.EndMultiColumn(); } S.EndVerticalLay(); return; }
void ExportFFmpegWMAOptions::PopulateOrExchange(ShuttleGui & S) { S.StartHorizontalLay(wxEXPAND, 0); { S.StartStatic(_("WMA Export Setup"), 0); { S.StartTwoColumn(); { S.TieChoice(_("Bit Rate:"), wxT("/FileFormats/WMABitRate"), 180189, mBitRateNames, mBitRateLabels); } S.EndTwoColumn(); } S.EndStatic(); } S.EndHorizontalLay(); S.AddStandardButtons(); Layout(); Fit(); SetMinSize(GetSize()); Center(); return; }
/// Populates simple dialog that has a single tone. void ToneGenDialog::PopulateOrExchangeStandard( ShuttleGui & S ) { S.StartMultiColumn(2, wxCENTER); { S.TieChoice(_("Waveform") + wxString(wxT(":")), waveform, waveforms); S.SetSizeHints(-1, -1); // The added colon to improve visual consistency was placed outside // the translatable strings to avoid breaking translations close to 2.0. // TODO: Make colon part of the translatable string after 2.0. S.TieNumericTextBox(_("Frequency (Hz)") + wxString(wxT(":")), frequency[0], 5); S.TieNumericTextBox(_("Amplitude (0-1)") + wxString(wxT(":")), amplitude[0], 5); S.AddPrompt(_("Duration") + wxString(wxT(":"))); if (mToneDurationT == NULL) { mToneDurationT = new TimeTextCtrl(this, wxID_ANY, wxT(""), mDuration, mEffect->mProjectRate, wxDefaultPosition, wxDefaultSize, true); mToneDurationT->SetName(_("Duration")); mToneDurationT->SetFormatString(mToneDurationT->GetBuiltinFormat(isSelection==true?(_("hh:mm:ss + samples")):(_("seconds")))); mToneDurationT->EnableMenu(); } S.AddWindow(mToneDurationT); } S.EndMultiColumn(); }
void FindClippingDialog::PopulateOrExchange(ShuttleGui & S) { S.StartMultiColumn(2, wxALIGN_CENTER); { S.TieTextBox(_("Start threshold (samples):"), mEffect->mStart, 10)->SetValidator(wxTextValidator(wxFILTER_NUMERIC)); S.TieTextBox(_("Stop threshold (samples):"), mEffect->mStop, 10)->SetValidator(wxTextValidator(wxFILTER_NUMERIC)); } S.EndMultiColumn(); }
void EffectEcho::PopulateOrExchange(ShuttleGui & S) { S.AddSpace(0, 5); S.StartMultiColumn(2, wxALIGN_CENTER); { FloatingPointValidator<double> vldDelay(3, &delay, NUM_VAL_NO_TRAILING_ZEROES); vldDelay.SetRange(MIN_Delay, MAX_Delay); S.AddTextBox(_("Delay time (seconds):"), wxT(""), 10)->SetValidator(vldDelay); FloatingPointValidator<double> vldDecay(3, &decay, NUM_VAL_NO_TRAILING_ZEROES); vldDecay.SetRange(MIN_Decay, MAX_Decay); S.AddTextBox(_("Decay factor:"), wxT(""), 10)->SetValidator(vldDecay); } S.EndMultiColumn(); }
void ExportFFmpegAACOptions::PopulateOrExchange(ShuttleGui & S) { S.StartStatic(_("AAC Export Setup"), 1); { S.TieSlider(wxT("Quality:"),wxT("/FileFormats/AACQuality"),100,500,10); } S.EndStatic(); S.AddStandardButtons(); Layout(); Fit(); SetMinSize(GetSize()); Center(); return; }
void NoiseDialog::PopulateOrExchange( ShuttleGui & S ) { S.StartMultiColumn(2, wxCENTER); { S.AddFixedText(_("Duration"), false); if (mNoiseDurationT == NULL) { mNoiseDurationT = new TimeTextCtrl(this, wxID_ANY, wxT(""), nDuration, 44100, wxDefaultPosition, wxDefaultSize, true); /* use this instead of "seconds" because if a selection is passed to * the effect, I want it (nDuration) to be used as the duration, and * with "seconds" this does not always work properly. For example, * it rounds down to zero... */ mNoiseDurationT->SetFormatString(mNoiseDurationT->GetBuiltinFormat(nIsSelection==true?(wxT("hh:mm:ss + samples")):(wxT("seconds")))); mNoiseDurationT->EnableMenu(); } S.AddWindow(mNoiseDurationT); S.TieTextBox(_("Amplitude (0-1)"), nAmplitude, 10); S.TieChoice(_("Noise type"), nType, nTypeList); S.SetSizeHints(-1, -1); } S.EndMultiColumn(); }
void TimeDialog::PopulateOrExchange(ShuttleGui &S) { S.SetBorder(5); S.StartVerticalLay(true); { S.StartStatic(mPrompt, true); { mTimeCtrl = new TimeTextCtrl(this, wxID_ANY, wxT(""), mTime, mRate, wxDefaultPosition, wxDefaultSize, true); mTimeCtrl->SetName(mPrompt); mTimeCtrl->SetFormatString(mTimeCtrl->GetBuiltinFormat(mFormat)); S.AddWindow(mTimeCtrl); mTimeCtrl->EnableMenu(); } S.EndStatic(); } S.EndVerticalLay(); S.AddStandardButtons(); TransferDataToWindow(); Layout(); Fit(); SetMinSize(GetSize()); Center(); }
void EffectNoise::PopulateOrExchange(ShuttleGui & S) { wxASSERT(nTypes == WXSIZEOF(kTypeStrings)); S.StartMultiColumn(2, wxCENTER); { auto typeChoices = LocalizedStrings(kTypeStrings, nTypes); S.AddChoice(_("Noise type:"), wxT(""), &typeChoices)->SetValidator(wxGenericValidator(&mType)); FloatingPointValidator<double> vldAmp(6, &mAmp, NumValidatorStyle::NO_TRAILING_ZEROES); vldAmp.SetRange(MIN_Amp, MAX_Amp); S.AddTextBox(_("Amplitude (0-1):"), wxT(""), 12)->SetValidator(vldAmp); S.AddPrompt(_("Duration:")); mNoiseDurationT = safenew NumericTextCtrl(S.GetParent(), wxID_ANY, NumericConverter::TIME, GetDurationFormat(), GetDuration(), mProjectRate, NumericTextCtrl::Options{} .AutoPos(true)); mNoiseDurationT->SetName(_("Duration")); S.AddWindow(mNoiseDurationT, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL); } S.EndMultiColumn(); }
/// Add a compound control made up from a choice and an edit /// box. void QualityPrefs::DefineSampleRateControl( ShuttleGui & S ) { // We use a sizer within a sizer to get the effect we want. // We also use the SetIfCreated idiom to get pointers to // the controls, so that we can drive them from // our own code. S.SetBorder(2); S.StartHorizontalLay(wxALIGN_LEFT ); // If the value in Prefs isn't in the list, then we want // the last item, 'Other...' to be shown. S.SetNoMatchSelector( mmSampleRateNames.GetCount()-1 ); // First the choice... // We make sure it uses the ID we want, so that we get changes S.Id( ID_SAMPLE_RATE_CHOICE ); // We make sure we have a pointer to it, so that we can drive it. mSampleRates = S.TieChoice( wxT(""), wxT("/SamplingRate/DefaultProjectSampleRate"), AudioIO::GetOptimalSupportedSampleRate(), mmSampleRateNames, mmSampleRateLabels ); // Now do the edit box... mOtherSampleRate = S.TieTextBox(wxT(""), mOtherSampleRateValue, 9); S.EndHorizontalLay(); }
void EffectSilence::PopulateOrExchange(ShuttleGui & S) { S.StartVerticalLay(); { S.StartHorizontalLay(); { S.AddPrompt(_("Duration:")); mDurationT = new NumericTextCtrl(NumericConverter::TIME, S.GetParent(), wxID_ANY, GetDurationFormat(), GetDuration(), mProjectRate, wxDefaultPosition, wxDefaultSize, true); mDurationT->SetName(_("Duration")); mDurationT->EnableMenu(); S.AddWindow(mDurationT, wxALIGN_CENTER | wxALL); } S.EndHorizontalLay(); } S.EndVerticalLay(); return; }
void EffectNoise::PopulateOrExchange(ShuttleGui & S) { wxASSERT(kNumTypes == WXSIZEOF(kTypeStrings)); wxArrayString typeChoices; for (int i = 0; i < kNumTypes; i++) { typeChoices.Add(wxGetTranslation(kTypeStrings[i])); } S.StartMultiColumn(2, wxCENTER); { S.AddChoice(_("Noise type:"), wxT(""), &typeChoices)->SetValidator(wxGenericValidator(&mType)); FloatingPointValidator<double> vldAmp(6, &mAmp, NUM_VAL_NO_TRAILING_ZEROES); vldAmp.SetRange(MIN_Amp, MAX_Amp); S.AddTextBox(_("Amplitude (0-1):"), wxT(""), 12)->SetValidator(vldAmp); S.AddPrompt(_("Duration:")); mNoiseDurationT = new NumericTextCtrl(NumericConverter::TIME, S.GetParent(), wxID_ANY, GetDurationFormat(), GetDuration(), mProjectRate, wxDefaultPosition, wxDefaultSize, true); mNoiseDurationT->SetName(_("Duration")); mNoiseDurationT->EnableMenu(); S.AddWindow(mNoiseDurationT, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL); } S.EndMultiColumn(); }
void EchoDialog::PopulateOrExchange(ShuttleGui & S) { S.AddSpace(0, 5); S.StartMultiColumn(2, wxALIGN_CENTER); { m_pTextCtrl_Delay = S.AddTextBox(_("Delay time (seconds):"), wxT("1.0"), 10); m_pTextCtrl_Delay->SetValidator(wxTextValidator(wxFILTER_NUMERIC)); m_pTextCtrl_Decay = S.AddTextBox(_("Decay factor:"), wxT("0.5"), 10); m_pTextCtrl_Decay->SetValidator(wxTextValidator(wxFILTER_NUMERIC)); } S.EndMultiColumn(); }
void WaveformPrefs::PopulateOrExchange(ShuttleGui & S) { mPopulating = true; S.SetBorder(2); // S.StartStatic(_("Track Settings")); { mDefaultsCheckbox = 0; if (mWt) { /* i18n-hint: use is a verb */ mDefaultsCheckbox = S.Id(ID_DEFAULTS).TieCheckBox(_("Use Preferences"), mDefaulted); } S.StartStatic(_("Display")); { S.StartTwoColumn(); { S.Id(ID_SCALE).TieChoice(_("S&cale") + wxString(wxT(":")), *(int*)&mTempSettings.scaleType, &mScaleChoices); } S.EndTwoColumn(); } S.EndStatic(); } // S.EndStatic(); /* S.StartStatic(_("Global settings")); { } S.EndStatic(); */ S.StartMultiColumn(2, wxALIGN_RIGHT); { S.Id(ID_APPLY).AddButton(_("Appl&y")); } S.EndMultiColumn(); mPopulating = false; }
void EffectPaulstretch::PopulateOrExchange(ShuttleGui & S) { S.StartMultiColumn(2, wxALIGN_CENTER); { FloatingPointValidator<float> vldAmount(1, &mAmount); vldAmount.SetMin(MIN_Amount); /* i18n-hint: This is how many times longer the sound will be, e.g. applying * the effect to a 1-second sample, with the default Stretch Factor of 10.0 * will give an (approximately) 10 second sound */ S.AddTextBox(_("Stretch Factor:"), wxT(""), 10)->SetValidator(vldAmount); FloatingPointValidator<float> vldTime(3, &mTime_resolution, NumValidatorStyle::ONE_TRAILING_ZERO); vldTime.SetMin(MIN_Time); S.AddTextBox(_("Time Resolution (seconds):"), wxT(""), 10)->SetValidator(vldTime); } S.EndMultiColumn(); };
void WaveformPrefs::PopulateOrExchange(ShuttleGui & S) { mPopulating = true; S.SetBorder(2); // S.StartStatic(_("Track Settings")); { mDefaultsCheckbox = 0; if (mWt) { /* i18n-hint: use is a verb */ mDefaultsCheckbox = S.Id(ID_DEFAULTS).TieCheckBox(_("&Use Preferences"), mDefaulted); } S.StartStatic(_("Display")); { S.StartTwoColumn(); { mScaleChoice = S.Id(ID_SCALE).TieChoice(_("S&cale") + wxString(wxT(":")), *(int*)&mTempSettings.scaleType, &mScaleChoices); mRangeChoice = S.Id(ID_RANGE).TieChoice(_("Waveform dB &range") + wxString(wxT(":")), *(int*)&mTempSettings.dBRange, &mRangeChoices); S.SetSizeHints(mRangeChoices); } S.EndTwoColumn(); } S.EndStatic(); } // S.EndStatic(); /* S.StartStatic(_("Global settings")); { } S.EndStatic(); */ EnableDisableRange(); mPopulating = false; }
void SetTrackStatusCommand::PopulateOrExchange(ShuttleGui & S) { SetTrackBase::PopulateOrExchange( S ); S.StartMultiColumn(3, wxEXPAND); { S.SetStretchyCol( 2 ); S.Optional( bHasTrackName ).TieTextBox( _("Name:"), mTrackName ); } S.EndMultiColumn(); S.StartMultiColumn(2, wxEXPAND); { S.SetStretchyCol( 1 ); S.Optional( bHasSelected ).TieCheckBox( _("Selected"), bSelected ); S.Optional( bHasFocused ).TieCheckBox( _("Focused"), bFocused); } S.EndMultiColumn(); }
void NoiseDialog::PopulateOrExchange( ShuttleGui & S ) { S.StartMultiColumn(2, wxCENTER); { // The added colon to improve visual consistency was placed outside // the translatable strings to avoid breaking translations close to 2.0. // TODO: Make colon part of the translatable string after 2.0. S.TieChoice(_("Noise type") + wxString(wxT(":")), nType, nTypeList); S.TieTextBox(_("Amplitude (0-1)") + wxString(wxT(":")), nAmplitude, 10); S.AddPrompt(_("Duration") + wxString(wxT(":"))); if (mNoiseDurationT == NULL) { mNoiseDurationT = new TimeTextCtrl(this, wxID_ANY, wxT(""), nDuration, mEffect->mProjectRate, wxDefaultPosition, wxDefaultSize, true); /* use this instead of "seconds" because if a selection is passed to * the effect, I want it (nDuration) to be used as the duration, and * with "seconds" this does not always work properly. For example, * it rounds down to zero... */ mNoiseDurationT->SetName(_("Duration")); mNoiseDurationT->SetFormatString(mNoiseDurationT->GetBuiltinFormat(nIsSelection==true?(_("hh:mm:ss + samples")):(_("seconds")))); mNoiseDurationT->EnableMenu(); } S.AddWindow(mNoiseDurationT, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL); } S.EndMultiColumn(); }
void NoiseDialog::PopulateOrExchange( ShuttleGui & S ) { S.StartMultiColumn(2, wxCENTER); { S.TieChoice(_("Noise type:"), nType, nTypeList); S.TieNumericTextBox(_("Amplitude (0-1)") + wxString(wxT(":")), nAmplitude, 10); S.AddPrompt(_("Duration") + wxString(wxT(":"))); if (mNoiseDurationT == NULL) { mNoiseDurationT = new NumericTextCtrl(NumericConverter::TIME, this, wxID_ANY, wxT(""), nDuration, mEffect->mProjectRate, wxDefaultPosition, wxDefaultSize, true); /* use this instead of "seconds" because if a selection is passed to * the effect, I want it (nDuration) to be used as the duration, and * with "seconds" this does not always work properly. For example, * it rounds down to zero... */ mNoiseDurationT->SetName(_("Duration")); mNoiseDurationT->SetFormatString(mNoiseDurationT->GetBuiltinFormat(nIsSelection==true?(_("hh:mm:ss + samples")):(_("hh:mm:ss + milliseconds")))); mNoiseDurationT->EnableMenu(); } S.AddWindow(mNoiseDurationT, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL | wxALL); } S.EndMultiColumn(); }
void SelectTracksCommand::PopulateOrExchange(ShuttleGui & S) { S.AddSpace(0, 5); S.StartMultiColumn(3, wxEXPAND); { S.SetStretchyCol( 2 ); S.Optional( bHasFirstTrack).TieTextBox(_("First Track:"),mFirstTrack); S.Optional( bHasNumTracks).TieTextBox(_("Track Count:"),mNumTracks); } S.EndMultiColumn(); S.StartMultiColumn(2, wxALIGN_CENTER); { // Always used, so no check box. S.TieChoice( _("Mode:"), mMode, LocalizedStrings( kModes, nModes )); } S.EndMultiColumn(); }
void SetTrackAudioCommand::PopulateOrExchange(ShuttleGui & S) { SetTrackBase::PopulateOrExchange( S ); S.StartMultiColumn(2, wxEXPAND); { S.SetStretchyCol( 1 ); S.Optional( bHasMute ).TieCheckBox( _("Mute"), bMute); S.Optional( bHasSolo ).TieCheckBox( _("Solo"), bSolo); } S.EndMultiColumn(); S.StartMultiColumn(3, wxEXPAND); { S.SetStretchyCol( 2 ); S.Optional( bHasGain ).TieSlider( _("Gain:"), mGain, 36.0,-36.0); S.Optional( bHasPan ).TieSlider( _("Pan:"), mPan, 100.0, -100.0); } S.EndMultiColumn(); }
void ExportOGGOptions::PopulateOrExchange(ShuttleGui & S) { S.StartVerticalLay(); { S.StartHorizontalLay(wxEXPAND); { S.SetSizerProportion(1); S.StartMultiColumn(2, wxCENTER); { S.SetStretchyCol(1); S.Prop(1).TieSlider(_("Quality:"), mOggQualityUnscaled, 10); } S.EndMultiColumn(); } S.EndHorizontalLay(); } S.EndVerticalLay(); }
void ProjectsPrefs::PopulateOrExchange(ShuttleGui & S) { S.SetBorder(2); S.StartScroller(); S.StartStatic(_("When saving a project that depends on other audio files")); { S.StartRadioButtonGroup(wxT("/FileFormats/SaveProjectWithDependencies"), wxT("ask")); { S.TieRadioButton(_("&Copy all audio into project (safest)"), wxT("copy")); S.TieRadioButton(_("Do ¬ copy any audio"), wxT("never")); S.TieRadioButton(_("As&k"), wxT("ask")); } S.EndRadioButtonGroup(); } S.EndStatic(); S.EndScroller(); }
/// Create the dialog contents, or exchange data with it. void SmartRecordPrefs::PopulateOrExchange( ShuttleGui & S) { S.StartStatic( _("Pause Recording on Silence") ); { S.TieCheckBox( _("Pause Recording on Silence"), wxT("/AudioIO/PauseRecOnSilence"),false); S.StartMultiColumn(2, wxEXPAND); S.SetStretchyCol(1); S.TieSlider(_("Silence level (dB):"), wxT("/AudioIO/SilenceLevel"), -50, 0, -60); S.EndMultiColumn(); } S.EndStatic(); }