Browse Source

wxString::both goes with Strip(), not Trim().

But Strip() is deprecated, so we shouldn't use it
(or wxString::leading/trailing/both) at all.
master
Jeff Young 2 months ago
parent
commit
425b77b34c
  1. 27
      3d-viewer/dialogs/appearance_controls_3D.cpp
  2. 2
      3d-viewer/dialogs/appearance_controls_3D.h
  3. 4
      common/advanced_config.cpp
  4. 8
      common/eda_units.cpp
  5. 2
      eeschema/dialogs/dialog_lib_edit_pin_table.cpp
  6. 2
      kicad/cli/command_sch_export_plot.cpp
  7. 2
      pcbnew/cross-probing.cpp
  8. 2
      pcbnew/dialogs/dialog_copper_zones.cpp
  9. 4
      pcbnew/exporters/step/exporter_step.cpp
  10. 2
      pcbnew/pcb_io/kicad_legacy/pcb_io_kicad_legacy.cpp
  11. 2
      pcbnew/pcbnew_jobs_handler.cpp
  12. 73
      pcbnew/widgets/appearance_controls.cpp
  13. 2
      pcbnew/widgets/appearance_controls.h

27
3d-viewer/dialogs/appearance_controls_3D.cpp

@ -269,7 +269,7 @@ void APPEARANCE_CONTROLS_3D::rebuildControls()
rebuildLayers();
m_cbUseBoardStackupColors->SetLabel( _( "Use board stackup colors" ) );
rebuildLayerPresetsWidget();
rebuildLayerPresetsWidget( true );
rebuildViewportsWidget();
Thaw();
@ -363,7 +363,7 @@ void APPEARANCE_CONTROLS_3D::SetUserViewports( std::vector<VIEWPORT3D>& aViewpor
rebuildViewportsWidget();
// Now is as good a time as any to initialize the layer presets as well.
rebuildLayerPresetsWidget();
rebuildLayerPresetsWidget( true );
m_presetMRU.Add( FOLLOW_PCB );
m_presetMRU.Add( FOLLOW_PLOT_SETTINGS );
@ -708,7 +708,7 @@ void APPEARANCE_CONTROLS_3D::UpdateLayerCtls()
}
void APPEARANCE_CONTROLS_3D::rebuildLayerPresetsWidget()
void APPEARANCE_CONTROLS_3D::rebuildLayerPresetsWidget( bool aReset )
{
m_presetsLabel->SetLabel( wxString::Format( _( "Presets (%s+Tab):" ),
KeyNameFromKeyCode( PRESET_SWITCH_KEY ) ) );
@ -720,6 +720,9 @@ void APPEARANCE_CONTROLS_3D::rebuildLayerPresetsWidget()
m_cbLayerPresets->Append( _( "Follow PCB Editor" ) );
m_cbLayerPresets->Append( _( "Follow PCB Plot Settings" ) );
if( !m_frame->GetAdapter().m_Cfg->m_LayerPresets.empty() )
m_cbLayerPresets->Append( wxT( "---" ) );
for( const LAYER_PRESET_3D& preset : m_frame->GetAdapter().m_Cfg->m_LayerPresets )
m_cbLayerPresets->Append( preset.name );
@ -727,7 +730,8 @@ void APPEARANCE_CONTROLS_3D::rebuildLayerPresetsWidget()
m_cbLayerPresets->Append( _( "Save preset..." ) );
m_cbLayerPresets->Append( _( "Delete preset..." ) );
updateLayerPresetWidget( m_frame->GetAdapter().m_Cfg->m_CurrentPreset );
if( aReset )
updateLayerPresetWidget( m_frame->GetAdapter().m_Cfg->m_CurrentPreset );
}
@ -814,12 +818,6 @@ void APPEARANCE_CONTROLS_3D::onLayerPresetChanged( wxCommandEvent& aEvent )
{
doApplyLayerPreset( FOLLOW_PLOT_SETTINGS );
}
else if( index == count - 3 )
{
// Separator: reject the selection
resetSelection();
return;
}
else if( index == count - 2 )
{
wxTextEntryDialog dlg( wxGetTopLevelParent( this ), _( "Layer preset name:" ),
@ -851,7 +849,8 @@ void APPEARANCE_CONTROLS_3D::onLayerPresetChanged( wxCommandEvent& aEvent )
else
{
cfg->m_LayerPresets.emplace_back( name, visibleLayers, colors );
m_cbLayerPresets->SetSelection( m_cbLayerPresets->Insert( name, index - 1 ) );
rebuildLayerPresetsWidget( false );
m_cbLayerPresets->SetStringSelection( name );
}
cfg->m_CurrentPreset = name;
@ -899,6 +898,12 @@ void APPEARANCE_CONTROLS_3D::onLayerPresetChanged( wxCommandEvent& aEvent )
resetSelection();
return;
}
else if( m_cbLayerPresets->GetString( index ) == wxT( "---" ) )
{
// Separator: reject the selection
resetSelection();
return;
}
else
{
doApplyLayerPreset( m_cbLayerPresets->GetStringSelection() );

2
3d-viewer/dialogs/appearance_controls_3D.h

@ -149,7 +149,7 @@ private:
void rebuildLayers();
void rebuildLayerPresetsWidget();
void rebuildLayerPresetsWidget( bool aReset );
void syncLayerPresetSelection();

4
common/advanced_config.cpp

@ -656,11 +656,11 @@ void ADVANCED_CFG::loadSettings( wxConfigBase& aCfg )
wxConfigLoadSetups( &aCfg, m_entries );
// Now actually set the trace masks
wxStringTokenizer traceMaskTokenizer( m_traceMasks, "," );
wxStringTokenizer traceMaskTokenizer( m_traceMasks, ", ", wxTOKEN_STRTOK );
while( traceMaskTokenizer.HasMoreTokens() )
{
wxString mask = traceMaskTokenizer.GetNextToken().Trim( wxString::both );
wxString mask = traceMaskTokenizer.GetNextToken();
wxLog::AddTraceMask( mask );
}

8
common/eda_units.cpp

@ -102,7 +102,7 @@ bool EDA_UNIT_UTILS::FetchUnitsFromString( const wxString& aTextValue, EDA_UNITS
}
// Check the unit designator (2 ch significant)
wxString unit( buf.Mid( brk_point ).Strip( wxString::leading ).Left( 2 ).Lower() );
wxString unit( buf.Mid( brk_point ).Trim( false ).Left( 2 ).Lower() );
//check for um, μm (µ is MICRO SIGN) and µm (µ is GREEK SMALL LETTER MU) for micrometre
if( unit == wxT( "um" ) || unit == wxT( "\u00B5m" ) || unit == wxT( "\u03BCm" ) )
@ -121,7 +121,7 @@ bool EDA_UNIT_UTILS::FetchUnitsFromString( const wxString& aTextValue, EDA_UNITS
aUnits = EDA_UNITS::FS;
else if( unit == wxT( "ps" ) )
{
wxString timeUnit( buf.Mid( brk_point ).Strip( wxString::leading ).Left( 5 ).Lower() );
wxString timeUnit( buf.Mid( brk_point ).Trim( false ).Left( 5 ).Lower() );
if( timeUnit == wxT( "ps" ) )
aUnits = EDA_UNITS::PS;
@ -620,7 +620,7 @@ double EDA_UNIT_UTILS::UI::DoubleValueFromString( const EDA_IU_SCALE& aIuScale,
buf.Left( brk_point ).ToDouble( &dtmp );
// Check the optional unit designator (2 ch significant)
wxString unit( buf.Mid( brk_point ).Strip( wxString::leading ).Left( 2 ).Lower() );
wxString unit( buf.Mid( brk_point ).Trim( false ).Left( 2 ).Lower() );
if( aUnits == EDA_UNITS::UM
|| aUnits == EDA_UNITS::MM
@ -664,7 +664,7 @@ double EDA_UNIT_UTILS::UI::DoubleValueFromString( const EDA_IU_SCALE& aIuScale,
|| aUnits == EDA_UNITS::PS_PER_CM || aUnits == EDA_UNITS::PS_PER_MM )
{
wxString timeUnit( buf.Mid( brk_point ).Strip( wxString::leading ).Left( 5 ).Lower() );
wxString timeUnit( buf.Mid( brk_point ).Trim( false ).Left( 5 ).Lower() );
if( timeUnit == wxT( "fs" ) )
aUnits = EDA_UNITS::FS;

2
eeschema/dialogs/dialog_lib_edit_pin_table.cpp

@ -518,7 +518,7 @@ public:
wxString pinName = tokenizer.GetNextToken();
// Trim whitespace from both ends of the string
pinName.Trim( wxString::both );
pinName.Trim( true ).Trim( false );
if( i < pins.size() )
{

2
kicad/cli/command_sch_export_plot.cpp

@ -146,7 +146,7 @@ int CLI::SCH_EXPORT_PLOT_COMMAND::doPerform( KIWAY& aKiway )
wxStringTokenizer tokenizer( pagesStr, ",", wxTOKEN_STRTOK );
while( tokenizer.HasMoreTokens() )
pages.push_back( tokenizer.GetNextToken().Trim( wxString::both) );
pages.push_back( tokenizer.GetNextToken().Trim( true ).Trim( false ) );
std::unique_ptr<JOB_EXPORT_SCH_PLOT> plotJob;

2
pcbnew/cross-probing.cpp

@ -154,7 +154,7 @@ void PCB_EDIT_FRAME::ExecuteRemoteCommand( const char* cmdline )
while( netsTok.HasMoreTokens() )
{
NETINFO_ITEM* netinfo = pcb->FindNet( netsTok.GetNextToken().Trim( wxString::both ) );
NETINFO_ITEM* netinfo = pcb->FindNet( netsTok.GetNextToken().Trim( true ).Trim( false ) );
if( netinfo )
{

2
pcbnew/dialogs/dialog_copper_zones.cpp

@ -740,7 +740,7 @@ void DIALOG_COPPER_ZONE::updateShowNetsFilter()
while( showFilters.HasMoreTokens() )
{
wxString filter = showFilters.GetNextToken().Trim( wxString::both );
wxString filter = showFilters.GetNextToken().Trim( false ).Trim( true );
if( !filter.IsEmpty() )
{

4
pcbnew/exporters/step/exporter_step.cpp

@ -327,10 +327,10 @@ bool EXPORTER_STEP::buildFootprint3DShapes( FOOTPRINT* aFootprint, const VECTOR2
if( componentFilter )
{
wxStringTokenizer tokenizer( m_params.m_ComponentFilter, ",", wxTOKEN_STRTOK );
wxStringTokenizer tokenizer( m_params.m_ComponentFilter, ", \t\r\n", wxTOKEN_STRTOK );
while( tokenizer.HasMoreTokens() )
componentFilterPatterns.push_back( tokenizer.GetNextToken().Trim( wxString::both ) );
componentFilterPatterns.push_back( tokenizer.GetNextToken() );
bool found = false;

2
pcbnew/pcb_io/kicad_legacy/pcb_io_kicad_legacy.cpp

@ -1817,7 +1817,7 @@ void PCB_IO_KICAD_LEGACY::load3D( FOOTPRINT* aFootprint )
[]( const char* str, double& x, double& y, double& z ) -> bool
{
wxString wxStr( str );
wxStr.Trim( wxString::both );
wxStr.Trim( true ).Trim( false );
wxStringTokenizer tokenizer( wxStr, " \t", wxTOKEN_STRTOK );

2
pcbnew/pcbnew_jobs_handler.cpp

@ -462,7 +462,7 @@ LSEQ PCBNEW_JOBS_HANDLER::convertLayerArg( wxString& aLayerString, BOARD* aBoard
while( layerTokens.HasMoreTokens() )
{
std::string token = TO_UTF8( layerTokens.GetNextToken().Trim( wxString::both ) );
std::string token = TO_UTF8( layerTokens.GetNextToken().Trim( true ).Trim( false ) );
if( layerUserMasks.contains( token ) )
pushLayers( layerUserMasks.at( token ) );

73
pcbnew/widgets/appearance_controls.cpp

@ -589,7 +589,7 @@ APPEARANCE_CONTROLS::APPEARANCE_CONTROLS( PCB_BASE_FRAME* aParent, wxWindow* aFo
}
loadDefaultLayerPresets();
rebuildLayerPresetsWidget();
rebuildLayerPresetsWidget( true );
rebuildObjects();
OnBoardChanged();
@ -1037,7 +1037,7 @@ void APPEARANCE_CONTROLS::OnLanguageChanged( wxCommandEvent& aEvent )
Freeze();
rebuildLayers();
rebuildLayerContextMenu();
rebuildLayerPresetsWidget();
rebuildLayerPresetsWidget( false );
rebuildViewportsWidget();
rebuildObjects();
rebuildNets();
@ -1065,7 +1065,7 @@ void APPEARANCE_CONTROLS::OnBoardChanged()
syncColorsAndVisibility();
syncObjectSettings();
rebuildNets();
rebuildLayerPresetsWidget();
rebuildLayerPresetsWidget( true );
syncLayerPresetSelection();
rebuildViewportsWidget();
@ -1473,7 +1473,7 @@ void APPEARANCE_CONTROLS::SetUserLayerPresets( std::vector<LAYER_PRESET>& aPrese
m_presetMRU.Add( preset.name );
}
rebuildLayerPresetsWidget();
rebuildLayerPresetsWidget( true );
}
@ -2632,32 +2632,51 @@ void APPEARANCE_CONTROLS::rebuildNets()
}
void APPEARANCE_CONTROLS::rebuildLayerPresetsWidget()
void APPEARANCE_CONTROLS::rebuildLayerPresetsWidget( bool aReset )
{
m_viewportsLabel->SetLabel( wxString::Format( _( "Presets (%s+Tab):" ),
KeyNameFromKeyCode( PRESET_SWITCH_KEY ) ) );
m_cbLayerPresets->Clear();
m_presetMRU.clear();
if( aReset )
m_presetMRU.clear();
// Build the layers preset list.
// By default, the presetAllLayers will be selected
int idx = 0;
int default_idx = 0;
std::vector<std::pair<wxString, void*>> userPresets;
for( std::pair<const wxString, LAYER_PRESET>& pair : m_layerPresets )
// m_layerPresets is alphabetical: m_presetMRU should also be alphabetical, but m_cbLayerPresets
// is split into build-in and user sections.
for( auto& [name, preset] : m_layerPresets )
{
const wxString translatedName = wxGetTranslation( pair.first );
m_cbLayerPresets->Append( wxGetTranslation( translatedName ),
static_cast<void*>( &pair.second ) );
m_presetMRU.push_back( translatedName );
const wxString translatedName = wxGetTranslation( name );
void* userData = static_cast<void*>( &preset );
if( preset.readOnly )
m_cbLayerPresets->Append( translatedName, userData );
else
userPresets.push_back( { name, userData } );
if( aReset )
m_presetMRU.push_back( translatedName );
if( pair.first == presetAllLayers.name )
if( name == presetAllLayers.name )
default_idx = idx;
idx++;
}
if( !userPresets.empty() )
{
m_cbLayerPresets->Append( wxT( "---" ) );
for( auto& [name, userData] : userPresets )
m_cbLayerPresets->Append( name, userData );
}
m_cbLayerPresets->Append( wxT( "---" ) );
m_cbLayerPresets->Append( _( "Save preset..." ) );
m_cbLayerPresets->Append( _( "Delete preset..." ) );
@ -2665,9 +2684,12 @@ void APPEARANCE_CONTROLS::rebuildLayerPresetsWidget()
// At least the built-in presets should always be present
wxASSERT( !m_layerPresets.empty() );
// Default preset: all layers
m_cbLayerPresets->SetSelection( default_idx );
m_currentPreset = &m_layerPresets[presetAllLayers.name];
if( aReset )
{
// Default preset: all layers
m_cbLayerPresets->SetSelection( default_idx );
m_currentPreset = &m_layerPresets[presetAllLayers.name];
}
}
@ -2750,13 +2772,7 @@ void APPEARANCE_CONTROLS::onLayerPresetChanged( wxCommandEvent& aEvent )
m_cbLayerPresets->SetSelection( m_cbLayerPresets->GetCount() - 3 );
};
if( index == count - 3 )
{
// Separator: reject the selection
resetSelection();
return;
}
else if( index == count - 2 )
if( index == count - 2 )
{
// Save current state to new preset
wxString name;
@ -2786,7 +2802,8 @@ void APPEARANCE_CONTROLS::onLayerPresetChanged( wxCommandEvent& aEvent )
if( !exists )
{
index = m_cbLayerPresets->Insert( name, index - 1, static_cast<void*>( preset ) );
rebuildLayerPresetsWidget( false );
index = m_cbLayerPresets->FindString( name );
}
else if( preset->readOnly )
{
@ -2814,7 +2831,7 @@ void APPEARANCE_CONTROLS::onLayerPresetChanged( wxCommandEvent& aEvent )
m_presetMRU.Remove( name );
}
m_currentPreset = preset;
m_currentPreset = preset;
m_cbLayerPresets->SetSelection( index );
m_presetMRU.Insert( name, 0 );
@ -2861,8 +2878,14 @@ void APPEARANCE_CONTROLS::onLayerPresetChanged( wxCommandEvent& aEvent )
resetSelection();
return;
}
else if( m_cbLayerPresets->GetString( index ) == wxT( "---" ) )
{
// Separator: reject the selection
resetSelection();
return;
}
// Store the objects visibility settings if the presedt is not a user preset,
// Store the objects visibility settings if the preset is not a user preset,
// to be reused when selecting a new built-in layer preset, even if a previous
// user preset has changed the object visibility
if( !m_currentPreset || m_currentPreset->readOnly )

2
pcbnew/widgets/appearance_controls.h

@ -324,7 +324,7 @@ private:
void loadDefaultLayerPresets();
void rebuildLayerPresetsWidget();
void rebuildLayerPresetsWidget( bool aReset );
void syncLayerPresetSelection();

Loading…
Cancel
Save