mirror of
https://github.com/ciphervance/supercell-wx.git
synced 2025-10-30 16:10:04 +00:00
Merge pull request #285 from AdenKoperczak/trim_whitespace_from_inputs
Trim white space from inputs
This commit is contained in:
commit
620a0dba25
4 changed files with 34 additions and 4 deletions
|
|
@ -56,6 +56,8 @@ public:
|
|||
double unitScale_ {1};
|
||||
std::optional<std::string> unitAbbreviation_ {};
|
||||
bool unitEnabled_ {false};
|
||||
|
||||
bool trimmingEnabled_ {false};
|
||||
};
|
||||
|
||||
template<class T>
|
||||
|
|
@ -191,8 +193,11 @@ void SettingsInterface<T>::SetEditWidget(QWidget* widget)
|
|||
p->context_.get(),
|
||||
[this](const QString& text)
|
||||
{
|
||||
QString trimmedText =
|
||||
p->trimmingEnabled_ ? text.trimmed() : text;
|
||||
|
||||
// Map to value if required
|
||||
std::string value {text.toStdString()};
|
||||
std::string value {trimmedText.toStdString()};
|
||||
if (p->mapToValue_ != nullptr)
|
||||
{
|
||||
value = p->mapToValue_(value);
|
||||
|
|
@ -488,6 +493,12 @@ void SettingsInterface<T>::SetUnit(const double& scale,
|
|||
p->UpdateUnitLabel();
|
||||
}
|
||||
|
||||
template<class T>
|
||||
void SettingsInterface<T>::EnableTrimming(bool trimmingEnabled)
|
||||
{
|
||||
p->trimmingEnabled_ = trimmingEnabled;
|
||||
}
|
||||
|
||||
template<class T>
|
||||
template<class U>
|
||||
void SettingsInterface<T>::Impl::SetWidgetText(U* widget, const T& currentValue)
|
||||
|
|
|
|||
|
|
@ -121,11 +121,20 @@ public:
|
|||
/**
|
||||
* Sets the unit to be used by this setting.
|
||||
*
|
||||
* @param scale The radio of the current unit to the base unit
|
||||
* @param abbreviation The abreviation to be displayed
|
||||
* @param scale The ratio of the current unit to the base unit
|
||||
* @param abbreviation The abbreviation to be displayed
|
||||
*/
|
||||
void SetUnit(const double& scale, const std::string& abbreviation);
|
||||
|
||||
/**
|
||||
* Enables or disables whitespace trimming of text input.
|
||||
* Removes whitespace ('\t', '\n', '\v', '\f', '\r', and ' ') at the
|
||||
* beginning and end of the string from a QLineEdit.
|
||||
*
|
||||
* @param trimmingEnabled If trimming should be enabled.
|
||||
*/
|
||||
void EnableTrimming(bool trimmingEnabled = true);
|
||||
|
||||
private:
|
||||
class Impl;
|
||||
std::unique_ptr<Impl> p;
|
||||
|
|
|
|||
|
|
@ -603,14 +603,17 @@ void SettingsDialogImpl::SetupGeneralTab()
|
|||
mapboxApiKey_.SetSettingsVariable(generalSettings.mapbox_api_key());
|
||||
mapboxApiKey_.SetEditWidget(self_->ui->mapboxApiKeyLineEdit);
|
||||
mapboxApiKey_.SetResetButton(self_->ui->resetMapboxApiKeyButton);
|
||||
mapboxApiKey_.EnableTrimming();
|
||||
|
||||
mapTilerApiKey_.SetSettingsVariable(generalSettings.maptiler_api_key());
|
||||
mapTilerApiKey_.SetEditWidget(self_->ui->mapTilerApiKeyLineEdit);
|
||||
mapTilerApiKey_.SetResetButton(self_->ui->resetMapTilerApiKeyButton);
|
||||
mapTilerApiKey_.EnableTrimming();
|
||||
|
||||
customStyleUrl_.SetSettingsVariable(generalSettings.custom_style_url());
|
||||
customStyleUrl_.SetEditWidget(self_->ui->customMapUrlLineEdit);
|
||||
customStyleUrl_.SetResetButton(self_->ui->resetCustomMapUrlButton);
|
||||
customStyleUrl_.EnableTrimming();
|
||||
|
||||
customStyleDrawLayer_.SetSettingsVariable(
|
||||
generalSettings.custom_style_draw_layer());
|
||||
|
|
@ -672,10 +675,12 @@ void SettingsDialogImpl::SetupGeneralTab()
|
|||
nmeaSource_.SetSettingsVariable(generalSettings.nmea_source());
|
||||
nmeaSource_.SetEditWidget(self_->ui->nmeaSourceLineEdit);
|
||||
nmeaSource_.SetResetButton(self_->ui->resetNmeaSourceButton);
|
||||
nmeaSource_.EnableTrimming();
|
||||
|
||||
warningsProvider_.SetSettingsVariable(generalSettings.warnings_provider());
|
||||
warningsProvider_.SetEditWidget(self_->ui->warningsProviderLineEdit);
|
||||
warningsProvider_.SetResetButton(self_->ui->resetWarningsProviderButton);
|
||||
warningsProvider_.EnableTrimming();
|
||||
|
||||
antiAliasingEnabled_.SetSettingsVariable(
|
||||
generalSettings.anti_aliasing_enabled());
|
||||
|
|
@ -750,6 +755,7 @@ void SettingsDialogImpl::SetupPalettesColorTablesTab()
|
|||
colorTable.SetSettingsVariable(colorTableVariable);
|
||||
colorTable.SetEditWidget(lineEdit);
|
||||
colorTable.SetResetButton(resetButton);
|
||||
colorTable.EnableTrimming();
|
||||
|
||||
colorTableVariable.RegisterValueStagedCallback(
|
||||
[colorTableType, imageLabel](const std::string& value)
|
||||
|
|
@ -873,6 +879,7 @@ void SettingsDialogImpl::SetupAudioTab()
|
|||
alertAudioSoundFile_.SetSettingsVariable(audioSettings.alert_sound_file());
|
||||
alertAudioSoundFile_.SetEditWidget(self_->ui->alertAudioSoundLineEdit);
|
||||
alertAudioSoundFile_.SetResetButton(self_->ui->resetAlertAudioSoundButton);
|
||||
alertAudioSoundFile_.EnableTrimming();
|
||||
|
||||
QObject::connect(
|
||||
self_->ui->alertAudioSoundSelectButton,
|
||||
|
|
@ -1085,6 +1092,7 @@ void SettingsDialogImpl::SetupAudioTab()
|
|||
alertAudioCounty_.SetSettingsVariable(audioSettings.alert_county());
|
||||
alertAudioCounty_.SetEditWidget(self_->ui->alertAudioCountyLineEdit);
|
||||
alertAudioCounty_.SetResetButton(self_->ui->resetAlertAudioCountyButton);
|
||||
alertAudioCounty_.EnableTrimming();
|
||||
|
||||
QObject::connect(self_->ui->alertAudioWFOSelectButton,
|
||||
&QAbstractButton::clicked,
|
||||
|
|
@ -1117,6 +1125,7 @@ void SettingsDialogImpl::SetupAudioTab()
|
|||
alertAudioWFO_.SetSettingsVariable(audioSettings.alert_wfo());
|
||||
alertAudioWFO_.SetEditWidget(self_->ui->alertAudioWFOLineEdit);
|
||||
alertAudioWFO_.SetResetButton(self_->ui->resetAlertAudioWFOButton);
|
||||
alertAudioWFO_.EnableTrimming();
|
||||
}
|
||||
|
||||
void SettingsDialogImpl::SetupTextTab()
|
||||
|
|
|
|||
|
|
@ -17,7 +17,8 @@ std::string NormalizeUrl(const std::string& urlString)
|
|||
std::string normalizedUrl;
|
||||
|
||||
// Normalize URL string
|
||||
QUrl url = QUrl::fromUserInput(QString::fromStdString(urlString));
|
||||
QString trimmedUrlString = QString::fromStdString(urlString).trimmed();
|
||||
QUrl url = QUrl::fromUserInput(trimmedUrlString);
|
||||
if (url.isLocalFile())
|
||||
{
|
||||
normalizedUrl = QDir::toNativeSeparators(url.toLocalFile()).toStdString();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue