Allow applying global edit actions to selected items only
This commit is contained in:
parent
b7672d3c92
commit
8135abffde
|
@ -60,6 +60,7 @@ static bool g_filterByType;
|
|||
static bool g_typeFilterIsPower;
|
||||
static bool g_filterByNet;
|
||||
static wxString g_netFilter;
|
||||
static bool g_filterSelected;
|
||||
|
||||
|
||||
#define DEFAULT_STYLE _( "Default" )
|
||||
|
@ -67,6 +68,7 @@ static wxString g_netFilter;
|
|||
class DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS : public DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS_BASE
|
||||
{
|
||||
SCH_EDIT_FRAME* m_parent;
|
||||
EE_SELECTION m_selection;
|
||||
|
||||
UNIT_BINDER m_textSize;
|
||||
UNIT_BINDER m_lineWidth;
|
||||
|
@ -147,13 +149,14 @@ DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::~DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS()
|
|||
g_typeFilterIsPower = m_typeFilter->GetSelection() == 1;
|
||||
g_filterByNet = m_netFilterOpt->GetValue();
|
||||
g_netFilter = m_netFilter->GetValue();
|
||||
g_filterSelected = m_selectedFilterOpt->GetValue();
|
||||
}
|
||||
|
||||
|
||||
bool DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::TransferDataToWindow()
|
||||
{
|
||||
EE_SELECTION_TOOL* selectionTool = m_parent->GetToolManager()->GetTool<EE_SELECTION_TOOL>();
|
||||
SELECTION& selection = selectionTool->GetSelection();
|
||||
m_selection = selectionTool->GetSelection();
|
||||
|
||||
m_references->SetValue( g_modifyReferences );
|
||||
m_values->SetValue( g_modifyValues );
|
||||
|
@ -177,6 +180,7 @@ bool DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::TransferDataToWindow()
|
|||
m_symbolFilterOpt->SetValue( g_filterBySymbol );
|
||||
m_typeFilter->SetSelection( g_typeFilterIsPower ? 1 : 0 );
|
||||
m_typeFilterOpt->SetValue( g_filterByType );
|
||||
m_selectedFilterOpt->SetValue( g_filterSelected );
|
||||
|
||||
if( g_filterByNet && !g_netFilter.IsEmpty() )
|
||||
{
|
||||
|
@ -187,9 +191,9 @@ bool DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::TransferDataToWindow()
|
|||
{
|
||||
m_netFilter->SetValue( m_parent->GetHighlightedConnection()->Name() );
|
||||
}
|
||||
else if( selection.GetSize() )
|
||||
else if( m_selection.GetSize() )
|
||||
{
|
||||
SCH_ITEM* sch_item = (SCH_ITEM*) selection.Front();
|
||||
SCH_ITEM* sch_item = (SCH_ITEM*) m_selection.Front();
|
||||
SCH_CONNECTION* connection = sch_item->Connection();
|
||||
|
||||
if( connection )
|
||||
|
@ -306,6 +310,11 @@ void DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::processItem( const SCH_SHEET_PATH& aS
|
|||
void DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::visitItem( const SCH_SHEET_PATH& aSheetPath,
|
||||
SCH_ITEM* aItem )
|
||||
{
|
||||
if( m_selectedFilterOpt->GetValue() && !m_selection.Contains( aItem ) )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if( m_netFilterOpt->GetValue() && !m_netFilter->GetValue().IsEmpty() )
|
||||
{
|
||||
SCH_CONNECTION* connection = aItem->Connection( &aSheetPath );
|
||||
|
|
|
@ -126,6 +126,9 @@ DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS_BASE::DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS_
|
|||
m_netFilter = new wxTextCtrl( sbFilters->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||
fgSizer2->Add( m_netFilter, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxEXPAND, 5 );
|
||||
|
||||
m_selectedFilterOpt = new wxCheckBox( sbFilters->GetStaticBox(), wxID_ANY, _("Only include selected items"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
fgSizer2->Add( m_selectedFilterOpt, 0, wxALL, 5 );
|
||||
|
||||
|
||||
sbFilters->Add( fgSizer2, 1, wxEXPAND|wxRIGHT, 5 );
|
||||
|
||||
|
|
|
@ -1591,6 +1591,70 @@
|
|||
<property name="window_style"></property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALL</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxCheckBox" expanded="1">
|
||||
<property name="BottomDockable">1</property>
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
<property name="TopDockable">1</property>
|
||||
<property name="aui_layer"></property>
|
||||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="caption"></property>
|
||||
<property name="caption_visible">1</property>
|
||||
<property name="center_pane">0</property>
|
||||
<property name="checked">0</property>
|
||||
<property name="close_button">1</property>
|
||||
<property name="context_help"></property>
|
||||
<property name="context_menu">1</property>
|
||||
<property name="default_pane">0</property>
|
||||
<property name="dock">Dock</property>
|
||||
<property name="dock_fixed">0</property>
|
||||
<property name="docking">Left</property>
|
||||
<property name="enabled">1</property>
|
||||
<property name="fg"></property>
|
||||
<property name="floatable">1</property>
|
||||
<property name="font"></property>
|
||||
<property name="gripper">0</property>
|
||||
<property name="hidden">0</property>
|
||||
<property name="id">wxID_ANY</property>
|
||||
<property name="label">Only include selected items</property>
|
||||
<property name="max_size"></property>
|
||||
<property name="maximize_button">0</property>
|
||||
<property name="maximum_size"></property>
|
||||
<property name="min_size"></property>
|
||||
<property name="minimize_button">0</property>
|
||||
<property name="minimum_size"></property>
|
||||
<property name="moveable">1</property>
|
||||
<property name="name">m_selectedFilterOpt</property>
|
||||
<property name="pane_border">1</property>
|
||||
<property name="pane_position"></property>
|
||||
<property name="pane_size"></property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="pin_button">1</property>
|
||||
<property name="pos"></property>
|
||||
<property name="resize">Resizable</property>
|
||||
<property name="show">1</property>
|
||||
<property name="size"></property>
|
||||
<property name="style"></property>
|
||||
<property name="subclass">; ; forward_declare</property>
|
||||
<property name="toolbar_pane">0</property>
|
||||
<property name="tooltip"></property>
|
||||
<property name="validator_data_type"></property>
|
||||
<property name="validator_style">wxFILTER_NONE</property>
|
||||
<property name="validator_type">wxDefaultValidator</property>
|
||||
<property name="validator_variable"></property>
|
||||
<property name="window_extra_style"></property>
|
||||
<property name="window_name"></property>
|
||||
<property name="window_style"></property>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
|
|
|
@ -61,6 +61,7 @@ class DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS_BASE : public DIALOG_SHIM
|
|||
wxChoice* m_typeFilter;
|
||||
wxCheckBox* m_netFilterOpt;
|
||||
wxTextCtrl* m_netFilter;
|
||||
wxCheckBox* m_selectedFilterOpt;
|
||||
wxPanel* m_specifiedValues;
|
||||
wxStaticText* m_textSizeLabel;
|
||||
wxTextCtrl* m_textSizeCtrl;
|
||||
|
|
Loading…
Reference in New Issue