KiCad PCB EDA Suite
Loading...
Searching...
No Matches
PANEL_ZONE_PROPERTIES Class Reference

#include <panel_zone_properties.h>

Inheritance diagram for PANEL_ZONE_PROPERTIES:
PANEL_ZONE_PROPERTIES_BASE ZONE_SELECTION_CHANGE_NOTIFIER ZONE_MANAGEMENT_BASE

Public Member Functions

 PANEL_ZONE_PROPERTIES (wxWindow *aParent, PCB_BASE_FRAME *aPcb, ZONES_CONTAINER &aZoneContainer)
 
void ActivateSelectedZone (ZONE *new_zone) override
 
void OnUserConfirmChange () override
 
std::shared_ptr< ZONE_SETTINGSGetZoneSettings () const
 
ZONEGetZone () const
 
void OnZoneSelectionChanged (ZONE *aZone)
 Inform the subscriber about the zone selection change.
 
ZONEGetSelectedZone () const
 

Protected Types

enum  {
  EDIT_ZONE_NAME = 1000 , ID_M_CORNERSMOOTHINGCTRL , ID_CORNER_SMOOTHING , ID_M_PADINZONEOPT ,
  wxID_ANTIPAD_SIZE , wxID_COPPER_BRIDGE_VALUE
}
 

Protected Attributes

wxStaticText * m_zoneNameLabel
 
wxTextCtrl * m_tcZoneName
 
wxCheckBox * m_cbLocked
 
wxStaticText * m_staticTextStyle
 
wxChoice * m_OutlineDisplayCtrl
 
wxStaticText * m_stBorderHatchPitchText
 
wxTextCtrl * m_outlineHatchPitchCtrl
 
wxStaticText * m_outlineHatchUnits
 
wxStaticLine * m_staticline4
 
wxStaticText * m_staticTextSmoothing
 
wxChoice * m_cornerSmoothingChoice
 
wxStaticText * m_cornerRadiusLabel
 
wxTextCtrl * m_cornerRadiusCtrl
 
wxStaticText * m_cornerRadiusUnits
 
wxStaticText * m_clearanceLabel
 
wxTextCtrl * m_clearanceCtrl
 
wxStaticText * m_clearanceUnits
 
wxStaticText * m_minWidthLabel
 
wxTextCtrl * m_minWidthCtrl
 
wxStaticText * m_minWidthUnits
 
wxStaticLine * m_staticline2
 
wxStaticText * m_connectionLabel
 
wxChoice * m_PadInZoneOpt
 
wxStaticText * m_antipadLabel
 
wxTextCtrl * m_antipadCtrl
 
wxStaticText * m_antipadUnits
 
wxStaticText * m_spokeWidthLabel
 
wxTextCtrl * m_spokeWidthCtrl
 
wxStaticText * m_spokeWidthUnits
 
wxStaticText * m_staticTextGridFillType
 
wxChoice * m_GridStyleCtrl
 
wxStaticText * m_staticTextGrindOrient
 
wxTextCtrl * m_tcGridStyleOrientation
 
wxStaticText * m_staticTextRotUnits
 
wxStaticText * m_staticTextStyleThickness
 
wxTextCtrl * m_tcGridStyleThickness
 
wxStaticText * m_GridStyleThicknessUnits
 
wxStaticText * m_staticTextGridGap
 
wxTextCtrl * m_tcGridStyleGap
 
wxStaticText * m_GridStyleGapUnits
 
wxStaticText * m_staticTextGridSmoothingLevel
 
wxSpinCtrl * m_spinCtrlSmoothLevel
 
wxStaticText * m_staticTextGridSmootingVal
 
wxSpinCtrlDouble * m_spinCtrlSmoothValue
 
wxStaticLine * m_staticline5
 
wxStaticText * m_staticText40
 
wxChoice * m_cbRemoveIslands
 
wxStaticText * m_islandThresholdLabel
 
wxTextCtrl * m_tcIslandThreshold
 
wxStaticText * m_islandThresholdUnits
 

Private Member Functions

bool TransferZoneSettingsToWindow ()
 
bool TransferZoneSettingsFromWindow ()
 
bool AcceptOptions (bool aUseExportableSetupOnly=false)
 
void OnStyleSelection (wxCommandEvent &event) override
 
void OnUpdateUI (wxUpdateUIEvent &) override
 
void OnRemoveIslandsSelection (wxCommandEvent &event) override
 
void OnZoneNameChanged (wxCommandEvent &event) override
 

Private Attributes

ZONES_CONTAINERm_ZoneContainer
 
PCB_BASE_FRAMEm_PCB_Frame
 
std::shared_ptr< ZONE_SETTINGSm_settings
 
int m_cornerSmoothingType
 
UNIT_BINDER m_outlineHatchPitch
 
UNIT_BINDER m_cornerRadius
 
UNIT_BINDER m_clearance
 
UNIT_BINDER m_minThickness
 
UNIT_BINDER m_antipadClearance
 
UNIT_BINDER m_spokeWidth
 
UNIT_BINDER m_gridStyleRotation
 
UNIT_BINDER m_gridStyleThickness
 
UNIT_BINDER m_gridStyleGap
 
UNIT_BINDER m_islandThreshold
 
bool m_isTeardrop
 
ZONEm_zone {}
 

Static Private Attributes

static constexpr int INVALID_NET_CODE { 0 }
 
static constexpr int DEFAULT_SORT_CONFIG { -1 }
 
static constexpr int NO_PERSISTENT_SORT_MODE { 0 }
 
static constexpr int HIDE_ANONYMOUS_NETS { 1 << 0 }
 
static constexpr int SORT_BY_PAD_COUNT { 1 << 1 }
 

Detailed Description

Definition at line 43 of file panel_zone_properties.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
EDIT_ZONE_NAME 
ID_M_CORNERSMOOTHINGCTRL 
ID_CORNER_SMOOTHING 
ID_M_PADINZONEOPT 
wxID_ANTIPAD_SIZE 
wxID_COPPER_BRIDGE_VALUE 

Definition at line 39 of file panel_zone_properties_base.h.

Constructor & Destructor Documentation

◆ PANEL_ZONE_PROPERTIES()

PANEL_ZONE_PROPERTIES::PANEL_ZONE_PROPERTIES ( wxWindow *  aParent,
PCB_BASE_FRAME aPcb,
ZONES_CONTAINER aZoneContainer 
)

Member Function Documentation

◆ AcceptOptions()

◆ ActivateSelectedZone()

void PANEL_ZONE_PROPERTIES::ActivateSelectedZone ( ZONE new_zone)
overridevirtual

◆ GetSelectedZone()

ZONE * ZONE_SELECTION_CHANGE_NOTIFIER::GetSelectedZone ( ) const
inlineinherited

◆ GetZone()

ZONE * ZONE_SELECTION_CHANGE_NOTIFIER::GetZone ( ) const
inlineinherited

◆ GetZoneSettings()

std::shared_ptr< ZONE_SETTINGS > PANEL_ZONE_PROPERTIES::GetZoneSettings ( ) const
inline

Definition at line 56 of file panel_zone_properties.h.

References m_settings.

Referenced by DIALOG_ZONE_MANAGER::OnOk().

◆ OnRemoveIslandsSelection()

void PANEL_ZONE_PROPERTIES::OnRemoveIslandsSelection ( wxCommandEvent &  event)
overrideprivatevirtual

◆ OnStyleSelection()

◆ OnUpdateUI()

◆ OnUserConfirmChange()

void PANEL_ZONE_PROPERTIES::OnUserConfirmChange ( )
overridevirtual

Implements ZONE_MANAGEMENT_BASE.

Definition at line 90 of file panel_zone_properties.cpp.

References TransferZoneSettingsFromWindow().

◆ OnZoneNameChanged()

void PANEL_ZONE_PROPERTIES::OnZoneNameChanged ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from PANEL_ZONE_PROPERTIES_BASE.

Definition at line 201 of file panel_zone_properties.cpp.

References PANEL_ZONE_PROPERTIES_BASE::m_tcZoneName.

◆ OnZoneSelectionChanged()

void ZONE_SELECTION_CHANGE_NOTIFIER::OnZoneSelectionChanged ( ZONE aZone)
inlineinherited

Inform the subscriber about the zone selection change.

Parameters
aZoneThe current zone selection from the publisher

Definition at line 46 of file zone_selection_change_notifier.h.

References ZONE_SELECTION_CHANGE_NOTIFIER::ActivateSelectedZone(), and ZONE_SELECTION_CHANGE_NOTIFIER::m_zone.

◆ TransferZoneSettingsFromWindow()

◆ TransferZoneSettingsToWindow()

Member Data Documentation

◆ DEFAULT_SORT_CONFIG

constexpr int PANEL_ZONE_PROPERTIES::DEFAULT_SORT_CONFIG { -1 }
staticconstexprprivate

Definition at line 62 of file panel_zone_properties.h.

◆ HIDE_ANONYMOUS_NETS

constexpr int PANEL_ZONE_PROPERTIES::HIDE_ANONYMOUS_NETS { 1 << 0 }
staticconstexprprivate

Definition at line 64 of file panel_zone_properties.h.

◆ INVALID_NET_CODE

constexpr int PANEL_ZONE_PROPERTIES::INVALID_NET_CODE { 0 }
staticconstexprprivate

Definition at line 60 of file panel_zone_properties.h.

◆ m_antipadClearance

UNIT_BINDER PANEL_ZONE_PROPERTIES::m_antipadClearance
private

Definition at line 95 of file panel_zone_properties.h.

Referenced by AcceptOptions(), and TransferZoneSettingsToWindow().

◆ m_antipadCtrl

wxTextCtrl* PANEL_ZONE_PROPERTIES_BASE::m_antipadCtrl
protectedinherited

◆ m_antipadLabel

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_antipadLabel
protectedinherited

◆ m_antipadUnits

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_antipadUnits
protectedinherited

◆ m_cbLocked

wxCheckBox* PANEL_ZONE_PROPERTIES_BASE::m_cbLocked
protectedinherited

◆ m_cbRemoveIslands

◆ m_clearance

UNIT_BINDER PANEL_ZONE_PROPERTIES::m_clearance
private

Definition at line 93 of file panel_zone_properties.h.

Referenced by AcceptOptions(), and TransferZoneSettingsToWindow().

◆ m_clearanceCtrl

wxTextCtrl* PANEL_ZONE_PROPERTIES_BASE::m_clearanceCtrl
protectedinherited

◆ m_clearanceLabel

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_clearanceLabel
protectedinherited

◆ m_clearanceUnits

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_clearanceUnits
protectedinherited

◆ m_connectionLabel

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_connectionLabel
protectedinherited

◆ m_cornerRadius

UNIT_BINDER PANEL_ZONE_PROPERTIES::m_cornerRadius
private

Definition at line 92 of file panel_zone_properties.h.

Referenced by AcceptOptions(), and TransferZoneSettingsToWindow().

◆ m_cornerRadiusCtrl

wxTextCtrl* PANEL_ZONE_PROPERTIES_BASE::m_cornerRadiusCtrl
protectedinherited

◆ m_cornerRadiusLabel

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_cornerRadiusLabel
protectedinherited

◆ m_cornerRadiusUnits

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_cornerRadiusUnits
protectedinherited

◆ m_cornerSmoothingChoice

wxChoice* PANEL_ZONE_PROPERTIES_BASE::m_cornerSmoothingChoice
protectedinherited

◆ m_cornerSmoothingType

int PANEL_ZONE_PROPERTIES::m_cornerSmoothingType
private

Definition at line 89 of file panel_zone_properties.h.

Referenced by OnUpdateUI().

◆ m_GridStyleCtrl

◆ m_gridStyleGap

UNIT_BINDER PANEL_ZONE_PROPERTIES::m_gridStyleGap
private

◆ m_GridStyleGapUnits

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_GridStyleGapUnits
protectedinherited

◆ m_gridStyleRotation

UNIT_BINDER PANEL_ZONE_PROPERTIES::m_gridStyleRotation
private

◆ m_gridStyleThickness

UNIT_BINDER PANEL_ZONE_PROPERTIES::m_gridStyleThickness
private

◆ m_GridStyleThicknessUnits

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_GridStyleThicknessUnits
protectedinherited

◆ m_islandThreshold

UNIT_BINDER PANEL_ZONE_PROPERTIES::m_islandThreshold
private

◆ m_islandThresholdLabel

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_islandThresholdLabel
protectedinherited

◆ m_islandThresholdUnits

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_islandThresholdUnits
protectedinherited

◆ m_isTeardrop

bool PANEL_ZONE_PROPERTIES::m_isTeardrop
private

Definition at line 102 of file panel_zone_properties.h.

Referenced by ActivateSelectedZone(), and TransferZoneSettingsToWindow().

◆ m_minThickness

UNIT_BINDER PANEL_ZONE_PROPERTIES::m_minThickness
private

Definition at line 94 of file panel_zone_properties.h.

Referenced by AcceptOptions(), and TransferZoneSettingsToWindow().

◆ m_minWidthCtrl

wxTextCtrl* PANEL_ZONE_PROPERTIES_BASE::m_minWidthCtrl
protectedinherited

◆ m_minWidthLabel

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_minWidthLabel
protectedinherited

◆ m_minWidthUnits

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_minWidthUnits
protectedinherited

◆ m_OutlineDisplayCtrl

wxChoice* PANEL_ZONE_PROPERTIES_BASE::m_OutlineDisplayCtrl
protectedinherited

◆ m_outlineHatchPitch

UNIT_BINDER PANEL_ZONE_PROPERTIES::m_outlineHatchPitch
private

Definition at line 90 of file panel_zone_properties.h.

Referenced by AcceptOptions(), and TransferZoneSettingsToWindow().

◆ m_outlineHatchPitchCtrl

wxTextCtrl* PANEL_ZONE_PROPERTIES_BASE::m_outlineHatchPitchCtrl
protectedinherited

◆ m_outlineHatchUnits

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_outlineHatchUnits
protectedinherited

◆ m_PadInZoneOpt

wxChoice* PANEL_ZONE_PROPERTIES_BASE::m_PadInZoneOpt
protectedinherited

◆ m_PCB_Frame

PCB_BASE_FRAME* PANEL_ZONE_PROPERTIES::m_PCB_Frame
private

Definition at line 85 of file panel_zone_properties.h.

◆ m_settings

std::shared_ptr<ZONE_SETTINGS> PANEL_ZONE_PROPERTIES::m_settings
private

◆ m_spinCtrlSmoothLevel

wxSpinCtrl* PANEL_ZONE_PROPERTIES_BASE::m_spinCtrlSmoothLevel
protectedinherited

◆ m_spinCtrlSmoothValue

wxSpinCtrlDouble* PANEL_ZONE_PROPERTIES_BASE::m_spinCtrlSmoothValue
protectedinherited

◆ m_spokeWidth

UNIT_BINDER PANEL_ZONE_PROPERTIES::m_spokeWidth
private

Definition at line 96 of file panel_zone_properties.h.

Referenced by AcceptOptions(), and TransferZoneSettingsToWindow().

◆ m_spokeWidthCtrl

wxTextCtrl* PANEL_ZONE_PROPERTIES_BASE::m_spokeWidthCtrl
protectedinherited

◆ m_spokeWidthLabel

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_spokeWidthLabel
protectedinherited

◆ m_spokeWidthUnits

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_spokeWidthUnits
protectedinherited

◆ m_staticline2

wxStaticLine* PANEL_ZONE_PROPERTIES_BASE::m_staticline2
protectedinherited

◆ m_staticline4

wxStaticLine* PANEL_ZONE_PROPERTIES_BASE::m_staticline4
protectedinherited

◆ m_staticline5

wxStaticLine* PANEL_ZONE_PROPERTIES_BASE::m_staticline5
protectedinherited

◆ m_staticText40

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_staticText40
protectedinherited

◆ m_staticTextGridFillType

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_staticTextGridFillType
protectedinherited

◆ m_staticTextGridGap

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_staticTextGridGap
protectedinherited

◆ m_staticTextGridSmoothingLevel

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_staticTextGridSmoothingLevel
protectedinherited

◆ m_staticTextGridSmootingVal

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_staticTextGridSmootingVal
protectedinherited

◆ m_staticTextGrindOrient

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_staticTextGrindOrient
protectedinherited

◆ m_staticTextRotUnits

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_staticTextRotUnits
protectedinherited

◆ m_staticTextSmoothing

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_staticTextSmoothing
protectedinherited

◆ m_staticTextStyle

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_staticTextStyle
protectedinherited

◆ m_staticTextStyleThickness

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_staticTextStyleThickness
protectedinherited

◆ m_stBorderHatchPitchText

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_stBorderHatchPitchText
protectedinherited

◆ m_tcGridStyleGap

wxTextCtrl* PANEL_ZONE_PROPERTIES_BASE::m_tcGridStyleGap
protectedinherited

◆ m_tcGridStyleOrientation

wxTextCtrl* PANEL_ZONE_PROPERTIES_BASE::m_tcGridStyleOrientation
protectedinherited

◆ m_tcGridStyleThickness

wxTextCtrl* PANEL_ZONE_PROPERTIES_BASE::m_tcGridStyleThickness
protectedinherited

◆ m_tcIslandThreshold

wxTextCtrl* PANEL_ZONE_PROPERTIES_BASE::m_tcIslandThreshold
protectedinherited

◆ m_tcZoneName

◆ m_zone

◆ m_ZoneContainer

ZONES_CONTAINER& PANEL_ZONE_PROPERTIES::m_ZoneContainer
private

Definition at line 84 of file panel_zone_properties.h.

Referenced by ActivateSelectedZone().

◆ m_zoneNameLabel

wxStaticText* PANEL_ZONE_PROPERTIES_BASE::m_zoneNameLabel
protectedinherited

◆ NO_PERSISTENT_SORT_MODE

constexpr int PANEL_ZONE_PROPERTIES::NO_PERSISTENT_SORT_MODE { 0 }
staticconstexprprivate

Definition at line 63 of file panel_zone_properties.h.

◆ SORT_BY_PAD_COUNT

constexpr int PANEL_ZONE_PROPERTIES::SORT_BY_PAD_COUNT { 1 << 1 }
staticconstexprprivate

Definition at line 65 of file panel_zone_properties.h.


The documentation for this class was generated from the following files: