Improve zone manager dialog layout.

This commit is contained in:
Wayne Stambaugh 2024-03-03 12:09:01 -05:00
parent 5cdf9fe8a0
commit 3eb5c52073
7 changed files with 646 additions and 845 deletions

View File

@ -2,7 +2,7 @@
* This program source code file is part of KiCad, a free EDA CAD application.
*
* Copyright (C) 2023 Ethan Chien <liangtie.qian@gmail.com>
* Copyright (C) 2023 KiCad Developers, see AUTHORS.txt for contributors.
* Copyright (C) 2023, 2024 KiCad Developers, see AUTHORS.txt for contributors.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
@ -67,6 +67,7 @@ inline void DIALOG_ZONE_MANAGER::FitCanvasToScreen()
canvas->ZoomFitScreen();
}
inline void DIALOG_ZONE_MANAGER::PostProcessZoneViewSelectionChange( wxDataViewItem const& aItem )
{
bool textCtrlHasFocus = m_filterCtrl->HasFocus();
@ -103,17 +104,20 @@ inline void DIALOG_ZONE_MANAGER::PostProcessZoneViewSelectionChange( wxDataViewI
inline void DIALOG_ZONE_MANAGER::GenericProcessChar( wxKeyEvent& aEvent )
{
aEvent.Skip();
if( aEvent.GetKeyCode() == WXK_DOWN || aEvent.GetKeyCode() == WXK_UP )
{
Bind( wxEVT_IDLE, &DIALOG_ZONE_MANAGER::OnIDle, this );
}
}
void DIALOG_ZONE_MANAGER::OnTableChar( wxKeyEvent& aEvent )
{
GenericProcessChar( aEvent );
}
void DIALOG_ZONE_MANAGER::OnTableCharHook( wxKeyEvent& aEvent )
{
GenericProcessChar( aEvent );
@ -151,7 +155,7 @@ DIALOG_ZONE_MANAGER::DIALOG_ZONE_MANAGER( PCB_BASE_FRAME* aParent, ZONE_SETTINGS
m_btnMoveUp->SetBitmap( KiBitmapBundle( BITMAPS::small_up ) );
m_btnMoveDown->SetBitmap( KiBitmapBundle( BITMAPS::small_down ) );
m_sizerProperties->Add( m_panelZoneProperties, 1, wxALL | wxEXPAND );
m_sizerTop->Add( m_zoneViewer, 1, wxALL | wxEXPAND, 0 );
m_sizerTop->Add( m_zoneViewer, 1, wxBOTTOM | wxTOP | wxRIGHT | wxEXPAND, 5 );
m_checkRepour->SetValue( ZONE_MANAGER_PREFERENCE::GetRepourOnClose() );
m_zoneViewer->SetId( ZONE_VIEWER );
@ -205,6 +209,7 @@ DIALOG_ZONE_MANAGER::DIALOG_ZONE_MANAGER( PCB_BASE_FRAME* aParent, ZONE_SETTINGS
FitCanvasToScreen();
}
DIALOG_ZONE_MANAGER::~DIALOG_ZONE_MANAGER() = default;
@ -220,6 +225,7 @@ int InvokeZonesManager( PCB_BASE_FRAME* aCaller, ZONE_SETTINGS* aZoneInfo )
return res;
}
void DIALOG_ZONE_MANAGER::OnZoneSelectionChanged( ZONE* zone )
{
for( ZONE_SELECTION_CHANGE_NOTIFIER* i :
@ -227,14 +233,17 @@ void DIALOG_ZONE_MANAGER::OnZoneSelectionChanged( ZONE* zone )
{
i->OnZoneSelectionChanged( zone );
}
Layout();
}
void DIALOG_ZONE_MANAGER::OnViewZonesOverviewOnLeftUp( wxMouseEvent& aEvent )
{
Bind( wxEVT_IDLE, &DIALOG_ZONE_MANAGER::OnIDle, this );
}
void DIALOG_ZONE_MANAGER::OnDataViewCtrlSelectionChanged( wxDataViewEvent& aEvent )
{
SelectZoneTableItem( aEvent.GetItem() );
@ -269,6 +278,7 @@ void DIALOG_ZONE_MANAGER::OnOk( wxCommandEvent& aEvt )
aEvt.Skip();
}
#if wxUSE_DRAG_AND_DROP
void DIALOG_ZONE_MANAGER::OnBeginDrag( wxDataViewEvent& aEvent )
@ -283,11 +293,13 @@ void DIALOG_ZONE_MANAGER::OnBeginDrag( wxDataViewEvent& aEvent )
m_priorityDragIndex = m_modelZoneOverviewTable->GetRow( it );
}
void DIALOG_ZONE_MANAGER::OnDropPossible( wxDataViewEvent& aEvent )
{
aEvent.SetDropEffect( wxDragMove ); // check 'move' drop effect
}
void DIALOG_ZONE_MANAGER::OnRepourCheck( wxCommandEvent& aEvent )
{
ZONE_MANAGER_PREFERENCE::SetRepourOnClose( m_checkRepour->IsChecked() );
@ -324,20 +336,24 @@ void DIALOG_ZONE_MANAGER::OnDrop( wxDataViewEvent& aEvent )
m_viewZonesOverview->Select( item );
}
}
#endif // wxUSE_DRAG_AND_DROP
void DIALOG_ZONE_MANAGER::OnMoveUpClick( wxCommandEvent& aEvent )
{
WXUNUSED( aEvent );
MoveSelectedZonePriority( ZONE_INDEX_MOVEMENT::MOVE_UP );
}
void DIALOG_ZONE_MANAGER::OnMoveDownClick( wxCommandEvent& aEvent )
{
WXUNUSED( aEvent );
MoveSelectedZonePriority( ZONE_INDEX_MOVEMENT::MOVE_DOWN );
}
void DIALOG_ZONE_MANAGER::OnFilterCtrlCancel( wxCommandEvent& aEvent )
{
PostProcessZoneViewSelectionChange(
@ -345,6 +361,7 @@ void DIALOG_ZONE_MANAGER::OnFilterCtrlCancel( wxCommandEvent& aEvent )
aEvent.Skip();
}
void DIALOG_ZONE_MANAGER::OnFilterCtrlSearch( wxCommandEvent& aEvent )
{
PostProcessZoneViewSelectionChange( m_modelZoneOverviewTable->ApplyFilter(
@ -352,6 +369,7 @@ void DIALOG_ZONE_MANAGER::OnFilterCtrlSearch( wxCommandEvent& aEvent )
aEvent.Skip();
}
void DIALOG_ZONE_MANAGER::OnFilterCtrlTextChange( wxCommandEvent& aEvent )
{
PostProcessZoneViewSelectionChange( m_modelZoneOverviewTable->ApplyFilter(
@ -359,6 +377,7 @@ void DIALOG_ZONE_MANAGER::OnFilterCtrlTextChange( wxCommandEvent& aEvent )
aEvent.Skip();
}
void DIALOG_ZONE_MANAGER::OnFilterCtrlEnter( wxCommandEvent& aEvent )
{
PostProcessZoneViewSelectionChange( m_modelZoneOverviewTable->ApplyFilter(
@ -366,6 +385,7 @@ void DIALOG_ZONE_MANAGER::OnFilterCtrlEnter( wxCommandEvent& aEvent )
aEvent.Skip();
}
void DIALOG_ZONE_MANAGER::OnButtonApplyClick( wxCommandEvent& aEvent )
{
if( m_isFillingZones )
@ -383,7 +403,8 @@ void DIALOG_ZONE_MANAGER::OnButtonApplyClick( wxCommandEvent& aEvent )
auto reporter = std::make_unique<WX_PROGRESS_REPORTER>( this, _( "Fill All Zones" ), 5 );
m_filler->SetProgressReporter( reporter.get() );
board->Zones() = m_zonesContainer->GetClonedZoneList();
//NOTE - Nether revert nor commit is needed here , cause the cloned zones are not owned by the pcb frame
//NOTE - Nether revert nor commit is needed here , cause the cloned zones are not owned by
// the pcb frame.
m_zoneFillComplete = m_filler->Fill( board->Zones() );
board->BuildConnectivity();
board->Zones() = m_zonesContainer->GetOriginalZoneList();
@ -413,6 +434,7 @@ void DIALOG_ZONE_MANAGER::OnZoneNameUpdate( wxCommandEvent& aEvent )
}
}
void DIALOG_ZONE_MANAGER::OnZonesTableRowCountChange( wxCommandEvent& aEvent )
{
unsigned count = aEvent.GetInt();
@ -421,6 +443,7 @@ void DIALOG_ZONE_MANAGER::OnZonesTableRowCountChange( wxCommandEvent& aEvent )
btn->Enable( count == m_modelZoneOverviewTable->GetAllZonesCount() );
}
void DIALOG_ZONE_MANAGER::OnCheckBoxClicked( wxCommandEvent& aEvent )
{
const wxObject* sender = aEvent.GetEventObject();
@ -441,6 +464,7 @@ void DIALOG_ZONE_MANAGER::OnCheckBoxClicked( wxCommandEvent& aEvent )
}
}
void DIALOG_ZONE_MANAGER::MoveSelectedZonePriority( ZONE_INDEX_MOVEMENT aMove )
{
if( !m_viewZonesOverview->HasSelection() )

View File

@ -9,12 +9,9 @@
///////////////////////////////////////////////////////////////////////////
DIALOG_ZONE_MANAGER_BASE::DIALOG_ZONE_MANAGER_BASE( wxWindow* parent, wxWindowID id,
const wxString& title, const wxPoint& pos,
const wxSize& size, long style ) :
DIALOG_SHIM( parent, id, title, pos, size, style )
DIALOG_ZONE_MANAGER_BASE::DIALOG_ZONE_MANAGER_BASE( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : DIALOG_SHIM( parent, id, title, pos, size, style )
{
this->SetSizeHints( wxSize( -1, -1 ), wxDefaultSize );
this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
m_MainBoxSizer = new wxBoxSizer( wxVERTICAL );
@ -26,65 +23,54 @@ DIALOG_ZONE_MANAGER_BASE::DIALOG_ZONE_MANAGER_BASE( wxWindow* parent, wxWindowID
wxBoxSizer* bSizer7;
bSizer7 = new wxBoxSizer( wxVERTICAL );
m_viewZonesOverview =
new wxDataViewCtrl( this, VIEW_ZONE_TABLE, wxDefaultPosition, wxSize( -1, 240 ),
wxDV_HORIZ_RULES | wxDV_ROW_LINES | wxDV_SINGLE | wxDV_VERT_RULES );
m_viewZonesOverview->SetMinSize( wxSize( -1, 240 ) );
m_viewZonesOverview = new wxDataViewCtrl( this, VIEW_ZONE_TABLE, wxDefaultPosition, wxSize( -1,240 ), wxDV_HORIZ_RULES|wxDV_ROW_LINES|wxDV_SINGLE|wxDV_VERT_RULES );
m_viewZonesOverview->SetMinSize( wxSize( -1,240 ) );
bSizer7->Add( m_viewZonesOverview, 1, wxALL | wxEXPAND, 0 );
bSizer7->Add( m_viewZonesOverview, 1, wxALL|wxEXPAND, 0 );
m_sizerZoneOP = new wxBoxSizer( wxHORIZONTAL );
m_btnMoveUp = new STD_BITMAP_BUTTON( this, BTN_MOVE_UP, wxNullBitmap, wxDefaultPosition,
wxDefaultSize, wxBU_AUTODRAW | 0 );
m_btnMoveUp->SetToolTip(
_( "Top zone has the highest priority. When a zone is inside another zone, if its "
"priority is higher, its outlines are removed from the other zone." ) );
m_btnMoveUp = new STD_BITMAP_BUTTON( this, BTN_MOVE_UP, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
m_btnMoveUp->SetToolTip( _("Top zone has the highest priority. When a zone is inside another zone, if its priority is higher, its outlines are removed from the other zone.") );
m_sizerZoneOP->Add( m_btnMoveUp, 0, wxRIGHT, 5 );
m_sizerZoneOP->Add( m_btnMoveUp, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
m_btnMoveDown = new STD_BITMAP_BUTTON( this, BTN_MOVE_DOWN, wxNullBitmap, wxDefaultPosition,
wxDefaultSize, wxBU_AUTODRAW | 0 );
m_btnMoveDown->SetToolTip(
_( "Top zone has the highest priority. When a zone is inside another zone, if its "
"priority is higher, its outlines are removed from the other zone." ) );
m_btnMoveDown = new STD_BITMAP_BUTTON( this, BTN_MOVE_DOWN, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW|0 );
m_btnMoveDown->SetToolTip( _("Top zone has the highest priority. When a zone is inside another zone, if its priority is higher, its outlines are removed from the other zone.") );
m_sizerZoneOP->Add( m_btnMoveDown, 0, 0, 5 );
m_sizerZoneOP->Add( m_btnMoveDown, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
m_sizerZoneOP->Add( 0, 0, 0, wxEXPAND | wxLEFT | wxRIGHT, 10 );
m_sizerZoneOP->Add( 0, 0, 0, wxEXPAND, 5 );
m_checkName =
new wxCheckBox( this, CHECK_NAME, _( "Name" ), wxDefaultPosition, wxDefaultSize, 0 );
m_checkName->SetValue( true );
m_sizerZoneOP->Add( m_checkName, 0, wxBOTTOM | wxLEFT | wxTOP, 5 );
m_checkName = new wxCheckBox( this, CHECK_NAME, _("Name"), wxDefaultPosition, wxDefaultSize, 0 );
m_checkName->SetValue(true);
m_sizerZoneOP->Add( m_checkName, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
m_checkNet = new wxCheckBox( this, CHECK_NET, _( "Net" ), wxDefaultPosition, wxDefaultSize, 0 );
m_checkNet->SetValue( true );
m_sizerZoneOP->Add( m_checkNet, 0, wxALL, 5 );
m_checkNet = new wxCheckBox( this, CHECK_NET, _("Net"), wxDefaultPosition, wxDefaultSize, 0 );
m_checkNet->SetValue(true);
m_sizerZoneOP->Add( m_checkNet, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
m_filterCtrl = new wxSearchCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition,
wxDefaultSize, wxTE_PROCESS_ENTER );
#ifndef __WXMAC__
m_filterCtrl = new wxSearchCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER );
#ifndef __WXMAC__
m_filterCtrl->ShowSearchButton( true );
#endif
#endif
m_filterCtrl->ShowCancelButton( true );
m_sizerZoneOP->Add( m_filterCtrl, 1, wxALL, 0 );
m_sizerZoneOP->Add( m_filterCtrl, 1, wxEXPAND, 5 );
bSizer7->Add( m_sizerZoneOP, 0, wxBOTTOM | wxEXPAND | wxLEFT | wxTOP, 5 );
bSizer7->Add( m_sizerZoneOP, 0, wxEXPAND|wxLEFT|wxTOP, 5 );
m_sizerTop->Add( bSizer7, 1, wxALL | wxEXPAND, 5 );
m_sizerTop->Add( bSizer7, 1, wxALL|wxEXPAND, 5 );
bSizer12->Add( m_sizerTop, 1, wxEXPAND, 5 );
m_sizerProperties = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _( "Properties" ) ),
wxVERTICAL );
m_sizerProperties = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Properties") ), wxVERTICAL );
bSizer12->Add( m_sizerProperties, 0, wxALL | wxEXPAND, 5 );
bSizer12->Add( m_sizerProperties, 0, wxALL|wxEXPAND, 5 );
m_MainBoxSizer->Add( bSizer12, 1, wxEXPAND, 0 );
@ -92,15 +78,8 @@ DIALOG_ZONE_MANAGER_BASE::DIALOG_ZONE_MANAGER_BASE( wxWindow* parent, wxWindowID
wxBoxSizer* bSizer61;
bSizer61 = new wxBoxSizer( wxHORIZONTAL );
wxBoxSizer* bSizer71;
bSizer71 = new wxBoxSizer( wxVERTICAL );
m_checkRepour =
new wxCheckBox( this, wxID_ANY, _( "Repour" ), wxDefaultPosition, wxDefaultSize, 0 );
bSizer71->Add( m_checkRepour, 0, wxLEFT | wxTOP, 10 );
bSizer61->Add( bSizer71, 0, wxEXPAND | wxLEFT, 15 );
m_checkRepour = new wxCheckBox( this, wxID_ANY, _("Repour"), wxDefaultPosition, wxDefaultSize, 0 );
bSizer61->Add( m_checkRepour, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 10 );
bSizer61->Add( 0, 0, 1, wxEXPAND, 5 );
@ -114,7 +93,7 @@ DIALOG_ZONE_MANAGER_BASE::DIALOG_ZONE_MANAGER_BASE( wxWindow* parent, wxWindowID
m_sdbSizer->AddButton( m_sdbSizerCancel );
m_sdbSizer->Realize();
bSizer61->Add( m_sdbSizer, 0, wxALL | wxEXPAND, 5 );
bSizer61->Add( m_sdbSizer, 0, wxALL|wxEXPAND, 5 );
m_MainBoxSizer->Add( bSizer61, 0, wxEXPAND, 5 );
@ -125,71 +104,30 @@ DIALOG_ZONE_MANAGER_BASE::DIALOG_ZONE_MANAGER_BASE( wxWindow* parent, wxWindowID
m_MainBoxSizer->Fit( this );
// Connect Events
m_viewZonesOverview->Connect(
wxEVT_CHAR, wxKeyEventHandler( DIALOG_ZONE_MANAGER_BASE::OnTableChar ), NULL, this );
m_viewZonesOverview->Connect( wxEVT_CHAR_HOOK,
wxKeyEventHandler( DIALOG_ZONE_MANAGER_BASE::OnTableCharHook ),
NULL, this );
m_viewZonesOverview->Connect(
wxEVT_COMMAND_DATAVIEW_SELECTION_CHANGED,
wxDataViewEventHandler( DIALOG_ZONE_MANAGER_BASE::OnDataViewCtrlSelectionChanged ),
NULL, this );
m_viewZonesOverview->Connect(
wxEVT_LEFT_UP,
wxMouseEventHandler( DIALOG_ZONE_MANAGER_BASE::OnViewZonesOverviewOnLeftUp ), NULL,
this );
m_filterCtrl->Connect( wxEVT_COMMAND_SEARCHCTRL_CANCEL_BTN,
wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlCancel ),
NULL, this );
m_filterCtrl->Connect( wxEVT_COMMAND_SEARCHCTRL_SEARCH_BTN,
wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlSearch ),
NULL, this );
m_filterCtrl->Connect(
wxEVT_COMMAND_TEXT_UPDATED,
wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlTextChange ), NULL, this );
m_filterCtrl->Connect( wxEVT_COMMAND_TEXT_ENTER,
wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlEnter ),
NULL, this );
m_checkRepour->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED,
wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnRepourCheck ), NULL,
this );
m_sdbSizerApply->Connect( wxEVT_COMMAND_BUTTON_CLICKED,
wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnButtonApplyClick ),
NULL, this );
m_viewZonesOverview->Connect( wxEVT_CHAR, wxKeyEventHandler( DIALOG_ZONE_MANAGER_BASE::OnTableChar ), NULL, this );
m_viewZonesOverview->Connect( wxEVT_CHAR_HOOK, wxKeyEventHandler( DIALOG_ZONE_MANAGER_BASE::OnTableCharHook ), NULL, this );
m_viewZonesOverview->Connect( wxEVT_COMMAND_DATAVIEW_SELECTION_CHANGED, wxDataViewEventHandler( DIALOG_ZONE_MANAGER_BASE::OnDataViewCtrlSelectionChanged ), NULL, this );
m_viewZonesOverview->Connect( wxEVT_LEFT_UP, wxMouseEventHandler( DIALOG_ZONE_MANAGER_BASE::OnViewZonesOverviewOnLeftUp ), NULL, this );
m_filterCtrl->Connect( wxEVT_COMMAND_SEARCHCTRL_CANCEL_BTN, wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlCancel ), NULL, this );
m_filterCtrl->Connect( wxEVT_COMMAND_SEARCHCTRL_SEARCH_BTN, wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlSearch ), NULL, this );
m_filterCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlTextChange ), NULL, this );
m_filterCtrl->Connect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlEnter ), NULL, this );
m_checkRepour->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnRepourCheck ), NULL, this );
m_sdbSizerApply->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnButtonApplyClick ), NULL, this );
}
DIALOG_ZONE_MANAGER_BASE::~DIALOG_ZONE_MANAGER_BASE()
{
// Disconnect Events
m_viewZonesOverview->Disconnect(
wxEVT_CHAR, wxKeyEventHandler( DIALOG_ZONE_MANAGER_BASE::OnTableChar ), NULL, this );
m_viewZonesOverview->Disconnect( wxEVT_CHAR_HOOK,
wxKeyEventHandler( DIALOG_ZONE_MANAGER_BASE::OnTableCharHook ),
NULL, this );
m_viewZonesOverview->Disconnect(
wxEVT_COMMAND_DATAVIEW_SELECTION_CHANGED,
wxDataViewEventHandler( DIALOG_ZONE_MANAGER_BASE::OnDataViewCtrlSelectionChanged ),
NULL, this );
m_viewZonesOverview->Disconnect(
wxEVT_LEFT_UP,
wxMouseEventHandler( DIALOG_ZONE_MANAGER_BASE::OnViewZonesOverviewOnLeftUp ), NULL,
this );
m_filterCtrl->Disconnect( wxEVT_COMMAND_SEARCHCTRL_CANCEL_BTN,
wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlCancel ),
NULL, this );
m_filterCtrl->Disconnect( wxEVT_COMMAND_SEARCHCTRL_SEARCH_BTN,
wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlSearch ),
NULL, this );
m_filterCtrl->Disconnect(
wxEVT_COMMAND_TEXT_UPDATED,
wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlTextChange ), NULL, this );
m_filterCtrl->Disconnect( wxEVT_COMMAND_TEXT_ENTER,
wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlEnter ),
NULL, this );
m_checkRepour->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED,
wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnRepourCheck ),
NULL, this );
m_sdbSizerApply->Disconnect(
wxEVT_COMMAND_BUTTON_CLICKED,
wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnButtonApplyClick ), NULL, this );
m_viewZonesOverview->Disconnect( wxEVT_CHAR, wxKeyEventHandler( DIALOG_ZONE_MANAGER_BASE::OnTableChar ), NULL, this );
m_viewZonesOverview->Disconnect( wxEVT_CHAR_HOOK, wxKeyEventHandler( DIALOG_ZONE_MANAGER_BASE::OnTableCharHook ), NULL, this );
m_viewZonesOverview->Disconnect( wxEVT_COMMAND_DATAVIEW_SELECTION_CHANGED, wxDataViewEventHandler( DIALOG_ZONE_MANAGER_BASE::OnDataViewCtrlSelectionChanged ), NULL, this );
m_viewZonesOverview->Disconnect( wxEVT_LEFT_UP, wxMouseEventHandler( DIALOG_ZONE_MANAGER_BASE::OnViewZonesOverviewOnLeftUp ), NULL, this );
m_filterCtrl->Disconnect( wxEVT_COMMAND_SEARCHCTRL_CANCEL_BTN, wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlCancel ), NULL, this );
m_filterCtrl->Disconnect( wxEVT_COMMAND_SEARCHCTRL_SEARCH_BTN, wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlSearch ), NULL, this );
m_filterCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlTextChange ), NULL, this );
m_filterCtrl->Disconnect( wxEVT_COMMAND_TEXT_ENTER, wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnFilterCtrlEnter ), NULL, this );
m_checkRepour->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnRepourCheck ), NULL, this );
m_sdbSizerApply->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_ZONE_MANAGER_BASE::OnButtonApplyClick ), NULL, this );
}

View File

@ -123,7 +123,7 @@
</object>
<object class="sizeritem" expanded="true">
<property name="border">5</property>
<property name="flag">wxBOTTOM|wxEXPAND|wxLEFT|wxTOP</property>
<property name="flag">wxEXPAND|wxLEFT|wxTOP</property>
<property name="proportion">0</property>
<object class="wxBoxSizer" expanded="true">
<property name="minimum_size"></property>
@ -132,7 +132,7 @@
<property name="permission">protected</property>
<object class="sizeritem" expanded="true">
<property name="border">5</property>
<property name="flag">wxRIGHT</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxRIGHT</property>
<property name="proportion">0</property>
<object class="CustomControl" expanded="true">
<property name="BottomDockable">1</property>
@ -195,7 +195,7 @@
</object>
<object class="sizeritem" expanded="true">
<property name="border">5</property>
<property name="flag"></property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxRIGHT</property>
<property name="proportion">0</property>
<object class="CustomControl" expanded="true">
<property name="BottomDockable">1</property>
@ -257,8 +257,8 @@
</object>
</object>
<object class="sizeritem" expanded="false">
<property name="border">10</property>
<property name="flag">wxEXPAND|wxLEFT|wxRIGHT</property>
<property name="border">5</property>
<property name="flag">wxEXPAND</property>
<property name="proportion">0</property>
<object class="spacer" expanded="false">
<property name="height">0</property>
@ -268,7 +268,7 @@
</object>
<object class="sizeritem" expanded="false">
<property name="border">5</property>
<property name="flag">wxBOTTOM|wxLEFT|wxTOP</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxRIGHT</property>
<property name="proportion">0</property>
<object class="wxCheckBox" expanded="false">
<property name="BottomDockable">1</property>
@ -333,7 +333,7 @@
</object>
<object class="sizeritem" expanded="false">
<property name="border">5</property>
<property name="flag">wxALL</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxRIGHT</property>
<property name="proportion">0</property>
<object class="wxCheckBox" expanded="false">
<property name="BottomDockable">1</property>
@ -397,8 +397,8 @@
</object>
</object>
<object class="sizeritem" expanded="false">
<property name="border">0</property>
<property name="flag">wxALL</property>
<property name="border">5</property>
<property name="flag">wxEXPAND</property>
<property name="proportion">1</property>
<object class="wxSearchCtrl" expanded="false">
<property name="BottomDockable">1</property>
@ -497,18 +497,9 @@
<property name="name">bSizer61</property>
<property name="orient">wxHORIZONTAL</property>
<property name="permission">none</property>
<object class="sizeritem" expanded="true">
<property name="border">15</property>
<property name="flag">wxEXPAND|wxLEFT</property>
<property name="proportion">0</property>
<object class="wxBoxSizer" expanded="true">
<property name="minimum_size"></property>
<property name="name">bSizer71</property>
<property name="orient">wxVERTICAL</property>
<property name="permission">none</property>
<object class="sizeritem" expanded="true">
<property name="border">10</property>
<property name="flag">wxLEFT|wxTOP</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxLEFT</property>
<property name="proportion">0</property>
<object class="wxCheckBox" expanded="true">
<property name="BottomDockable">1</property>
@ -572,8 +563,6 @@
<event name="OnCheckBox">OnRepourCheck</event>
</object>
</object>
</object>
</object>
<object class="sizeritem" expanded="true">
<property name="border">5</property>
<property name="flag">wxEXPAND</property>

View File

@ -32,8 +32,9 @@
///////////////////////////////////////////////////////////////////////////////
class DIALOG_ZONE_MANAGER_BASE : public DIALOG_SHIM
{
private:
protected:
private:
protected:
enum
{
ID_DIALOG_COPPER_ZONE_BASE = 1000,
@ -73,12 +74,11 @@ protected:
virtual void OnButtonApplyClick( wxCommandEvent& event ) { event.Skip(); }
public:
DIALOG_ZONE_MANAGER_BASE( wxWindow* parent, wxWindowID id = ID_DIALOG_COPPER_ZONE_BASE,
const wxString& title = _( "Zone Manager" ),
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxSize( -1, -1 ),
long style = wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER );
public:
DIALOG_ZONE_MANAGER_BASE( wxWindow* parent, wxWindowID id = ID_DIALOG_COPPER_ZONE_BASE, const wxString& title = _("Zone Manager"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER );
~DIALOG_ZONE_MANAGER_BASE();
};

View File

@ -9,10 +9,7 @@
///////////////////////////////////////////////////////////////////////////
PANEL_ZONE_PROPERTIES_BASE::PANEL_ZONE_PROPERTIES_BASE( wxWindow* parent, wxWindowID id,
const wxPoint& pos, const wxSize& size,
long style, const wxString& name ) :
wxPanel( parent, id, pos, size, style, name )
PANEL_ZONE_PROPERTIES_BASE::PANEL_ZONE_PROPERTIES_BASE( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style, const wxString& name ) : wxPanel( parent, id, pos, size, style, name )
{
wxBoxSizer* bSizerMiddle;
bSizerMiddle = new wxBoxSizer( wxHORIZONTAL );
@ -21,8 +18,7 @@ PANEL_ZONE_PROPERTIES_BASE::PANEL_ZONE_PROPERTIES_BASE( wxWindow* parent, wxWind
bLeftColumn = new wxBoxSizer( wxVERTICAL );
wxStaticBoxSizer* sbGeneral;
sbGeneral =
new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _( "General" ) ), wxHORIZONTAL );
sbGeneral = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("General") ), wxHORIZONTAL );
wxFlexGridSizer* fgSizer1;
fgSizer1 = new wxFlexGridSizer( 0, 2, 0, 0 );
@ -30,240 +26,167 @@ PANEL_ZONE_PROPERTIES_BASE::PANEL_ZONE_PROPERTIES_BASE( wxWindow* parent, wxWind
fgSizer1->SetFlexibleDirection( wxBOTH );
fgSizer1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
m_zoneNameLabel = new wxStaticText( sbGeneral->GetStaticBox(), wxID_ANY, _( "Zone name:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_zoneNameLabel = new wxStaticText( sbGeneral->GetStaticBox(), wxID_ANY, _("Zone name:"), wxDefaultPosition, wxDefaultSize, 0 );
m_zoneNameLabel->Wrap( -1 );
m_zoneNameLabel->SetToolTip( _( "A unique name for this zone to identify it for DRC" ) );
m_zoneNameLabel->SetToolTip( _("A unique name for this zone to identify it for DRC") );
fgSizer1->Add( m_zoneNameLabel, 0, wxALIGN_CENTER_VERTICAL | wxLEFT, 5 );
fgSizer1->Add( m_zoneNameLabel, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
m_tcZoneName = new wxTextCtrl( sbGeneral->GetStaticBox(), EDIT_ZONE_NAME, wxEmptyString,
wxDefaultPosition, wxDefaultSize, 0 );
fgSizer1->Add( m_tcZoneName, 0,
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxRIGHT | wxLEFT | wxEXPAND, 5 );
m_tcZoneName = new wxTextCtrl( sbGeneral->GetStaticBox(), EDIT_ZONE_NAME, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
fgSizer1->Add( m_tcZoneName, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxLEFT|wxRIGHT, 5 );
sbGeneral->Add( fgSizer1, 1, wxEXPAND | wxBOTTOM, 5 );
sbGeneral->Add( fgSizer1, 1, wxEXPAND|wxBOTTOM, 5 );
bLeftColumn->Add( sbGeneral, 0, wxEXPAND | wxTOP | wxRIGHT | wxLEFT, 10 );
bLeftColumn->Add( sbGeneral, 0, wxEXPAND|wxLEFT|wxRIGHT, 5 );
wxStaticBoxSizer* m_ExportableSetupSizer;
m_ExportableSetupSizer =
new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _( "Shape" ) ), wxHORIZONTAL );
m_ExportableSetupSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Shape") ), wxHORIZONTAL );
wxGridBagSizer* gbSizer1;
gbSizer1 = new wxGridBagSizer( 5, 5 );
gbSizer1->SetFlexibleDirection( wxBOTH );
gbSizer1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
m_cbLocked = new wxCheckBox( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _( "Locked" ),
wxDefaultPosition, wxDefaultSize, 0 );
gbSizer1->Add( m_cbLocked, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxBOTTOM | wxRIGHT, 5 );
m_cbLocked = new wxCheckBox( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("Locked"), wxDefaultPosition, wxDefaultSize, 0 );
gbSizer1->Add( m_cbLocked, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxBOTTOM|wxRIGHT, 5 );
m_staticTextStyle =
new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY,
_( "Outline display:" ), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextStyle = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("Outline display:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextStyle->Wrap( -1 );
gbSizer1->Add( m_staticTextStyle, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxLEFT | wxRIGHT, 5 );
gbSizer1->Add( m_staticTextStyle, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT, 5 );
wxString m_OutlineDisplayCtrlChoices[] = { _( "Line" ), _( "Hatched" ), _( "Fully hatched" ) };
wxString m_OutlineDisplayCtrlChoices[] = { _("Line"), _("Hatched"), _("Fully hatched") };
int m_OutlineDisplayCtrlNChoices = sizeof( m_OutlineDisplayCtrlChoices ) / sizeof( wxString );
m_OutlineDisplayCtrl = new wxChoice(
m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize,
m_OutlineDisplayCtrlNChoices, m_OutlineDisplayCtrlChoices, 0 );
m_OutlineDisplayCtrl = new wxChoice( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_OutlineDisplayCtrlNChoices, m_OutlineDisplayCtrlChoices, 0 );
m_OutlineDisplayCtrl->SetSelection( 0 );
gbSizer1->Add( m_OutlineDisplayCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), wxALL, 5 );
gbSizer1->Add( m_OutlineDisplayCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), 0, 5 );
m_stBorderHatchPitchText =
new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY,
_( "Outline hatch pitch:" ), wxDefaultPosition, wxDefaultSize, 0 );
m_stBorderHatchPitchText = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("Outline hatch pitch:"), wxDefaultPosition, wxDefaultSize, 0 );
m_stBorderHatchPitchText->Wrap( -1 );
gbSizer1->Add( m_stBorderHatchPitchText, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxLEFT, 5 );
gbSizer1->Add( m_stBorderHatchPitchText, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
m_outlineHatchPitchCtrl =
new wxTextCtrl( m_ExportableSetupSizer->GetStaticBox(), ID_M_CORNERSMOOTHINGCTRL,
wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
gbSizer1->Add( m_outlineHatchPitchCtrl, wxGBPosition( 2, 1 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxEXPAND, 5 );
m_outlineHatchPitchCtrl = new wxTextCtrl( m_ExportableSetupSizer->GetStaticBox(), ID_M_CORNERSMOOTHINGCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
gbSizer1->Add( m_outlineHatchPitchCtrl, wxGBPosition( 2, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
m_outlineHatchUnits = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY,
_( "mm" ), wxDefaultPosition, wxDefaultSize, 0 );
m_outlineHatchUnits = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
m_outlineHatchUnits->Wrap( -1 );
gbSizer1->Add( m_outlineHatchUnits, wxGBPosition( 2, 2 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL, 5 );
gbSizer1->Add( m_outlineHatchUnits, wxGBPosition( 2, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
m_staticline4 = new wxStaticLine( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY,
wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
m_staticline4 = new wxStaticLine( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
gbSizer1->Add( m_staticline4, wxGBPosition( 3, 0 ), wxGBSpan( 1, 3 ), wxEXPAND | wxALL, 5 );
m_staticTextSmoothing =
new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY,
_( "Corner smoothing:" ), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextSmoothing = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("Corner smoothing:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextSmoothing->Wrap( -1 );
gbSizer1->Add( m_staticTextSmoothing, wxGBPosition( 4, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxLEFT, 5 );
gbSizer1->Add( m_staticTextSmoothing, wxGBPosition( 4, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
wxString m_cornerSmoothingChoiceChoices[] = { _( "None" ), _( "Chamfer" ), _( "Fillet" ) };
int m_cornerSmoothingChoiceNChoices =
sizeof( m_cornerSmoothingChoiceChoices ) / sizeof( wxString );
m_cornerSmoothingChoice = new wxChoice(
m_ExportableSetupSizer->GetStaticBox(), ID_CORNER_SMOOTHING, wxDefaultPosition,
wxDefaultSize, m_cornerSmoothingChoiceNChoices, m_cornerSmoothingChoiceChoices, 0 );
wxString m_cornerSmoothingChoiceChoices[] = { _("None"), _("Chamfer"), _("Fillet") };
int m_cornerSmoothingChoiceNChoices = sizeof( m_cornerSmoothingChoiceChoices ) / sizeof( wxString );
m_cornerSmoothingChoice = new wxChoice( m_ExportableSetupSizer->GetStaticBox(), ID_CORNER_SMOOTHING, wxDefaultPosition, wxDefaultSize, m_cornerSmoothingChoiceNChoices, m_cornerSmoothingChoiceChoices, 0 );
m_cornerSmoothingChoice->SetSelection( 1 );
gbSizer1->Add( m_cornerSmoothingChoice, wxGBPosition( 4, 1 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxEXPAND, 5 );
gbSizer1->Add( m_cornerSmoothingChoice, wxGBPosition( 4, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
m_cornerRadiusLabel =
new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY,
_( "Chamfer distance:" ), wxDefaultPosition, wxDefaultSize, 0 );
m_cornerRadiusLabel = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("Chamfer distance:"), wxDefaultPosition, wxDefaultSize, 0 );
m_cornerRadiusLabel->Wrap( -1 );
gbSizer1->Add( m_cornerRadiusLabel, wxGBPosition( 5, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxLEFT, 5 );
gbSizer1->Add( m_cornerRadiusLabel, wxGBPosition( 5, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
m_cornerRadiusCtrl =
new wxTextCtrl( m_ExportableSetupSizer->GetStaticBox(), ID_M_CORNERSMOOTHINGCTRL,
wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
gbSizer1->Add( m_cornerRadiusCtrl, wxGBPosition( 5, 1 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxEXPAND, 5 );
m_cornerRadiusCtrl = new wxTextCtrl( m_ExportableSetupSizer->GetStaticBox(), ID_M_CORNERSMOOTHINGCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
gbSizer1->Add( m_cornerRadiusCtrl, wxGBPosition( 5, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
m_cornerRadiusUnits = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY,
_( "mm" ), wxDefaultPosition, wxDefaultSize, 0 );
m_cornerRadiusUnits = new wxStaticText( m_ExportableSetupSizer->GetStaticBox(), wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
m_cornerRadiusUnits->Wrap( -1 );
gbSizer1->Add( m_cornerRadiusUnits, wxGBPosition( 5, 2 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL, 5 );
gbSizer1->Add( m_cornerRadiusUnits, wxGBPosition( 5, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
gbSizer1->AddGrowableCol( 0 );
m_ExportableSetupSizer->Add( gbSizer1, 1, wxEXPAND | wxBOTTOM | wxRIGHT, 5 );
m_ExportableSetupSizer->Add( gbSizer1, 1, wxEXPAND|wxBOTTOM|wxRIGHT, 5 );
bLeftColumn->Add( m_ExportableSetupSizer, 1, wxEXPAND | wxLEFT | wxRIGHT | wxTOP, 10 );
bLeftColumn->Add( m_ExportableSetupSizer, 1, wxEXPAND|wxLEFT|wxRIGHT|wxTOP, 5 );
bSizerMiddle->Add( bLeftColumn, 1, wxEXPAND, 5 );
bSizerMiddle->Add( bLeftColumn, 0, wxBOTTOM|wxEXPAND|wxTOP, 5 );
wxBoxSizer* bMiddleColumn;
bMiddleColumn = new wxBoxSizer( wxVERTICAL );
wxStaticBoxSizer* sbSizer5;
sbSizer5 = new wxStaticBoxSizer(
new wxStaticBox( this, wxID_ANY, _( "Electrical Properties" ) ), wxVERTICAL );
sbSizer5 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Electrical Properties") ), wxVERTICAL );
wxGridBagSizer* gbSizerSettings;
gbSizerSettings = new wxGridBagSizer( 0, 0 );
gbSizerSettings->SetFlexibleDirection( wxBOTH );
gbSizerSettings->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
m_clearanceLabel = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _( "Clearance:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_clearanceLabel = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("Clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
m_clearanceLabel->Wrap( -1 );
m_clearanceLabel->SetToolTip(
_( "Copper clearance for this zone (set to 0 to use the netclass clearance)" ) );
m_clearanceLabel->SetToolTip( _("Copper clearance for this zone (set to 0 to use the netclass clearance)") );
gbSizerSettings->Add( m_clearanceLabel, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxLEFT, 5 );
gbSizerSettings->Add( m_clearanceLabel, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT, 5 );
m_clearanceCtrl = new wxTextCtrl( sbSizer5->GetStaticBox(), wxID_ANY, wxEmptyString,
wxDefaultPosition, wxDefaultSize, 0 );
gbSizerSettings->Add( m_clearanceCtrl, wxGBPosition( 0, 1 ), wxGBSpan( 1, 1 ),
wxEXPAND | wxBOTTOM | wxRIGHT | wxLEFT, 5 );
m_clearanceCtrl = new wxTextCtrl( sbSizer5->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
gbSizerSettings->Add( m_clearanceCtrl, wxGBPosition( 0, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
m_clearanceUnits = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _( "mm" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_clearanceUnits = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
m_clearanceUnits->Wrap( -1 );
gbSizerSettings->Add( m_clearanceUnits, wxGBPosition( 0, 2 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxRIGHT, 5 );
gbSizerSettings->Add( m_clearanceUnits, wxGBPosition( 0, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
m_minWidthLabel = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _( "Minimum width:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_minWidthLabel = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("Minimum width:"), wxDefaultPosition, wxDefaultSize, 0 );
m_minWidthLabel->Wrap( -1 );
m_minWidthLabel->SetToolTip( _( "Minimum thickness of filled areas." ) );
m_minWidthLabel->SetToolTip( _("Minimum thickness of filled areas.") );
gbSizerSettings->Add( m_minWidthLabel, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxLEFT, 5 );
gbSizerSettings->Add( m_minWidthLabel, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT, 5 );
m_minWidthCtrl = new wxTextCtrl( sbSizer5->GetStaticBox(), wxID_ANY, wxEmptyString,
wxDefaultPosition, wxDefaultSize, 0 );
gbSizerSettings->Add( m_minWidthCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ),
wxEXPAND | wxBOTTOM | wxRIGHT | wxLEFT, 5 );
m_minWidthCtrl = new wxTextCtrl( sbSizer5->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
gbSizerSettings->Add( m_minWidthCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
m_minWidthUnits = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _( "mm" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_minWidthUnits = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
m_minWidthUnits->Wrap( -1 );
gbSizerSettings->Add( m_minWidthUnits, wxGBPosition( 1, 2 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxRIGHT, 5 );
gbSizerSettings->Add( m_minWidthUnits, wxGBPosition( 1, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
m_staticline2 = new wxStaticLine( sbSizer5->GetStaticBox(), wxID_ANY, wxDefaultPosition,
wxDefaultSize, wxLI_HORIZONTAL );
gbSizerSettings->Add( m_staticline2, wxGBPosition( 2, 0 ), wxGBSpan( 1, 3 ),
wxBOTTOM | wxEXPAND | wxLEFT | wxRIGHT | wxTOP, 5 );
m_staticline2 = new wxStaticLine( sbSizer5->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
gbSizerSettings->Add( m_staticline2, wxGBPosition( 2, 0 ), wxGBSpan( 1, 3 ), wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT|wxTOP, 5 );
m_connectionLabel =
new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _( "Pad connections:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_connectionLabel = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("Pad connections:"), wxDefaultPosition, wxDefaultSize, 0 );
m_connectionLabel->Wrap( -1 );
m_connectionLabel->SetToolTip( _( "Default pad connection type to zone.\nThis setting can be "
"overridden by local pad settings" ) );
m_connectionLabel->SetToolTip( _("Default pad connection type to zone.\nThis setting can be overridden by local pad settings") );
gbSizerSettings->Add( m_connectionLabel, wxGBPosition( 3, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxTOP | wxLEFT, 5 );
gbSizerSettings->Add( m_connectionLabel, wxGBPosition( 3, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxTOP|wxLEFT, 5 );
wxString m_PadInZoneOptChoices[] = { _( "Solid" ), _( "Thermal reliefs" ),
_( "Reliefs for PTH" ), _( "None" ) };
wxString m_PadInZoneOptChoices[] = { _("Solid"), _("Thermal reliefs"), _("Reliefs for PTH"), _("None") };
int m_PadInZoneOptNChoices = sizeof( m_PadInZoneOptChoices ) / sizeof( wxString );
m_PadInZoneOpt =
new wxChoice( sbSizer5->GetStaticBox(), ID_M_PADINZONEOPT, wxDefaultPosition,
wxDefaultSize, m_PadInZoneOptNChoices, m_PadInZoneOptChoices, 0 );
m_PadInZoneOpt = new wxChoice( sbSizer5->GetStaticBox(), ID_M_PADINZONEOPT, wxDefaultPosition, wxDefaultSize, m_PadInZoneOptNChoices, m_PadInZoneOptChoices, 0 );
m_PadInZoneOpt->SetSelection( 0 );
gbSizerSettings->Add( m_PadInZoneOpt, wxGBPosition( 3, 1 ), wxGBSpan( 1, 1 ),
wxEXPAND | wxTOP | wxRIGHT | wxLEFT | wxALIGN_CENTER_VERTICAL, 5 );
gbSizerSettings->Add( m_PadInZoneOpt, wxGBPosition( 3, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxTOP|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
m_antipadLabel =
new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _( "Thermal relief gap:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_antipadLabel = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("Thermal relief gap:"), wxDefaultPosition, wxDefaultSize, 0 );
m_antipadLabel->Wrap( -1 );
m_antipadLabel->SetToolTip( _( "The distance that will be kept clear between the filled area "
"of the zone and a pad connected by thermal relief spokes." ) );
m_antipadLabel->SetToolTip( _("The distance that will be kept clear between the filled area of the zone and a pad connected by thermal relief spokes.") );
gbSizerSettings->Add( m_antipadLabel, wxGBPosition( 4, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxLEFT | wxTOP, 5 );
gbSizerSettings->Add( m_antipadLabel, wxGBPosition( 4, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT|wxTOP, 5 );
m_antipadCtrl = new wxTextCtrl( sbSizer5->GetStaticBox(), wxID_ANTIPAD_SIZE, wxEmptyString,
wxDefaultPosition, wxDefaultSize, 0 );
m_antipadCtrl->SetToolTip( _( "Clearance between pads in the same net and filled areas." ) );
m_antipadCtrl = new wxTextCtrl( sbSizer5->GetStaticBox(), wxID_ANTIPAD_SIZE, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
m_antipadCtrl->SetToolTip( _("Clearance between pads in the same net and filled areas.") );
gbSizerSettings->Add( m_antipadCtrl, wxGBPosition( 4, 1 ), wxGBSpan( 1, 1 ),
wxEXPAND | wxTOP | wxRIGHT | wxLEFT, 5 );
gbSizerSettings->Add( m_antipadCtrl, wxGBPosition( 4, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
m_antipadUnits = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _( "mm" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_antipadUnits = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
m_antipadUnits->Wrap( -1 );
gbSizerSettings->Add( m_antipadUnits, wxGBPosition( 4, 2 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxTOP | wxRIGHT, 5 );
gbSizerSettings->Add( m_antipadUnits, wxGBPosition( 4, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
m_spokeWidthLabel =
new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _( "Thermal spoke width:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_spokeWidthLabel = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("Thermal spoke width:"), wxDefaultPosition, wxDefaultSize, 0 );
m_spokeWidthLabel->Wrap( -1 );
gbSizerSettings->Add( m_spokeWidthLabel, wxGBPosition( 5, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxLEFT | wxTOP, 5 );
gbSizerSettings->Add( m_spokeWidthLabel, wxGBPosition( 5, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT|wxTOP, 5 );
m_spokeWidthCtrl = new wxTextCtrl( sbSizer5->GetStaticBox(), wxID_COPPER_BRIDGE_VALUE,
wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
m_spokeWidthCtrl->SetToolTip( _( "Width of copper in thermal reliefs." ) );
m_spokeWidthCtrl = new wxTextCtrl( sbSizer5->GetStaticBox(), wxID_COPPER_BRIDGE_VALUE, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
m_spokeWidthCtrl->SetToolTip( _("Width of copper in thermal reliefs.") );
gbSizerSettings->Add( m_spokeWidthCtrl, wxGBPosition( 5, 1 ), wxGBSpan( 1, 1 ),
wxEXPAND | wxALL, 5 );
gbSizerSettings->Add( m_spokeWidthCtrl, wxGBPosition( 5, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxALL, 5 );
m_spokeWidthUnits = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _( "mm" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_spokeWidthUnits = new wxStaticText( sbSizer5->GetStaticBox(), wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
m_spokeWidthUnits->Wrap( -1 );
gbSizerSettings->Add( m_spokeWidthUnits, wxGBPosition( 5, 2 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxTOP | wxBOTTOM | wxRIGHT, 5 );
gbSizerSettings->Add( m_spokeWidthUnits, wxGBPosition( 5, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
gbSizerSettings->AddGrowableCol( 1 );
@ -271,181 +194,122 @@ PANEL_ZONE_PROPERTIES_BASE::PANEL_ZONE_PROPERTIES_BASE( wxWindow* parent, wxWind
sbSizer5->Add( gbSizerSettings, 0, wxEXPAND, 5 );
bMiddleColumn->Add( sbSizer5, 1, wxEXPAND | wxRIGHT | wxTOP, 10 );
bMiddleColumn->Add( sbSizer5, 1, wxEXPAND|wxRIGHT, 5 );
bSizerMiddle->Add( bMiddleColumn, 1, wxEXPAND, 5 );
bSizerMiddle->Add( bMiddleColumn, 1, wxBOTTOM|wxEXPAND|wxTOP, 5 );
wxStaticBoxSizer* sbSizerZoneStyle;
sbSizerZoneStyle =
new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _( "Fill" ) ), wxVERTICAL );
sbSizerZoneStyle = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Fill") ), wxVERTICAL );
wxGridBagSizer* gbSizer3;
gbSizer3 = new wxGridBagSizer( 0, 0 );
gbSizer3 = new wxGridBagSizer( 5, 5 );
gbSizer3->SetFlexibleDirection( wxBOTH );
gbSizer3->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
gbSizer3->SetEmptyCellSize( wxSize( -1, 10 ) );
gbSizer3->SetEmptyCellSize( wxSize( -1,10 ) );
m_staticTextGridFillType =
new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _( "Fill type:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextGridFillType = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Fill type:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextGridFillType->Wrap( -1 );
gbSizer3->Add( m_staticTextGridFillType, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxLEFT, 5 );
gbSizer3->Add( m_staticTextGridFillType, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
wxString m_GridStyleCtrlChoices[] = { _( "Solid fill" ), _( "Hatch pattern" ) };
wxString m_GridStyleCtrlChoices[] = { _("Solid fill"), _("Hatch pattern") };
int m_GridStyleCtrlNChoices = sizeof( m_GridStyleCtrlChoices ) / sizeof( wxString );
m_GridStyleCtrl =
new wxChoice( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxDefaultPosition,
wxDefaultSize, m_GridStyleCtrlNChoices, m_GridStyleCtrlChoices, 0 );
m_GridStyleCtrl = new wxChoice( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_GridStyleCtrlNChoices, m_GridStyleCtrlChoices, 0 );
m_GridStyleCtrl->SetSelection( 0 );
gbSizer3->Add( m_GridStyleCtrl, wxGBPosition( 0, 1 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxEXPAND | wxRIGHT | wxLEFT, 5 );
gbSizer3->Add( m_GridStyleCtrl, wxGBPosition( 0, 1 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 );
m_staticTextGrindOrient =
new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _( "Orientation:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextGrindOrient = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Orientation:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextGrindOrient->Wrap( -1 );
gbSizer3->Add( m_staticTextGrindOrient, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxLEFT | wxTOP, 5 );
gbSizer3->Add( m_staticTextGrindOrient, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT|wxTOP, 5 );
m_tcGridStyleOrientation = new wxTextCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY,
wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
gbSizer3->Add( m_tcGridStyleOrientation, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ),
wxEXPAND | wxALIGN_CENTER_VERTICAL | wxALL, 5 );
m_tcGridStyleOrientation = new wxTextCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
gbSizer3->Add( m_tcGridStyleOrientation, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 );
m_staticTextRotUnits = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _( "deg" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextRotUnits = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("deg"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextRotUnits->Wrap( -1 );
gbSizer3->Add( m_staticTextRotUnits, wxGBPosition( 1, 2 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxTOP | wxBOTTOM | wxRIGHT, 5 );
gbSizer3->Add( m_staticTextRotUnits, wxGBPosition( 1, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxTOP, 5 );
m_staticTextStyleThickness =
new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _( "Hatch width:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextStyleThickness = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Hatch width:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextStyleThickness->Wrap( -1 );
gbSizer3->Add( m_staticTextStyleThickness, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxLEFT, 5 );
gbSizer3->Add( m_staticTextStyleThickness, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
m_tcGridStyleThickness = new wxTextCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY,
wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
gbSizer3->Add( m_tcGridStyleThickness, wxGBPosition( 2, 1 ), wxGBSpan( 1, 1 ),
wxEXPAND | wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxRIGHT | wxLEFT, 5 );
m_tcGridStyleThickness = new wxTextCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
gbSizer3->Add( m_tcGridStyleThickness, wxGBPosition( 2, 1 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 );
m_GridStyleThicknessUnits = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY,
_( "mm" ), wxDefaultPosition, wxDefaultSize, 0 );
m_GridStyleThicknessUnits = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
m_GridStyleThicknessUnits->Wrap( -1 );
gbSizer3->Add( m_GridStyleThicknessUnits, wxGBPosition( 2, 2 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxRIGHT, 5 );
gbSizer3->Add( m_GridStyleThicknessUnits, wxGBPosition( 2, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
m_staticTextGridGap =
new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _( "Hatch gap:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextGridGap = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Hatch gap:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextGridGap->Wrap( -1 );
gbSizer3->Add( m_staticTextGridGap, wxGBPosition( 3, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxLEFT, 5 );
gbSizer3->Add( m_staticTextGridGap, wxGBPosition( 3, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
m_tcGridStyleGap = new wxTextCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString,
wxDefaultPosition, wxDefaultSize, 0 );
gbSizer3->Add( m_tcGridStyleGap, wxGBPosition( 3, 1 ), wxGBSpan( 1, 1 ),
wxEXPAND | wxBOTTOM | wxRIGHT | wxLEFT | wxALIGN_CENTER_VERTICAL, 5 );
m_tcGridStyleGap = new wxTextCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
gbSizer3->Add( m_tcGridStyleGap, wxGBPosition( 3, 1 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 );
m_GridStyleGapUnits = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _( "mm" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_GridStyleGapUnits = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
m_GridStyleGapUnits->Wrap( -1 );
gbSizer3->Add( m_GridStyleGapUnits, wxGBPosition( 3, 2 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxRIGHT, 5 );
gbSizer3->Add( m_GridStyleGapUnits, wxGBPosition( 3, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
m_staticTextGridSmoothingLevel =
new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _( "Smoothing effort:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextGridSmoothingLevel = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Smoothing effort:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextGridSmoothingLevel->Wrap( -1 );
m_staticTextGridSmoothingLevel->SetToolTip(
_( "Value of smoothing effort\n0 = no smoothing\n1 = chamfer\n2 = round corners\n3 = "
"round corners (finer shape)" ) );
m_staticTextGridSmoothingLevel->SetToolTip( _("Value of smoothing effort\n0 = no smoothing\n1 = chamfer\n2 = round corners\n3 = round corners (finer shape)") );
gbSizer3->Add( m_staticTextGridSmoothingLevel, wxGBPosition( 4, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxLEFT, 5 );
gbSizer3->Add( m_staticTextGridSmoothingLevel, wxGBPosition( 4, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
m_spinCtrlSmoothLevel =
new wxSpinCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString,
wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 3, 0 );
gbSizer3->Add( m_spinCtrlSmoothLevel, wxGBPosition( 4, 1 ), wxGBSpan( 1, 1 ),
wxBOTTOM | wxRIGHT | wxLEFT | wxALIGN_CENTER_VERTICAL | wxEXPAND, 5 );
m_spinCtrlSmoothLevel = new wxSpinCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 3, 0 );
gbSizer3->Add( m_spinCtrlSmoothLevel, wxGBPosition( 4, 1 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 );
m_staticTextGridSmootingVal =
new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _( "Smoothing amount:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextGridSmootingVal = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Smoothing amount:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticTextGridSmootingVal->Wrap( -1 );
m_staticTextGridSmootingVal->SetToolTip(
_( "Ratio between smoothed corners size and the gap between lines\n0 = no "
"smoothing\n1.0 = max radius/chamfer size (half gap value)" ) );
m_staticTextGridSmootingVal->SetToolTip( _("Ratio between smoothed corners size and the gap between lines\n0 = no smoothing\n1.0 = max radius/chamfer size (half gap value)") );
gbSizer3->Add( m_staticTextGridSmootingVal, wxGBPosition( 5, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxLEFT, 5 );
gbSizer3->Add( m_staticTextGridSmootingVal, wxGBPosition( 5, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
m_spinCtrlSmoothValue = new wxSpinCtrlDouble( sbSizerZoneStyle->GetStaticBox(), wxID_ANY,
wxEmptyString, wxDefaultPosition, wxDefaultSize,
wxSP_ARROW_KEYS, 0, 1, 0.1, 0.1 );
m_spinCtrlSmoothValue = new wxSpinCtrlDouble( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 0, 1, 0.1, 0.1 );
m_spinCtrlSmoothValue->SetDigits( 2 );
gbSizer3->Add( m_spinCtrlSmoothValue, wxGBPosition( 5, 1 ), wxGBSpan( 1, 1 ),
wxBOTTOM | wxRIGHT | wxLEFT | wxALIGN_CENTER_VERTICAL | wxEXPAND, 5 );
gbSizer3->Add( m_spinCtrlSmoothValue, wxGBPosition( 5, 1 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 );
m_staticline5 = new wxStaticLine( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxDefaultPosition,
wxDefaultSize, wxLI_HORIZONTAL );
gbSizer3->Add( m_staticline5, wxGBPosition( 6, 0 ), wxGBSpan( 1, 3 ),
wxBOTTOM | wxEXPAND | wxLEFT | wxRIGHT | wxTOP, 5 );
m_staticline5 = new wxStaticLine( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
gbSizer3->Add( m_staticline5, wxGBPosition( 6, 0 ), wxGBSpan( 1, 3 ), wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT|wxTOP, 5 );
m_staticText40 =
new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _( "Remove islands:" ),
wxDefaultPosition, wxDefaultSize, 0 );
m_staticText40 = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Remove islands:"), wxDefaultPosition, wxDefaultSize, 0 );
m_staticText40->Wrap( -1 );
m_staticText40->SetToolTip( _( "Choose what to do with unconnected copper islands" ) );
m_staticText40->SetToolTip( _("Choose what to do with unconnected copper islands") );
gbSizer3->Add( m_staticText40, wxGBPosition( 7, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxLEFT | wxTOP, 5 );
gbSizer3->Add( m_staticText40, wxGBPosition( 7, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
wxString m_cbRemoveIslandsChoices[] = { _( "Always" ), _( "Never" ), _( "Below area limit" ) };
wxString m_cbRemoveIslandsChoices[] = { _("Always"), _("Never"), _("Below area limit") };
int m_cbRemoveIslandsNChoices = sizeof( m_cbRemoveIslandsChoices ) / sizeof( wxString );
m_cbRemoveIslands =
new wxChoice( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxDefaultPosition,
wxDefaultSize, m_cbRemoveIslandsNChoices, m_cbRemoveIslandsChoices, 0 );
m_cbRemoveIslands = new wxChoice( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_cbRemoveIslandsNChoices, m_cbRemoveIslandsChoices, 0 );
m_cbRemoveIslands->SetSelection( 0 );
gbSizer3->Add( m_cbRemoveIslands, wxGBPosition( 7, 1 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxALL, 5 );
gbSizer3->Add( m_cbRemoveIslands, wxGBPosition( 7, 1 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 );
m_islandThresholdLabel =
new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY,
_( "Minimum island size:" ), wxDefaultPosition, wxDefaultSize, 0 );
m_islandThresholdLabel = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("Minimum island size:"), wxDefaultPosition, wxDefaultSize, 0 );
m_islandThresholdLabel->Wrap( -1 );
m_islandThresholdLabel->Enable( false );
m_islandThresholdLabel->SetToolTip( _( "Isolated islands smaller than this will be removed" ) );
m_islandThresholdLabel->SetToolTip( _("Isolated islands smaller than this will be removed") );
gbSizer3->Add( m_islandThresholdLabel, wxGBPosition( 8, 0 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxLEFT, 5 );
gbSizer3->Add( m_islandThresholdLabel, wxGBPosition( 8, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
m_tcIslandThreshold = new wxTextCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString,
wxDefaultPosition, wxDefaultSize, 0 );
m_tcIslandThreshold = new wxTextCtrl( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
m_tcIslandThreshold->Enable( false );
gbSizer3->Add( m_tcIslandThreshold, wxGBPosition( 8, 1 ), wxGBSpan( 1, 1 ),
wxEXPAND | wxBOTTOM | wxRIGHT | wxLEFT | wxALIGN_CENTER_VERTICAL, 5 );
gbSizer3->Add( m_tcIslandThreshold, wxGBPosition( 8, 1 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 );
m_islandThresholdUnits = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY,
_( "mm" ), wxDefaultPosition, wxDefaultSize, 0 );
m_islandThresholdUnits = new wxStaticText( sbSizerZoneStyle->GetStaticBox(), wxID_ANY, _("mm"), wxDefaultPosition, wxDefaultSize, 0 );
m_islandThresholdUnits->Wrap( -1 );
m_islandThresholdUnits->Enable( false );
gbSizer3->Add( m_islandThresholdUnits, wxGBPosition( 8, 2 ), wxGBSpan( 1, 1 ),
wxALIGN_CENTER_VERTICAL | wxBOTTOM | wxRIGHT, 5 );
gbSizer3->Add( m_islandThresholdUnits, wxGBPosition( 8, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
gbSizer3->AddGrowableCol( 0 );
sbSizerZoneStyle->Add( gbSizer3, 1, wxEXPAND | wxBOTTOM, 5 );
sbSizerZoneStyle->Add( gbSizer3, 1, wxBOTTOM|wxEXPAND, 5 );
bSizerMiddle->Add( sbSizerZoneStyle, 1, wxEXPAND | wxTOP | wxRIGHT, 10 );
bSizerMiddle->Add( sbSizerZoneStyle, 0, wxBOTTOM|wxEXPAND|wxRIGHT|wxTOP, 5 );
this->SetSizer( bSizerMiddle );
@ -453,33 +317,18 @@ PANEL_ZONE_PROPERTIES_BASE::PANEL_ZONE_PROPERTIES_BASE( wxWindow* parent, wxWind
bSizerMiddle->Fit( this );
// Connect Events
this->Connect( wxEVT_UPDATE_UI,
wxUpdateUIEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnUpdateUI ) );
m_tcZoneName->Connect( wxEVT_COMMAND_TEXT_UPDATED,
wxCommandEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnZoneNameChanged ),
NULL, this );
m_GridStyleCtrl->Connect( wxEVT_COMMAND_CHOICE_SELECTED,
wxCommandEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnStyleSelection ),
NULL, this );
m_cbRemoveIslands->Connect(
wxEVT_COMMAND_CHOICE_SELECTED,
wxCommandEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnRemoveIslandsSelection ), NULL,
this );
this->Connect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnUpdateUI ) );
m_tcZoneName->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnZoneNameChanged ), NULL, this );
m_GridStyleCtrl->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnStyleSelection ), NULL, this );
m_cbRemoveIslands->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnRemoveIslandsSelection ), NULL, this );
}
PANEL_ZONE_PROPERTIES_BASE::~PANEL_ZONE_PROPERTIES_BASE()
{
// Disconnect Events
this->Disconnect( wxEVT_UPDATE_UI,
wxUpdateUIEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnUpdateUI ) );
m_tcZoneName->Disconnect(
wxEVT_COMMAND_TEXT_UPDATED,
wxCommandEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnZoneNameChanged ), NULL, this );
m_GridStyleCtrl->Disconnect(
wxEVT_COMMAND_CHOICE_SELECTED,
wxCommandEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnStyleSelection ), NULL, this );
m_cbRemoveIslands->Disconnect(
wxEVT_COMMAND_CHOICE_SELECTED,
wxCommandEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnRemoveIslandsSelection ), NULL,
this );
this->Disconnect( wxEVT_UPDATE_UI, wxUpdateUIEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnUpdateUI ) );
m_tcZoneName->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnZoneNameChanged ), NULL, this );
m_GridStyleCtrl->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnStyleSelection ), NULL, this );
m_cbRemoveIslands->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( PANEL_ZONE_PROPERTIES_BASE::OnRemoveIslandsSelection ), NULL, this );
}

View File

@ -61,7 +61,7 @@
<property name="permission">none</property>
<object class="sizeritem" expanded="true">
<property name="border">5</property>
<property name="flag">wxEXPAND</property>
<property name="flag">wxBOTTOM|wxEXPAND|wxTOP</property>
<property name="proportion">0</property>
<object class="wxBoxSizer" expanded="true">
<property name="minimum_size"></property>
@ -69,8 +69,8 @@
<property name="orient">wxVERTICAL</property>
<property name="permission">none</property>
<object class="sizeritem" expanded="true">
<property name="border">10</property>
<property name="flag">wxEXPAND|wxTOP|wxRIGHT|wxLEFT</property>
<property name="border">5</property>
<property name="flag">wxEXPAND|wxLEFT|wxRIGHT</property>
<property name="proportion">0</property>
<object class="wxStaticBoxSizer" expanded="true">
<property name="id">wxID_ANY</property>
@ -160,7 +160,7 @@
</object>
<object class="sizeritem" expanded="false">
<property name="border">5</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxEXPAND|wxLEFT|wxRIGHT</property>
<property name="proportion">0</property>
<object class="wxTextCtrl" expanded="false">
<property name="BottomDockable">1</property>
@ -229,7 +229,7 @@
</object>
</object>
<object class="sizeritem" expanded="true">
<property name="border">10</property>
<property name="border">5</property>
<property name="flag">wxEXPAND|wxLEFT|wxRIGHT|wxTOP</property>
<property name="proportion">1</property>
<object class="wxStaticBoxSizer" expanded="true">
@ -392,7 +392,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">1</property>
<property name="flag">wxALL</property>
<property name="flag"></property>
<property name="row">1</property>
<property name="rowspan">1</property>
<object class="wxChoice" expanded="true">
@ -1055,7 +1055,7 @@
</object>
<object class="sizeritem" expanded="true">
<property name="border">5</property>
<property name="flag">wxEXPAND</property>
<property name="flag">wxBOTTOM|wxEXPAND|wxTOP</property>
<property name="proportion">1</property>
<object class="wxBoxSizer" expanded="true">
<property name="minimum_size"></property>
@ -1063,8 +1063,8 @@
<property name="orient">wxVERTICAL</property>
<property name="permission">none</property>
<object class="sizeritem" expanded="true">
<property name="border">10</property>
<property name="flag">wxEXPAND|wxRIGHT|wxTOP</property>
<property name="border">5</property>
<property name="flag">wxEXPAND|wxRIGHT</property>
<property name="proportion">1</property>
<object class="wxStaticBoxSizer" expanded="true">
<property name="id">wxID_ANY</property>
@ -2083,8 +2083,8 @@
</object>
</object>
<object class="sizeritem" expanded="true">
<property name="border">10</property>
<property name="flag">wxEXPAND|wxTOP|wxRIGHT</property>
<property name="border">5</property>
<property name="flag">wxBOTTOM|wxEXPAND|wxRIGHT|wxTOP</property>
<property name="proportion">0</property>
<object class="wxStaticBoxSizer" expanded="true">
<property name="id">wxID_ANY</property>
@ -2094,21 +2094,21 @@
<property name="orient">wxVERTICAL</property>
<property name="parent">1</property>
<property name="permission">none</property>
<object class="sizeritem" expanded="false">
<object class="sizeritem" expanded="true">
<property name="border">5</property>
<property name="flag">wxEXPAND|wxBOTTOM</property>
<property name="flag">wxBOTTOM|wxEXPAND</property>
<property name="proportion">1</property>
<object class="wxGridBagSizer" expanded="false">
<object class="wxGridBagSizer" expanded="true">
<property name="empty_cell_size">-1,10</property>
<property name="flexible_direction">wxBOTH</property>
<property name="growablecols">0</property>
<property name="growablerows"></property>
<property name="hgap">0</property>
<property name="hgap">5</property>
<property name="minimum_size"></property>
<property name="name">gbSizer3</property>
<property name="non_flexible_grow_mode">wxFLEX_GROWMODE_SPECIFIED</property>
<property name="permission">none</property>
<property name="vgap">0</property>
<property name="vgap">5</property>
<object class="gbsizeritem" expanded="false">
<property name="border">5</property>
<property name="colspan">1</property>
@ -2178,7 +2178,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">1</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT</property>
<property name="flag">wxEXPAND</property>
<property name="row">0</property>
<property name="rowspan">1</property>
<object class="wxChoice" expanded="false">
@ -2247,7 +2247,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">0</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT|wxTOP</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxLEFT|wxTOP</property>
<property name="row">1</property>
<property name="rowspan">1</property>
<object class="wxStaticText" expanded="false">
@ -2312,7 +2312,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">1</property>
<property name="flag">wxEXPAND|wxALIGN_CENTER_VERTICAL|wxALL</property>
<property name="flag">wxEXPAND</property>
<property name="row">1</property>
<property name="rowspan">1</property>
<object class="wxTextCtrl" expanded="false">
@ -2380,7 +2380,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">2</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxRIGHT|wxTOP</property>
<property name="row">1</property>
<property name="rowspan">1</property>
<object class="wxStaticText" expanded="false">
@ -2445,7 +2445,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">0</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxLEFT</property>
<property name="row">2</property>
<property name="rowspan">1</property>
<object class="wxStaticText" expanded="false">
@ -2510,7 +2510,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">1</property>
<property name="flag">wxEXPAND|wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT</property>
<property name="flag">wxEXPAND</property>
<property name="row">2</property>
<property name="rowspan">1</property>
<object class="wxTextCtrl" expanded="false">
@ -2578,7 +2578,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">2</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxRIGHT</property>
<property name="row">2</property>
<property name="rowspan">1</property>
<object class="wxStaticText" expanded="false">
@ -2643,7 +2643,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">0</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxLEFT</property>
<property name="row">3</property>
<property name="rowspan">1</property>
<object class="wxStaticText" expanded="false">
@ -2708,7 +2708,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">1</property>
<property name="flag">wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL</property>
<property name="flag">wxEXPAND</property>
<property name="row">3</property>
<property name="rowspan">1</property>
<object class="wxTextCtrl" expanded="false">
@ -2776,7 +2776,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">2</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxRIGHT</property>
<property name="row">3</property>
<property name="rowspan">1</property>
<object class="wxStaticText" expanded="false">
@ -2841,7 +2841,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">0</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxLEFT</property>
<property name="row">4</property>
<property name="rowspan">1</property>
<object class="wxStaticText" expanded="false">
@ -2906,7 +2906,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">1</property>
<property name="flag">wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL|wxEXPAND</property>
<property name="flag">wxEXPAND</property>
<property name="row">4</property>
<property name="rowspan">1</property>
<object class="wxSpinCtrl" expanded="false">
@ -2972,7 +2972,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">0</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxLEFT</property>
<property name="row">5</property>
<property name="rowspan">1</property>
<object class="wxStaticText" expanded="false">
@ -3037,7 +3037,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">1</property>
<property name="flag">wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL|wxEXPAND</property>
<property name="flag">wxEXPAND</property>
<property name="row">5</property>
<property name="rowspan">1</property>
<object class="wxSpinCtrlDouble" expanded="false">
@ -3167,7 +3167,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">0</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT|wxTOP</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxLEFT</property>
<property name="row">7</property>
<property name="rowspan">1</property>
<object class="wxStaticText" expanded="false">
@ -3232,7 +3232,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">1</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxALL</property>
<property name="flag">wxEXPAND</property>
<property name="row">7</property>
<property name="rowspan">1</property>
<object class="wxChoice" expanded="false">
@ -3301,7 +3301,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">0</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxLEFT</property>
<property name="row">8</property>
<property name="rowspan">1</property>
<object class="wxStaticText" expanded="false">
@ -3366,7 +3366,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">1</property>
<property name="flag">wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL</property>
<property name="flag">wxEXPAND</property>
<property name="row">8</property>
<property name="rowspan">1</property>
<object class="wxTextCtrl" expanded="false">
@ -3434,7 +3434,7 @@
<property name="border">5</property>
<property name="colspan">1</property>
<property name="column">2</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT</property>
<property name="flag">wxALIGN_CENTER_VERTICAL|wxRIGHT</property>
<property name="row">8</property>
<property name="rowspan">1</property>
<object class="wxStaticText" expanded="false">

View File

@ -33,8 +33,9 @@
///////////////////////////////////////////////////////////////////////////////
class PANEL_ZONE_PROPERTIES_BASE : public wxPanel
{
private:
protected:
private:
protected:
enum
{
EDIT_ZONE_NAME = 1000,
@ -103,11 +104,11 @@ protected:
virtual void OnRemoveIslandsSelection( wxCommandEvent& event ) { event.Skip(); }
public:
PANEL_ZONE_PROPERTIES_BASE( wxWindow* parent, wxWindowID id = wxID_ANY,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxSize( -1, -1 ), long style = wxTAB_TRAVERSAL,
const wxString& name = wxEmptyString );
public:
PANEL_ZONE_PROPERTIES_BASE( wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxTAB_TRAVERSAL, const wxString& name = wxEmptyString );
~PANEL_ZONE_PROPERTIES_BASE();
};