Add group-by-suffix display option in net inspector
Fixes https://gitlab.com/kicad/code/kicad/-/issues/2469
This commit is contained in:
parent
fb8ec84db0
commit
a238209f3f
|
@ -709,9 +709,9 @@ void EDA_3D_VIEWER::SynchroniseColoursWithBoard()
|
|||
wxColour color;
|
||||
if( brd )
|
||||
{
|
||||
BOARD_STACKUP stckp = brd->GetDesignSettings().GetStackupDescriptor();
|
||||
const BOARD_STACKUP& stckp = brd->GetDesignSettings().GetStackupDescriptor();
|
||||
|
||||
for( BOARD_STACKUP_ITEM* stckpItem : stckp.GetList() )
|
||||
for( const BOARD_STACKUP_ITEM* stckpItem : stckp.GetList() )
|
||||
{
|
||||
wxString colorName = stckpItem->GetColor();
|
||||
|
||||
|
|
|
@ -40,11 +40,14 @@ wxString const& EDA_PATTERN_MATCH_SUBSTR::GetPattern() const
|
|||
}
|
||||
|
||||
|
||||
int EDA_PATTERN_MATCH_SUBSTR::Find( const wxString& aCandidate ) const
|
||||
EDA_PATTERN_MATCH::FIND_RESULT EDA_PATTERN_MATCH_SUBSTR::Find( const wxString& aCandidate ) const
|
||||
{
|
||||
int loc = aCandidate.Find( m_pattern );
|
||||
|
||||
return ( loc == wxNOT_FOUND ) ? EDA_PATTERN_NOT_FOUND : loc;
|
||||
if( loc == wxNOT_FOUND )
|
||||
return {};
|
||||
else
|
||||
return { loc, static_cast<int>( m_pattern.size() ) };
|
||||
}
|
||||
|
||||
|
||||
|
@ -87,7 +90,7 @@ wxString const& EDA_PATTERN_MATCH_REGEX::GetPattern() const
|
|||
}
|
||||
|
||||
|
||||
int EDA_PATTERN_MATCH_REGEX::Find( const wxString& aCandidate ) const
|
||||
EDA_PATTERN_MATCH::FIND_RESULT EDA_PATTERN_MATCH_REGEX::Find( const wxString& aCandidate ) const
|
||||
{
|
||||
if( m_regex.IsValid() )
|
||||
{
|
||||
|
@ -95,17 +98,23 @@ int EDA_PATTERN_MATCH_REGEX::Find( const wxString& aCandidate ) const
|
|||
{
|
||||
size_t start, len;
|
||||
m_regex.GetMatch( &start, &len, 0 );
|
||||
return ( start > INT_MAX ) ? INT_MAX : start;
|
||||
|
||||
return { static_cast<int>( std::min( start, static_cast<size_t>( INT_MAX ) ) ),
|
||||
static_cast<int>( std::min( len, static_cast<size_t>( INT_MAX ) ) ) };
|
||||
}
|
||||
else
|
||||
{
|
||||
return EDA_PATTERN_NOT_FOUND;
|
||||
return {};
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
int loc = aCandidate.Find( m_pattern );
|
||||
return ( loc == wxNOT_FOUND ) ? EDA_PATTERN_NOT_FOUND : loc;
|
||||
|
||||
if( loc == wxNOT_FOUND )
|
||||
return {};
|
||||
else
|
||||
return { loc, static_cast<int>( m_pattern.size() ) };
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -152,7 +161,7 @@ wxString const& EDA_PATTERN_MATCH_WILDCARD::GetPattern() const
|
|||
}
|
||||
|
||||
|
||||
int EDA_PATTERN_MATCH_WILDCARD::Find( const wxString& aCandidate ) const
|
||||
EDA_PATTERN_MATCH::FIND_RESULT EDA_PATTERN_MATCH_WILDCARD::Find( const wxString& aCandidate ) const
|
||||
{
|
||||
return EDA_PATTERN_MATCH_REGEX::Find( aCandidate );
|
||||
}
|
||||
|
@ -253,7 +262,8 @@ wxString const& EDA_PATTERN_MATCH_RELATIONAL::GetPattern() const
|
|||
}
|
||||
|
||||
|
||||
int EDA_PATTERN_MATCH_RELATIONAL::Find( const wxString& aCandidate ) const
|
||||
EDA_PATTERN_MATCH::FIND_RESULT EDA_PATTERN_MATCH_RELATIONAL::Find(
|
||||
const wxString& aCandidate ) const
|
||||
{
|
||||
wxStringTokenizer tokenizer( aCandidate );
|
||||
size_t lastpos = 0;
|
||||
|
@ -266,13 +276,13 @@ int EDA_PATTERN_MATCH_RELATIONAL::Find( const wxString& aCandidate ) const
|
|||
if( found_delta != EDA_PATTERN_NOT_FOUND )
|
||||
{
|
||||
size_t found = (size_t) found_delta + lastpos;
|
||||
return ( found > INT_MAX ) ? INT_MAX : (int) found;
|
||||
return { static_cast<int>( std::min( found, static_cast<size_t>( INT_MAX ) ) ), 0 };
|
||||
}
|
||||
|
||||
lastpos = tokenizer.GetPosition();
|
||||
}
|
||||
|
||||
return EDA_PATTERN_NOT_FOUND;
|
||||
return {};
|
||||
}
|
||||
|
||||
|
||||
|
@ -357,15 +367,15 @@ bool EDA_COMBINED_MATCHER::Find( const wxString& aTerm, int& aMatchersTriggered,
|
|||
|
||||
for( auto const& matcher : m_matchers )
|
||||
{
|
||||
int local_find = matcher->Find( aTerm );
|
||||
EDA_PATTERN_MATCH::FIND_RESULT local_find = matcher->Find( aTerm );
|
||||
|
||||
if ( local_find != EDA_PATTERN_NOT_FOUND )
|
||||
if( local_find )
|
||||
{
|
||||
aMatchersTriggered += 1;
|
||||
|
||||
if ( local_find < aPosition || aPosition == EDA_PATTERN_NOT_FOUND )
|
||||
if( local_find.start < aPosition || aPosition == EDA_PATTERN_NOT_FOUND )
|
||||
{
|
||||
aPosition = local_find;
|
||||
aPosition = local_find.start;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -144,7 +144,7 @@ bool FOOTPRINT_FILTER_IT::FootprintFilterMatch( FOOTPRINT_INFO& aItem )
|
|||
|
||||
name += aItem.GetFootprintName().Lower();
|
||||
|
||||
if( each_filter->Find( name ) != EDA_PATTERN_NOT_FOUND )
|
||||
if( each_filter->Find( name ) )
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -44,6 +44,22 @@ static const int EDA_PATTERN_NOT_FOUND = wxNOT_FOUND;
|
|||
class EDA_PATTERN_MATCH
|
||||
{
|
||||
public:
|
||||
struct FIND_RESULT
|
||||
{
|
||||
int start = EDA_PATTERN_NOT_FOUND;
|
||||
int length = 0;
|
||||
|
||||
bool valid() const
|
||||
{
|
||||
return start != EDA_PATTERN_NOT_FOUND;
|
||||
}
|
||||
|
||||
explicit operator bool() const
|
||||
{
|
||||
return valid();
|
||||
}
|
||||
};
|
||||
|
||||
virtual ~EDA_PATTERN_MATCH() {}
|
||||
|
||||
/**
|
||||
|
@ -58,10 +74,11 @@ public:
|
|||
virtual wxString const& GetPattern() const = 0;
|
||||
|
||||
/**
|
||||
* Return the location of a match iff a given candidate string matches the set pattern.
|
||||
* Otherwise, return EDA_PATTERN_NOT_FOUND.
|
||||
* Return the location and possibly length of a match iff a given candidate
|
||||
* string matches the set pattern.
|
||||
* Otherwise, return an invalid FIND_RESULT.
|
||||
*/
|
||||
virtual int Find( const wxString& aCandidate ) const = 0;
|
||||
virtual FIND_RESULT Find( const wxString& aCandidate ) const = 0;
|
||||
};
|
||||
|
||||
|
||||
|
@ -73,7 +90,7 @@ class EDA_PATTERN_MATCH_SUBSTR : public EDA_PATTERN_MATCH
|
|||
public:
|
||||
virtual bool SetPattern( const wxString& aPattern ) override;
|
||||
virtual wxString const& GetPattern() const override;
|
||||
virtual int Find( const wxString& aCandidate ) const override;
|
||||
virtual FIND_RESULT Find( const wxString& aCandidate ) const override;
|
||||
|
||||
protected:
|
||||
wxString m_pattern;
|
||||
|
@ -88,7 +105,7 @@ class EDA_PATTERN_MATCH_REGEX : public EDA_PATTERN_MATCH
|
|||
public:
|
||||
virtual bool SetPattern( const wxString& aPattern ) override;
|
||||
virtual wxString const& GetPattern() const override;
|
||||
virtual int Find( const wxString& aCandidate ) const override;
|
||||
virtual FIND_RESULT Find( const wxString& aCandidate ) const override;
|
||||
|
||||
protected:
|
||||
wxString m_pattern;
|
||||
|
@ -101,7 +118,7 @@ class EDA_PATTERN_MATCH_WILDCARD : public EDA_PATTERN_MATCH_REGEX
|
|||
public:
|
||||
virtual bool SetPattern( const wxString& aPattern ) override;
|
||||
virtual wxString const& GetPattern() const override;
|
||||
virtual int Find( const wxString& aCandidate ) const override;
|
||||
virtual FIND_RESULT Find( const wxString& aCandidate ) const override;
|
||||
|
||||
protected:
|
||||
wxString m_wildcard_pattern;
|
||||
|
@ -133,7 +150,7 @@ class EDA_PATTERN_MATCH_RELATIONAL : public EDA_PATTERN_MATCH
|
|||
public:
|
||||
virtual bool SetPattern( const wxString& aPattern ) override;
|
||||
virtual wxString const& GetPattern() const override;
|
||||
virtual int Find( const wxString& aCandidate ) const override;
|
||||
virtual FIND_RESULT Find( const wxString& aCandidate ) const override;
|
||||
int FindOne( const wxString& aCandidate ) const;
|
||||
|
||||
protected:
|
||||
|
|
|
@ -248,7 +248,7 @@ public:
|
|||
|
||||
~BOARD_STACKUP() { RemoveAll(); }
|
||||
|
||||
std::vector<BOARD_STACKUP_ITEM*>& GetList() { return m_list; }
|
||||
const std::vector<BOARD_STACKUP_ITEM*>& GetList() const { return m_list; }
|
||||
|
||||
/// @return a reference to the layer aIndex, or nullptr if not exists
|
||||
BOARD_STACKUP_ITEM* GetStackupLayer( int aIndex );
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -25,13 +25,14 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include <core/optional.h>
|
||||
#include <dialog_select_net_from_list_base.h>
|
||||
#include <eda_pattern_match.h>
|
||||
|
||||
class PCB_EDIT_FRAME;
|
||||
class NETINFO_ITEM;
|
||||
class BOARD;
|
||||
class CN_ITEM;
|
||||
class EDA_PATTERN_MATCH;
|
||||
|
||||
class DIALOG_SELECT_NET_FROM_LIST : public DIALOG_SELECT_NET_FROM_LIST_BASE, public BOARD_LISTENER
|
||||
{
|
||||
|
@ -40,6 +41,16 @@ public:
|
|||
{
|
||||
wxString filter_string;
|
||||
bool show_zero_pad_nets = true;
|
||||
bool group_by = false;
|
||||
int group_by_kind = 0;
|
||||
wxString group_by_text;
|
||||
int sorting_column = -1;
|
||||
bool sort_order_asc = true;
|
||||
|
||||
std::vector<int> column_order;
|
||||
|
||||
unsigned int const_via_length = 0;
|
||||
int via_length_type = 0;
|
||||
};
|
||||
|
||||
DIALOG_SELECT_NET_FROM_LIST( PCB_EDIT_FRAME* aParent, const SETTINGS& aSettings );
|
||||
|
@ -47,16 +58,6 @@ public:
|
|||
|
||||
SETTINGS Settings() const;
|
||||
|
||||
// returns true if a net was selected, and its name in aName
|
||||
bool GetNetName( wxString& aName ) const;
|
||||
|
||||
/**
|
||||
* Visually highlights a net in the list view.
|
||||
* @param aNet is the net item to be highlighted. Nullptr will unhighlight
|
||||
* any currently highlighted net.
|
||||
*/
|
||||
void HighlightNet( NETINFO_ITEM* aNet );
|
||||
|
||||
virtual void OnBoardItemAdded( BOARD& aBoard, BOARD_ITEM* aBoardItem ) override;
|
||||
virtual void OnBoardItemRemoved( BOARD& aBoard, BOARD_ITEM* aBoardItem ) override;
|
||||
virtual void OnBoardNetSettingsChanged( BOARD& aBoard ) override;
|
||||
|
@ -64,41 +65,47 @@ public:
|
|||
virtual void OnBoardHighlightNetChanged( BOARD& aBoard ) override;
|
||||
|
||||
private:
|
||||
struct COLUMN_ID;
|
||||
static const COLUMN_ID COLUMN_NET;
|
||||
static const COLUMN_ID COLUMN_NAME;
|
||||
static const COLUMN_ID COLUMN_PAD_COUNT;
|
||||
static const COLUMN_ID COLUMN_VIA_COUNT;
|
||||
static const COLUMN_ID COLUMN_BOARD_LENGTH;
|
||||
static const COLUMN_ID COLUMN_CHIP_LENGTH;
|
||||
static const COLUMN_ID COLUMN_TOTAL_LENGTH;
|
||||
struct COLUMN_DESC;
|
||||
class LIST_ITEM;
|
||||
struct LIST_ITEM_NETCODE_CMP_LESS;
|
||||
|
||||
struct ROW_DESC;
|
||||
using LIST_ITEM_ITER = std::vector<std::unique_ptr<LIST_ITEM>>::iterator;
|
||||
using LIST_ITEM_CONST_ITER = std::vector<std::unique_ptr<LIST_ITEM>>::const_iterator;
|
||||
|
||||
ROW_DESC findRow( NETINFO_ITEM* aNet );
|
||||
ROW_DESC findRow( int aNetCode );
|
||||
|
||||
void deleteRow( const ROW_DESC& aRow );
|
||||
void setValue( const ROW_DESC& aRow, const COLUMN_ID& aCol, wxString aVal );
|
||||
static const COLUMN_DESC COLUMN_NET;
|
||||
static const COLUMN_DESC COLUMN_NAME;
|
||||
static const COLUMN_DESC COLUMN_PAD_COUNT;
|
||||
static const COLUMN_DESC COLUMN_VIA_COUNT;
|
||||
static const COLUMN_DESC COLUMN_VIA_LENGTH;
|
||||
static const COLUMN_DESC COLUMN_BOARD_LENGTH;
|
||||
static const COLUMN_DESC COLUMN_CHIP_LENGTH;
|
||||
static const COLUMN_DESC COLUMN_TOTAL_LENGTH;
|
||||
|
||||
wxString formatNetCode( const NETINFO_ITEM* aNet ) const;
|
||||
wxString formatNetName( const NETINFO_ITEM* aNet ) const;
|
||||
wxString formatCount( unsigned int aValue ) const;
|
||||
wxString formatLength( int aValue ) const;
|
||||
wxString formatLength( int64_t aValue ) const;
|
||||
|
||||
std::vector<CN_ITEM*> relevantConnectivityItems() const;
|
||||
bool netFilterMatches( NETINFO_ITEM* aNet ) const;
|
||||
void updateNet( NETINFO_ITEM* aNet );
|
||||
void highlightNetOnBoard( NETINFO_ITEM* aNet ) const;
|
||||
unsigned int calculateViaLength( const TRACK* ) const;
|
||||
|
||||
void onGroupsFirstChanged( wxCommandEvent& event ) override;
|
||||
void onSelChanged( wxDataViewEvent& event ) override;
|
||||
void onSelChanged();
|
||||
void onSortingChanged( wxDataViewEvent& event ) override;
|
||||
void onFilterChange( wxCommandEvent& event ) override;
|
||||
void onViaLengthChange( wxCommandEvent& event ) override;
|
||||
void onListSize( wxSizeEvent& event ) override;
|
||||
void onAddNet( wxCommandEvent& event ) override;
|
||||
void onRenameNet( wxCommandEvent& event ) override;
|
||||
void onDeleteNet( wxCommandEvent& event ) override;
|
||||
void onReport( wxCommandEvent& event ) override;
|
||||
|
||||
std::unique_ptr<LIST_ITEM> buildNewItem(
|
||||
NETINFO_ITEM* aNet, unsigned int aPadCount, const std::vector<CN_ITEM*>& aCNItems );
|
||||
|
||||
void buildNetsList();
|
||||
void adjustListColumns();
|
||||
|
||||
|
@ -106,24 +113,22 @@ private:
|
|||
void onUnitsChanged( wxCommandEvent& event );
|
||||
void onBoardChanged( wxCommandEvent& event );
|
||||
|
||||
// in addition to the displayed list data, we also keep some auxiliary
|
||||
// data for each list item in order to speed up update of the displayed list.
|
||||
struct LIST_ITEM;
|
||||
struct LIST_ITEM_NET_CMP_LESS;
|
||||
void updateDisplayedRowValues( const OPT<LIST_ITEM_ITER>& aRow );
|
||||
|
||||
// primary vector, sorted by rows
|
||||
std::vector<LIST_ITEM> m_list_items;
|
||||
// special zero-netcode item. unconnected pads etc might use different
|
||||
// (dummy) NETINFO_ITEM. redirect all of them to this item, which we get
|
||||
// from the board object in buildNetsList.
|
||||
NETINFO_ITEM* m_zero_netitem;
|
||||
|
||||
// we can't keep pointers to the elements in the primary vector because
|
||||
// the underlyng storage might change when elements are added or removed.
|
||||
// keep indices instead and look the them up in m_list_items.
|
||||
std::vector<unsigned int> m_list_items_by_net;
|
||||
std::vector<std::unique_ptr<EDA_PATTERN_MATCH>> m_netFilter;
|
||||
std::vector<std::unique_ptr<EDA_PATTERN_MATCH>> m_groupFilter;
|
||||
|
||||
|
||||
EDA_PATTERN_MATCH_WILDCARD m_netFilter;
|
||||
|
||||
wxString m_selection;
|
||||
bool m_wasSelected;
|
||||
BOARD* m_brd;
|
||||
PCB_EDIT_FRAME* m_frame;
|
||||
bool m_in_build_nets_list = false;
|
||||
bool m_filter_change_no_rebuild = false;
|
||||
unsigned int m_constViaLengthValue = 0;
|
||||
|
||||
class DATA_MODEL;
|
||||
wxObjectDataPtr<DATA_MODEL> m_data_model;
|
||||
};
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
///////////////////////////////////////////////////////////////////////////
|
||||
// C++ code generated with wxFormBuilder (version Oct 26 2018)
|
||||
// C++ code generated with wxFormBuilder (version 3.9.0 Oct 9 2020)
|
||||
// http://www.wxformbuilder.org/
|
||||
//
|
||||
// PLEASE DO *NOT* EDIT THIS FILE!
|
||||
|
@ -34,12 +34,63 @@ DIALOG_SELECT_NET_FROM_LIST_BASE::DIALOG_SELECT_NET_FROM_LIST_BASE( wxWindow* pa
|
|||
bTopSizer->Add( m_cbShowZeroPad, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
|
||||
|
||||
|
||||
bSizerMain->Add( bTopSizer, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
|
||||
bSizerMain->Add( bTopSizer, 0, wxEXPAND|wxLEFT|wxRIGHT, 5 );
|
||||
|
||||
m_netsList = new wxDataViewListCtrl( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxDV_HORIZ_RULES|wxDV_VERT_RULES );
|
||||
wxBoxSizer* bMidSizer;
|
||||
bMidSizer = new wxBoxSizer( wxHORIZONTAL );
|
||||
|
||||
m_groupBy = new wxCheckBox( this, wxID_ANY, _("Group By"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
bMidSizer->Add( m_groupBy, 0, wxALIGN_CENTER|wxALL, 5 );
|
||||
|
||||
m_groupByKind = new wxComboBox( this, wxID_ANY, _("Wildcard"), wxDefaultPosition, wxSize( -1,-1 ), 0, NULL, wxCB_DROPDOWN|wxCB_READONLY|wxCB_SIMPLE );
|
||||
m_groupByKind->Append( _("Wildcard") );
|
||||
m_groupByKind->Append( _("RegEx") );
|
||||
m_groupByKind->Append( _("Wildcard Substr") );
|
||||
m_groupByKind->Append( _("RegEx Substr") );
|
||||
m_groupByKind->SetSelection( 0 );
|
||||
bMidSizer->Add( m_groupByKind, 0, wxALIGN_CENTER|wxALL|wxFIXED_MINSIZE, 5 );
|
||||
|
||||
m_groupByText = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
|
||||
bMidSizer->Add( m_groupByText, 1, wxBOTTOM|wxEXPAND|wxRIGHT|wxTOP, 5 );
|
||||
|
||||
|
||||
bMidSizer->Add( 0, 0, 0, wxEXPAND|wxRIGHT|wxLEFT, 10 );
|
||||
|
||||
m_groupsFirst = new wxCheckBox( this, wxID_ANY, _("Sort groups first"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
m_groupsFirst->SetValue(true);
|
||||
bMidSizer->Add( m_groupsFirst, 0, wxALIGN_CENTER|wxALL, 5 );
|
||||
|
||||
|
||||
bSizerMain->Add( bMidSizer, 0, wxEXPAND|wxLEFT|wxRIGHT, 5 );
|
||||
|
||||
wxBoxSizer* bMidSizer1;
|
||||
bMidSizer1 = new wxBoxSizer( wxHORIZONTAL );
|
||||
|
||||
m_staticTextFilter1 = new wxStaticText( this, wxID_ANY, _("Via Length:"), wxDefaultPosition, wxDefaultSize, 0 );
|
||||
m_staticTextFilter1->Wrap( -1 );
|
||||
bMidSizer1->Add( m_staticTextFilter1, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
|
||||
|
||||
m_viaLengthType = new wxComboBox( this, wxID_ANY, _("Constant"), wxDefaultPosition, wxSize( -1,-1 ), 0, NULL, wxCB_DROPDOWN|wxCB_READONLY|wxCB_SIMPLE );
|
||||
m_viaLengthType->Append( _("Constant") );
|
||||
m_viaLengthType->Append( _("From Stackup") );
|
||||
m_viaLengthType->SetSelection( 0 );
|
||||
bMidSizer1->Add( m_viaLengthType, 0, wxALIGN_CENTER|wxALL|wxFIXED_MINSIZE, 5 );
|
||||
|
||||
m_constViaLength = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 96,-1 ), 0 );
|
||||
m_constViaLength->SetMaxSize( wxSize( 96,-1 ) );
|
||||
|
||||
bMidSizer1->Add( m_constViaLength, 1, wxBOTTOM|wxEXPAND|wxRIGHT|wxTOP, 5 );
|
||||
|
||||
|
||||
bMidSizer1->Add( 0, 0, 0, wxEXPAND|wxRIGHT|wxLEFT, 10 );
|
||||
|
||||
|
||||
bSizerMain->Add( bMidSizer1, 0, wxEXPAND|wxLEFT|wxRIGHT, 5 );
|
||||
|
||||
m_netsList = new wxDataViewCtrl( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxDV_HORIZ_RULES|wxDV_MULTIPLE|wxDV_VERT_RULES );
|
||||
m_netsList->SetMinSize( wxSize( 500,300 ) );
|
||||
|
||||
bSizerMain->Add( m_netsList, 1, wxEXPAND|wxRIGHT|wxLEFT, 10 );
|
||||
bSizerMain->Add( m_netsList, 1, wxEXPAND|wxLEFT|wxRIGHT, 10 );
|
||||
|
||||
wxBoxSizer* bSizerListButtons;
|
||||
bSizerListButtons = new wxBoxSizer( wxHORIZONTAL );
|
||||
|
@ -74,8 +125,6 @@ DIALOG_SELECT_NET_FROM_LIST_BASE::DIALOG_SELECT_NET_FROM_LIST_BASE( wxWindow* pa
|
|||
m_sdbSizer = new wxStdDialogButtonSizer();
|
||||
m_sdbSizerOK = new wxButton( this, wxID_OK );
|
||||
m_sdbSizer->AddButton( m_sdbSizerOK );
|
||||
m_sdbSizerCancel = new wxButton( this, wxID_CANCEL );
|
||||
m_sdbSizer->AddButton( m_sdbSizerCancel );
|
||||
m_sdbSizer->Realize();
|
||||
|
||||
bSizerBottom->Add( m_sdbSizer, 1, wxALL|wxEXPAND, 5 );
|
||||
|
@ -93,6 +142,13 @@ DIALOG_SELECT_NET_FROM_LIST_BASE::DIALOG_SELECT_NET_FROM_LIST_BASE( wxWindow* pa
|
|||
// Connect Events
|
||||
m_textCtrlFilter->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onFilterChange ), NULL, this );
|
||||
m_cbShowZeroPad->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onFilterChange ), NULL, this );
|
||||
m_groupBy->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onFilterChange ), NULL, this );
|
||||
m_groupByKind->Connect( wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onFilterChange ), NULL, this );
|
||||
m_groupByText->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onFilterChange ), NULL, this );
|
||||
m_groupsFirst->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onGroupsFirstChanged ), NULL, this );
|
||||
m_viaLengthType->Connect( wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onViaLengthChange ), NULL, this );
|
||||
m_constViaLength->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onViaLengthChange ), NULL, this );
|
||||
m_netsList->Connect( wxEVT_COMMAND_DATAVIEW_COLUMN_SORTED, wxDataViewEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onSortingChanged ), NULL, this );
|
||||
m_netsList->Connect( wxEVT_COMMAND_DATAVIEW_SELECTION_CHANGED, wxDataViewEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onSelChanged ), NULL, this );
|
||||
m_netsList->Connect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onListSize ), NULL, this );
|
||||
m_addNet->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onAddNet ), NULL, this );
|
||||
|
@ -106,6 +162,13 @@ DIALOG_SELECT_NET_FROM_LIST_BASE::~DIALOG_SELECT_NET_FROM_LIST_BASE()
|
|||
// Disconnect Events
|
||||
m_textCtrlFilter->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onFilterChange ), NULL, this );
|
||||
m_cbShowZeroPad->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onFilterChange ), NULL, this );
|
||||
m_groupBy->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onFilterChange ), NULL, this );
|
||||
m_groupByKind->Disconnect( wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onFilterChange ), NULL, this );
|
||||
m_groupByText->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onFilterChange ), NULL, this );
|
||||
m_groupsFirst->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onGroupsFirstChanged ), NULL, this );
|
||||
m_viaLengthType->Disconnect( wxEVT_COMMAND_COMBOBOX_SELECTED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onViaLengthChange ), NULL, this );
|
||||
m_constViaLength->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onViaLengthChange ), NULL, this );
|
||||
m_netsList->Disconnect( wxEVT_COMMAND_DATAVIEW_COLUMN_SORTED, wxDataViewEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onSortingChanged ), NULL, this );
|
||||
m_netsList->Disconnect( wxEVT_COMMAND_DATAVIEW_SELECTION_CHANGED, wxDataViewEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onSelChanged ), NULL, this );
|
||||
m_netsList->Disconnect( wxEVT_SIZE, wxSizeEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onListSize ), NULL, this );
|
||||
m_addNet->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_SELECT_NET_FROM_LIST_BASE::onAddNet ), NULL, this );
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
<property name="file">dialog_select_net_from_list_base</property>
|
||||
<property name="first_id">1000</property>
|
||||
<property name="help_provider">none</property>
|
||||
<property name="image_path_wrapper_function_name"></property>
|
||||
<property name="indent_with_spaces"></property>
|
||||
<property name="internationalize">1</property>
|
||||
<property name="name">dialog_select_net_from_list_base</property>
|
||||
|
@ -25,6 +26,7 @@
|
|||
<property name="skip_php_events">1</property>
|
||||
<property name="skip_python_events">1</property>
|
||||
<property name="ui_table">UI</property>
|
||||
<property name="use_array_enum">0</property>
|
||||
<property name="use_enum">0</property>
|
||||
<property name="use_microsoft_bom">0</property>
|
||||
<object class="Dialog" expanded="1">
|
||||
|
@ -60,9 +62,9 @@
|
|||
<property name="permission">none</property>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND|wxTOP|wxRIGHT|wxLEFT</property>
|
||||
<property name="flag">wxEXPAND|wxLEFT|wxRIGHT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxBoxSizer" expanded="1">
|
||||
<object class="wxBoxSizer" expanded="0">
|
||||
<property name="minimum_size"></property>
|
||||
<property name="name">bTopSizer</property>
|
||||
<property name="orient">wxHORIZONTAL</property>
|
||||
|
@ -193,11 +195,11 @@
|
|||
<event name="OnText">onFilterChange</event>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">10</property>
|
||||
<property name="flag">wxEXPAND|wxRIGHT|wxLEFT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="spacer" expanded="1">
|
||||
<object class="spacer" expanded="0">
|
||||
<property name="height">0</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">0</property>
|
||||
|
@ -271,13 +273,508 @@
|
|||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">10</property>
|
||||
<property name="flag">wxEXPAND|wxRIGHT|wxLEFT</property>
|
||||
<property name="proportion">1</property>
|
||||
<object class="wxDataViewListCtrl" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND|wxLEFT|wxRIGHT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxBoxSizer" expanded="0">
|
||||
<property name="minimum_size"></property>
|
||||
<property name="name">bMidSizer</property>
|
||||
<property name="orient">wxHORIZONTAL</property>
|
||||
<property name="permission">none</property>
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALIGN_CENTER|wxALL</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxCheckBox" expanded="0">
|
||||
<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">Group By</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_groupBy</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>
|
||||
<event name="OnCheckBox">onFilterChange</event>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALIGN_CENTER|wxALL|wxFIXED_MINSIZE</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxComboBox" expanded="0">
|
||||
<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="choices">"Wildcard" "RegEx" "Wildcard Substr" "RegEx Substr"</property>
|
||||
<property name="close_button">1</property>
|
||||
<property name="context_help"></property>
|
||||
<property name="context_menu">0</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="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_groupByKind</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="selection">0</property>
|
||||
<property name="show">1</property>
|
||||
<property name="size">-1,-1</property>
|
||||
<property name="style">wxCB_DROPDOWN|wxCB_READONLY|wxCB_SIMPLE</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="value">Wildcard</property>
|
||||
<property name="window_extra_style"></property>
|
||||
<property name="window_name"></property>
|
||||
<property name="window_style"></property>
|
||||
<event name="OnCombobox">onFilterChange</event>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxBOTTOM|wxEXPAND|wxRIGHT|wxTOP</property>
|
||||
<property name="proportion">1</property>
|
||||
<object class="wxTextCtrl" expanded="0">
|
||||
<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="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="max_size"></property>
|
||||
<property name="maximize_button">0</property>
|
||||
<property name="maximum_size"></property>
|
||||
<property name="maxlength">0</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_groupByText</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"></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="value"></property>
|
||||
<property name="window_extra_style"></property>
|
||||
<property name="window_name"></property>
|
||||
<property name="window_style"></property>
|
||||
<event name="OnText">onFilterChange</event>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">10</property>
|
||||
<property name="flag">wxEXPAND|wxRIGHT|wxLEFT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="spacer" expanded="0">
|
||||
<property name="height">0</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">0</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALIGN_CENTER|wxALL</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxCheckBox" expanded="0">
|
||||
<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">1</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">Sort groups first</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_groupsFirst</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>
|
||||
<event name="OnCheckBox">onGroupsFirstChanged</event>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND|wxLEFT|wxRIGHT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxBoxSizer" expanded="1">
|
||||
<property name="minimum_size"></property>
|
||||
<property name="name">bMidSizer1</property>
|
||||
<property name="orient">wxHORIZONTAL</property>
|
||||
<property name="permission">none</property>
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALIGN_CENTER_VERTICAL|wxALL</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxStaticText" expanded="0">
|
||||
<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="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">Via Length:</property>
|
||||
<property name="markup">0</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_staticTextFilter1</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"></property>
|
||||
<property name="toolbar_pane">0</property>
|
||||
<property name="tooltip"></property>
|
||||
<property name="window_extra_style"></property>
|
||||
<property name="window_name"></property>
|
||||
<property name="window_style"></property>
|
||||
<property name="wrap">-1</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALIGN_CENTER|wxALL|wxFIXED_MINSIZE</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxComboBox" expanded="0">
|
||||
<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="choices">"Constant" "From Stackup"</property>
|
||||
<property name="close_button">1</property>
|
||||
<property name="context_help"></property>
|
||||
<property name="context_menu">0</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="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_viaLengthType</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="selection">0</property>
|
||||
<property name="show">1</property>
|
||||
<property name="size">-1,-1</property>
|
||||
<property name="style">wxCB_DROPDOWN|wxCB_READONLY|wxCB_SIMPLE</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="value">Constant</property>
|
||||
<property name="window_extra_style"></property>
|
||||
<property name="window_name"></property>
|
||||
<property name="window_style"></property>
|
||||
<event name="OnCombobox">onViaLengthChange</event>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxBOTTOM|wxEXPAND|wxRIGHT|wxTOP</property>
|
||||
<property name="proportion">1</property>
|
||||
<object class="wxTextCtrl" expanded="0">
|
||||
<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="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="max_size"></property>
|
||||
<property name="maximize_button">0</property>
|
||||
<property name="maximum_size">96,-1</property>
|
||||
<property name="maxlength">0</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_constViaLength</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">96,-1</property>
|
||||
<property name="style"></property>
|
||||
<property name="subclass"></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="value"></property>
|
||||
<property name="window_extra_style"></property>
|
||||
<property name="window_name"></property>
|
||||
<property name="window_style"></property>
|
||||
<event name="OnText">onViaLengthChange</event>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">10</property>
|
||||
<property name="flag">wxEXPAND|wxRIGHT|wxLEFT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="spacer" expanded="0">
|
||||
<property name="height">0</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">0</property>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">10</property>
|
||||
<property name="flag">wxEXPAND|wxLEFT|wxRIGHT</property>
|
||||
<property name="proportion">1</property>
|
||||
<object class="wxDataViewCtrl" expanded="0">
|
||||
<property name="bg"></property>
|
||||
<property name="context_help"></property>
|
||||
<property name="context_menu">0</property>
|
||||
<property name="enabled">1</property>
|
||||
<property name="fg"></property>
|
||||
<property name="font"></property>
|
||||
|
@ -289,13 +786,14 @@
|
|||
<property name="permission">protected</property>
|
||||
<property name="pos"></property>
|
||||
<property name="size"></property>
|
||||
<property name="style">wxDV_HORIZ_RULES|wxDV_VERT_RULES</property>
|
||||
<property name="subclass">; forward_declare</property>
|
||||
<property name="style">wxDV_HORIZ_RULES|wxDV_MULTIPLE|wxDV_VERT_RULES</property>
|
||||
<property name="subclass"></property>
|
||||
<property name="tooltip"></property>
|
||||
<property name="window_extra_style"></property>
|
||||
<property name="window_name"></property>
|
||||
<property name="window_style"></property>
|
||||
<event name="OnDataViewListCtrlSelectionChanged">onSelChanged</event>
|
||||
<event name="OnDataViewCtrlColumnSorted">onSortingChanged</event>
|
||||
<event name="OnDataViewCtrlSelectionChanged">onSelChanged</event>
|
||||
<event name="OnSize">onListSize</event>
|
||||
</object>
|
||||
</object>
|
||||
|
@ -303,16 +801,16 @@
|
|||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND|wxALL</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxBoxSizer" expanded="1">
|
||||
<object class="wxBoxSizer" expanded="0">
|
||||
<property name="minimum_size"></property>
|
||||
<property name="name">bSizerListButtons</property>
|
||||
<property name="orient">wxHORIZONTAL</property>
|
||||
<property name="permission">none</property>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxTOP|wxBOTTOM|wxLEFT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxBitmapButton" expanded="1">
|
||||
<object class="wxBitmapButton" expanded="0">
|
||||
<property name="BottomDockable">1</property>
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
|
@ -321,6 +819,7 @@
|
|||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="auth_needed">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="bitmap"></property>
|
||||
|
@ -381,11 +880,11 @@
|
|||
<event name="OnButtonClick">onAddNet</event>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxTOP|wxBOTTOM|wxLEFT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxBitmapButton" expanded="1">
|
||||
<object class="wxBitmapButton" expanded="0">
|
||||
<property name="BottomDockable">1</property>
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
|
@ -394,6 +893,7 @@
|
|||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="auth_needed">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="bitmap"></property>
|
||||
|
@ -454,21 +954,21 @@
|
|||
<event name="OnButtonClick">onRenameNet</event>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="spacer" expanded="1">
|
||||
<object class="spacer" expanded="0">
|
||||
<property name="height">0</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">20</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALL</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxBitmapButton" expanded="1">
|
||||
<object class="wxBitmapButton" expanded="0">
|
||||
<property name="BottomDockable">1</property>
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
|
@ -477,6 +977,7 @@
|
|||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="auth_needed">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="bitmap"></property>
|
||||
|
@ -537,21 +1038,21 @@
|
|||
<event name="OnButtonClick">onDeleteNet</event>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND</property>
|
||||
<property name="proportion">1</property>
|
||||
<object class="spacer" expanded="1">
|
||||
<object class="spacer" expanded="0">
|
||||
<property name="height">0</property>
|
||||
<property name="permission">protected</property>
|
||||
<property name="width">0</property>
|
||||
</object>
|
||||
</object>
|
||||
<object class="sizeritem" expanded="1">
|
||||
<object class="sizeritem" expanded="0">
|
||||
<property name="border">5</property>
|
||||
<property name="flag">wxALL|wxALIGN_CENTER_VERTICAL</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxButton" expanded="1">
|
||||
<object class="wxButton" expanded="0">
|
||||
<property name="BottomDockable">1</property>
|
||||
<property name="LeftDockable">1</property>
|
||||
<property name="RightDockable">1</property>
|
||||
|
@ -560,6 +1061,7 @@
|
|||
<property name="aui_name"></property>
|
||||
<property name="aui_position"></property>
|
||||
<property name="aui_row"></property>
|
||||
<property name="auth_needed">0</property>
|
||||
<property name="best_size"></property>
|
||||
<property name="bg"></property>
|
||||
<property name="bitmap"></property>
|
||||
|
@ -684,7 +1186,7 @@
|
|||
<property name="border">5</property>
|
||||
<property name="flag">wxEXPAND|wxLEFT</property>
|
||||
<property name="proportion">0</property>
|
||||
<object class="wxBoxSizer" expanded="1">
|
||||
<object class="wxBoxSizer" expanded="0">
|
||||
<property name="minimum_size"></property>
|
||||
<property name="name">bSizerBottom</property>
|
||||
<property name="orient">wxHORIZONTAL</property>
|
||||
|
@ -695,7 +1197,7 @@
|
|||
<property name="proportion">1</property>
|
||||
<object class="wxStdDialogButtonSizer" expanded="0">
|
||||
<property name="Apply">0</property>
|
||||
<property name="Cancel">1</property>
|
||||
<property name="Cancel">0</property>
|
||||
<property name="ContextHelp">0</property>
|
||||
<property name="Help">0</property>
|
||||
<property name="No">0</property>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
///////////////////////////////////////////////////////////////////////////
|
||||
// C++ code generated with wxFormBuilder (version Oct 26 2018)
|
||||
// C++ code generated with wxFormBuilder (version 3.9.0 Oct 9 2020)
|
||||
// http://www.wxformbuilder.org/
|
||||
//
|
||||
// PLEASE DO *NOT* EDIT THIS FILE!
|
||||
|
@ -20,6 +20,7 @@
|
|||
#include <wx/textctrl.h>
|
||||
#include <wx/checkbox.h>
|
||||
#include <wx/sizer.h>
|
||||
#include <wx/combobox.h>
|
||||
#include <wx/dataview.h>
|
||||
#include <wx/bmpbuttn.h>
|
||||
#include <wx/bitmap.h>
|
||||
|
@ -43,7 +44,14 @@ class DIALOG_SELECT_NET_FROM_LIST_BASE : public DIALOG_SHIM
|
|||
wxStaticText* m_staticTextFilter;
|
||||
wxTextCtrl* m_textCtrlFilter;
|
||||
wxCheckBox* m_cbShowZeroPad;
|
||||
wxDataViewListCtrl* m_netsList;
|
||||
wxCheckBox* m_groupBy;
|
||||
wxComboBox* m_groupByKind;
|
||||
wxTextCtrl* m_groupByText;
|
||||
wxCheckBox* m_groupsFirst;
|
||||
wxStaticText* m_staticTextFilter1;
|
||||
wxComboBox* m_viaLengthType;
|
||||
wxTextCtrl* m_constViaLength;
|
||||
wxDataViewCtrl* m_netsList;
|
||||
wxBitmapButton* m_addNet;
|
||||
wxBitmapButton* m_renameNet;
|
||||
wxBitmapButton* m_deleteNet;
|
||||
|
@ -51,10 +59,12 @@ class DIALOG_SELECT_NET_FROM_LIST_BASE : public DIALOG_SHIM
|
|||
wxStaticLine* m_staticline1;
|
||||
wxStdDialogButtonSizer* m_sdbSizer;
|
||||
wxButton* m_sdbSizerOK;
|
||||
wxButton* m_sdbSizerCancel;
|
||||
|
||||
// Virtual event handlers, overide them in your derived class
|
||||
virtual void onFilterChange( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void onGroupsFirstChanged( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void onViaLengthChange( wxCommandEvent& event ) { event.Skip(); }
|
||||
virtual void onSortingChanged( wxDataViewEvent& event ) { event.Skip(); }
|
||||
virtual void onSelChanged( wxDataViewEvent& event ) { event.Skip(); }
|
||||
virtual void onListSize( wxSizeEvent& event ) { event.Skip(); }
|
||||
virtual void onAddNet( wxCommandEvent& event ) { event.Skip(); }
|
||||
|
|
Loading…
Reference in New Issue