KiCad PCB EDA Suite
DIALOG_LAYERS_SETUP Class Reference
Inheritance diagram for DIALOG_LAYERS_SETUP:
DIALOG_LAYERS_SETUP_BASE DIALOG_SHIM KIWAY_HOLDER

Public Member Functions

 DIALOG_LAYERS_SETUP (wxTopLevelWindow *aCaller, BOARD *aBoard)
 
int ShowQuasiModal ()
 
void EndQuasiModal (int retCode)
 
bool IsQuasiModal ()
 
bool Show (bool show) override
 
bool Enable (bool enable) override
 
KIWAYKiway () const
 Function Kiway returns a reference to the KIWAY that this object has an opportunity to participate in. More...
 
PROJECTPrj () const
 Function Prj returns a reference to the PROJECT "associated with" this KIWAY. More...
 
void SetKiway (wxWindow *aDest, KIWAY *aKiway)
 Function SetKiway. More...
 

Protected Member Functions

void FinishDialogSettings ()
 In all dialogs, we must call the same functions to fix minimal dlg size, the default position and perhaps some others to fix a few issues depending on Windows Managers this helper function does these calls. More...
 
void FixOSXCancelButtonIssue ()
 A ugly hack to fix an issue on OSX: when typing ctrl+c in a wxTextCtrl inside a dialog, it is closed instead of copying a text if a button with wxID_CANCEL is used in a wxStdDialogButtonSizer, when the dlg is created by wxFormBuilder: the label is &Cancel, and this accelerator key has priority to copy text standard accelerator, and the dlg is closed when trying to copy text this function do nothing on other platforms. More...
 

Protected Attributes

wxStaticText * m_staticTextGrouping
 
wxChoice * m_PresetsChoice
 
wxStaticText * m_staticTextCopperLayers
 
wxChoice * m_CopperLayersChoice
 
wxStaticText * m_staticTextBrdThickness
 
wxTextCtrl * m_textCtrlBrdThickness
 
wxStaticText * m_staticTextBrdThicknessUnit
 
wxStaticText * m_staticTextLayers
 
wxPanel * m_TitlePanel
 
wxScrolledWindow * m_LayersListPanel
 
wxFlexGridSizer * m_LayerListFlexGridSizer
 
wxStaticText * m_CrtYdFrontName
 
wxPanel * m_CrtYdFrontPanel
 
wxCheckBox * m_CrtYdFrontCheckBox
 
wxStaticText * m_CrtYdFrontStaticText
 
wxStaticText * m_FabFrontName
 
wxPanel * m_FabFrontPanel
 
wxCheckBox * m_FabFrontCheckBox
 
wxStaticText * m_FabFrontStaticText
 
wxStaticText * m_AdhesFrontName
 
wxPanel * m_AdhesFrontPanel
 
wxCheckBox * m_AdhesFrontCheckBox
 
wxStaticText * m_AdhesFrontStaticText
 
wxStaticText * m_SoldPFrontName
 
wxPanel * m_SoldPFrontPanel
 
wxCheckBox * m_SoldPFrontCheckBox
 
wxStaticText * m_SoldPFrontStaticText
 
wxStaticText * m_SilkSFrontName
 
wxPanel * m_SilkSFrontPanel
 
wxCheckBox * m_SilkSFrontCheckBox
 
wxStaticText * m_SilkSFrontStaticText
 
wxStaticText * m_MaskFrontName
 
wxPanel * m_MaskFrontPanel
 
wxCheckBox * m_MaskFrontCheckBox
 
wxStaticText * m_MaskFrontStaticText
 
wxTextCtrl * m_FrontName
 
wxPanel * m_FrontPanel
 
wxCheckBox * m_FrontCheckBox
 
wxChoice * m_FrontChoice
 
wxTextCtrl * m_In1Name
 
wxPanel * m_In1Panel
 
wxCheckBox * m_In1CheckBox
 
wxChoice * m_In1Choice
 
wxTextCtrl * m_In2Name
 
wxPanel * m_In2Panel
 
wxCheckBox * m_In2CheckBox
 
wxChoice * m_In2Choice
 
wxTextCtrl * m_In3Name
 
wxPanel * m_In3Panel
 
wxCheckBox * m_In3CheckBox
 
wxChoice * m_In3Choice
 
wxTextCtrl * m_In4Name
 
wxPanel * m_In4Panel
 
wxCheckBox * m_In4CheckBox
 
wxChoice * m_In4Choice
 
wxTextCtrl * m_In5Name
 
wxPanel * m_In5Panel
 
wxCheckBox * m_In5CheckBox
 
wxChoice * m_In5Choice
 
wxTextCtrl * m_In6Name
 
wxPanel * m_In6Panel
 
wxCheckBox * m_In6CheckBox
 
wxChoice * m_In6Choice
 
wxTextCtrl * m_In7Name
 
wxPanel * m_In7Panel
 
wxCheckBox * m_In7CheckBox
 
wxChoice * m_In7Choice
 
wxTextCtrl * m_In8Name
 
wxPanel * m_In8Panel
 
wxCheckBox * m_In8CheckBox
 
wxChoice * m_In8Choice
 
wxTextCtrl * m_In9Name
 
wxPanel * m_In9Panel
 
wxCheckBox * m_In9CheckBox
 
wxChoice * m_In9Choice
 
wxTextCtrl * m_In10Name
 
wxPanel * m_In10Panel
 
wxCheckBox * m_In10CheckBox
 
wxChoice * m_In10Choice
 
wxTextCtrl * m_In11Name
 
wxPanel * m_In11Panel
 
wxCheckBox * m_In11CheckBox
 
wxChoice * m_In11Choice
 
wxTextCtrl * m_In12Name
 
wxPanel * m_In12Panel
 
wxCheckBox * m_In12CheckBox
 
wxChoice * m_In12Choice
 
wxTextCtrl * m_In13Name
 
wxPanel * m_In13Panel
 
wxCheckBox * m_In13CheckBox
 
wxChoice * m_In13Choice
 
wxTextCtrl * m_In14Name
 
wxPanel * m_In14Panel
 
wxCheckBox * m_In14CheckBox
 
wxChoice * m_In14Choice
 
wxTextCtrl * m_In15Name
 
wxPanel * m_In15Panel
 
wxCheckBox * m_In15CheckBox
 
wxChoice * m_In15Choice
 
wxTextCtrl * m_In16Name
 
wxPanel * m_In16Panel
 
wxCheckBox * m_In16CheckBox
 
wxChoice * m_In16Choice
 
wxTextCtrl * m_In17Name
 
wxPanel * m_In17Panel
 
wxCheckBox * m_In17CheckBox
 
wxChoice * m_In17Choice
 
wxTextCtrl * m_In18Name
 
wxPanel * m_In18Panel
 
wxCheckBox * m_In18CheckBox
 
wxChoice * m_In18Choice
 
wxTextCtrl * m_In19Name
 
wxPanel * m_In19Panel
 
wxCheckBox * m_In19CheckBox
 
wxChoice * m_In19Choice
 
wxTextCtrl * m_In20Name
 
wxPanel * m_In20Panel
 
wxCheckBox * m_In20CheckBox
 
wxChoice * m_In20Choice
 
wxTextCtrl * m_In21Name
 
wxPanel * m_In21Panel
 
wxCheckBox * m_In21CheckBox
 
wxChoice * m_In21Choice
 
wxTextCtrl * m_In22Name
 
wxPanel * m_In22Panel
 
wxCheckBox * m_In22CheckBox
 
wxChoice * m_In22Choice
 
wxTextCtrl * m_In23Name
 
wxPanel * m_In23Panel
 
wxCheckBox * m_In23CheckBox
 
wxChoice * m_In23Choice
 
wxTextCtrl * m_In24Name
 
wxPanel * m_In24Panel
 
wxCheckBox * m_In24CheckBox
 
wxChoice * m_In24Choice
 
wxTextCtrl * m_In25Name
 
wxPanel * m_In25Panel
 
wxCheckBox * m_In25CheckBox
 
wxChoice * m_In25Choice
 
wxTextCtrl * m_In26Name
 
wxPanel * m_In26Panel
 
wxCheckBox * m_In26CheckBox
 
wxChoice * m_In26Choice
 
wxTextCtrl * m_In27Name
 
wxPanel * m_In27Panel
 
wxCheckBox * m_In27CheckBox
 
wxChoice * m_In27Choice
 
wxTextCtrl * m_In28Name
 
wxPanel * m_In28Panel
 
wxCheckBox * m_In28CheckBox
 
wxChoice * m_In28Choice
 
wxTextCtrl * m_In29Name
 
wxPanel * m_In29Panel
 
wxCheckBox * m_In29CheckBox
 
wxChoice * m_In29Choice
 
wxTextCtrl * m_In30Name
 
wxPanel * m_In30Panel
 
wxCheckBox * m_In30CheckBox
 
wxChoice * m_In30Choice
 
wxTextCtrl * m_BackName
 
wxPanel * m_BackPanel
 
wxCheckBox * m_BackCheckBox
 
wxChoice * m_BackChoice
 
wxStaticText * m_MaskBackName
 
wxPanel * m_MaskBackPanel
 
wxCheckBox * m_MaskBackCheckBox
 
wxStaticText * m_MaskBackStaticText
 
wxStaticText * m_SilkSBackName
 
wxPanel * m_SilkSBackPanel
 
wxCheckBox * m_SilkSBackCheckBox
 
wxStaticText * m_SilkSBackStaticText
 
wxStaticText * m_SoldPBackName
 
wxPanel * m_SoldPBackPanel
 
wxCheckBox * m_SoldPBackCheckBox
 
wxStaticText * m_SoldPBackStaticText
 
wxStaticText * m_AdhesBackName
 
wxPanel * m_AdhesBackPanel
 
wxCheckBox * m_AdhesBackCheckBox
 
wxStaticText * m_AdhesBackStaticText
 
wxStaticText * m_FabBackName
 
wxPanel * m_FabBackPanel
 
wxCheckBox * m_FabBackCheckBox
 
wxStaticText * m_FabBackStaticText
 
wxStaticText * m_CrtYdBackName
 
wxPanel * m_CrtYdBackPanel
 
wxCheckBox * m_CrtYdBackCheckBox
 
wxStaticText * m_CrtYdBackStaticText
 
wxStaticText * m_PCBEdgesName
 
wxPanel * m_PCBEdgesPanel
 
wxCheckBox * m_PCBEdgesCheckBox
 
wxStaticText * m_PCBEdgesStaticText
 
wxStaticText * m_MarginName
 
wxPanel * m_MarginPanel
 
wxCheckBox * m_MarginCheckBox
 
wxStaticText * m_MarginStaticText
 
wxStaticText * m_Eco1Name
 
wxPanel * m_Eco1Panel
 
wxCheckBox * m_Eco1CheckBox
 
wxStaticText * m_Eco1StaticText
 
wxStaticText * m_Eco2Name
 
wxPanel * m_Eco2Panel
 
wxCheckBox * m_Eco2CheckBox
 
wxStaticText * m_Eco2StaticText
 
wxStaticText * m_CommentsName
 
wxPanel * m_CommentsPanel
 
wxCheckBox * m_CommentsCheckBox
 
wxStaticText * m_CommentsStaticText
 
wxStaticText * m_DrawingsName
 
wxPanel * m_DrawingsPanel
 
wxCheckBox * m_DrawingsCheckBox
 
wxStaticText * m_DrawingsStaticText
 
wxStdDialogButtonSizer * m_sdbSizer
 
wxButton * m_sdbSizerOK
 
wxButton * m_sdbSizerCancel
 
std::string m_hash_key
 
EVENT_LOOPm_qmodal_loop
 
bool m_qmodal_showing
 
WDO_ENABLE_DISABLEm_qmodal_parent_disabler
 

Private Member Functions

void setLayerCheckBox (LAYER_NUM layer, bool isChecked)
 
void setCopperLayerCheckBoxes (int copperCount)
 
void showCopperChoice (int copperCount)
 
void showBoardLayerNames ()
 
void showSelectedLayerCheckBoxes (LSET enableLayerMask)
 
void showLayerTypes ()
 
void showPresets (LSET enabledLayerMask)
 
LSET getUILayerMask ()
 Return the selected layer mask within the UI checkboxes. More...
 
wxString getLayerName (LAYER_NUM layer)
 
int getLayerTypeIndex (LAYER_NUM layer)
 
void OnInitDialog (wxInitDialogEvent &aEvent) override
 
void OnCheckBox (wxCommandEvent &event) override
 
void DenyChangeCheckBox (wxCommandEvent &event) override
 
void OnPresetsChoice (wxCommandEvent &event) override
 
void OnCopperLayersChoice (wxCommandEvent &event) override
 
bool TransferDataToWindow () override
 
bool TransferDataFromWindow () override
 
bool testLayerNames ()
 
LSEQ getRemovedLayersWithItems ()
 Return a list of layers removed from the board that contain items. More...
 
CTLs getCTLs (LAYER_NUM aLayerNumber)
 Map aLayerNumber to the wx IDs for that layer which are the layer name control ID, checkbox control ID, and choice control ID. More...
 
wxControl * getName (LAYER_NUM aLayer)
 
wxCheckBox * getCheckBox (LAYER_NUM aLayer)
 
wxChoice * getChoice (LAYER_NUM aLayer)
 
void moveTitles ()
 
void OnSize (wxSizeEvent &event) override
 

Private Attributes

int m_copperLayerCount
 
LSET m_enabledLayers
 
BOARDm_pcb
 
wxStaticText * m_nameStaticText
 
wxStaticText * m_enabledStaticText
 
wxStaticText * m_typeStaticText
 

Detailed Description

Definition at line 138 of file dialog_layers_setup.cpp.

Constructor & Destructor Documentation

DIALOG_LAYERS_SETUP::DIALOG_LAYERS_SETUP ( wxTopLevelWindow *  aCaller,
BOARD aBoard 
)

Definition at line 323 of file dialog_layers_setup.cpp.

References BOARD::GetCopperLayerCount(), BOARD::GetEnabledLayers(), m_copperLayerCount, m_enabledLayers, m_enabledStaticText, m_nameStaticText, m_pcb, DIALOG_LAYERS_SETUP_BASE::m_TitlePanel, and m_typeStaticText.

323  :
324  DIALOG_LAYERS_SETUP_BASE( aParent )
325 {
326  m_pcb = aBoard;
327 
330 
331  SetAutoLayout( true );
332 
333  // these 3 controls are handled outside wxformbuilder so that we can add
334  // them without a sizer. Then we position them manually based on the column
335  // widths from m_LayerListFlexGridSizer->GetColWidths()
336  m_nameStaticText = new wxStaticText( m_TitlePanel, wxID_ANY, _( "Name" ),
337  wxDefaultPosition, wxDefaultSize, 0 );
338 
339  m_enabledStaticText = new wxStaticText( m_TitlePanel, wxID_ANY, _( "Enabled" ),
340  wxDefaultPosition, wxDefaultSize, 0 );
341 
342  m_typeStaticText = new wxStaticText( m_TitlePanel, wxID_ANY, _( "Type" ),
343  wxDefaultPosition, wxDefaultSize, 0 );
344 }
DIALOG_LAYERS_SETUP_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Layer Setup"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(550, 600), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
int GetCopperLayerCount() const
Function GetCopperLayerCount.
wxStaticText * m_typeStaticText
wxStaticText * m_enabledStaticText
LSET GetEnabledLayers() const
Function GetEnabledLayers is a proxy function that calls the corresponding function in m_BoardSetting...
wxStaticText * m_nameStaticText

Member Function Documentation

void DIALOG_LAYERS_SETUP::DenyChangeCheckBox ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_LAYERS_SETUP_BASE.

Definition at line 562 of file dialog_layers_setup.cpp.

References m_copperLayerCount, and setCopperLayerCheckBoxes().

563 {
564  // user may not change copper layer checkboxes from anything other than
565  // either presets choice or the copper layer choice controls.
566 
567  // I tried to simply disable the copper CheckBoxes but they look like crap,
568  // so leave them enabled and reverse the user's attempt to toggle them.
569 
571 }
void setCopperLayerCheckBoxes(int copperCount)
bool DIALOG_SHIM::Enable ( bool  enable)
overrideinherited

Definition at line 182 of file dialog_shim.cpp.

Referenced by DIALOG_PRINT_USING_PRINTER::InitValues().

183 {
184  // so we can do logging of this state change:
185 
186 #if defined(DEBUG)
187  const char* type_id = typeid( *this ).name();
188  printf( "wxDialog %s: %s\n", type_id, enable ? "enabled" : "disabled" );
189 #endif
190 
191  return wxDialog::Enable( enable );
192 }
void DIALOG_SHIM::EndQuasiModal ( int  retCode)
inherited

Definition at line 540 of file dialog_shim.cpp.

References DIALOG_SHIM::IsQuasiModal(), DIALOG_SHIM::m_qmodal_loop, DIALOG_SHIM::m_qmodal_parent_disabler, DIALOG_SHIM::m_qmodal_showing, and DIALOG_SHIM::Show().

Referenced by HK_PROMPT_DIALOG::EndFlexible(), DIALOG_SHIM::OnButton(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::OnCancelButtonClick(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnCancelButtonClick(), DIALOG_EDIT_ONE_FIELD::OnCancelClick(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::OnCloseDialog(), DIALOG_EDIT_ONE_FIELD::OnCloseDialog(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnCloseDialog(), DIALOG_CHOOSE_COMPONENT::OnCloseTimer(), DIALOG_SHIM::OnCloseWindow(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::OnOKButtonClick(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnOKButtonClick(), DIALOG_EDIT_ONE_FIELD::OnOkClick(), DIALOG_EXCHANGE_MODULE::OnQuit(), DIALOG_CHOOSE_COMPONENT::OnSchViewDClick(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::SetInitCmp(), and DIALOG_SHIM::~DIALOG_SHIM().

541 {
542  // Hook up validator and transfer data from controls handling so quasi-modal dialogs
543  // handle validation in the same way as other dialogs.
544  if( ( retCode == wxID_OK ) && ( !Validate() || !TransferDataFromWindow() ) )
545  return;
546 
547  SetReturnCode( retCode );
548 
549  if( !IsQuasiModal() )
550  {
551  wxFAIL_MSG( wxT( "either DIALOG_SHIM::EndQuasiModal called twice or ShowQuasiModal wasn't called" ) );
552  return;
553  }
554 
555  m_qmodal_showing = false;
556 
557  if( m_qmodal_loop )
558  {
559  if( m_qmodal_loop->IsRunning() )
560  m_qmodal_loop->Exit( 0 );
561  else
562  m_qmodal_loop->ScheduleExit( 0 );
563 
564  m_qmodal_loop = NULL;
565  }
566 
569 
570  Show( false );
571 }
bool m_qmodal_showing
Definition: dialog_shim.h:132
EVENT_LOOP * m_qmodal_loop
Definition: dialog_shim.h:131
bool IsQuasiModal()
Definition: dialog_shim.h:93
bool Show(bool show) override
WDO_ENABLE_DISABLE * m_qmodal_parent_disabler
Definition: dialog_shim.h:133
void DIALOG_SHIM::FinishDialogSettings ( )
protectedinherited

In all dialogs, we must call the same functions to fix minimal dlg size, the default position and perhaps some others to fix a few issues depending on Windows Managers this helper function does these calls.

FinishDialogSettings must be called from derived classes, when all widgets are initialized, and therefore their size fixed. If TransferDataToWindow() is used to initialize widgets, at end of TransferDataToWindow, or better at end of a wxInitDialogEvent handler

In any case, the best way is to call it in a wxInitDialogEvent handler after calling TransfertDataToWindow(), which is the default wxInitDialogEvent handler wxDialog

Definition at line 104 of file dialog_shim.cpp.

References PCAD2KICAD::Center.

Referenced by COLOR4D_PICKER_DLG::COLOR4D_PICKER_DLG(), DIALOG_BOM::DIALOG_BOM(), DIALOG_COPPER_ZONE::DIALOG_COPPER_ZONE(), DIALOG_DESIGN_RULES::DIALOG_DESIGN_RULES(), DIALOG_DIMENSION_EDITOR::DIALOG_DIMENSION_EDITOR(), DIALOG_DISPLAY_OPTIONS::DIALOG_DISPLAY_OPTIONS(), DIALOG_DRC_CONTROL::DIALOG_DRC_CONTROL(), DIALOG_EDIT_COMPONENT_IN_LIBRARY::DIALOG_EDIT_COMPONENT_IN_LIBRARY(), DIALOG_EDIT_LINE_STYLE::DIALOG_EDIT_LINE_STYLE(), DIALOG_EESCHEMA_OPTIONS::DIALOG_EESCHEMA_OPTIONS(), DIALOG_ENUM_PADS::DIALOG_ENUM_PADS(), DIALOG_EXPORT_3DFILE::DIALOG_EXPORT_3DFILE(), DIALOG_EXPORT_IDF3::DIALOG_EXPORT_IDF3(), DIALOG_EXPORT_STEP::DIALOG_EXPORT_STEP(), DIALOG_FOOTPRINT_WIZARD_LIST::DIALOG_FOOTPRINT_WIZARD_LIST(), DIALOG_GLOBAL_SYM_LIB_TABLE_CONFIG::DIALOG_GLOBAL_SYM_LIB_TABLE_CONFIG(), DIALOG_KEEPOUT_AREA_PROPERTIES::DIALOG_KEEPOUT_AREA_PROPERTIES(), DIALOG_LABEL_EDITOR::DIALOG_LABEL_EDITOR(), DIALOG_LIB_EDIT_DRAW_ITEM::DIALOG_LIB_EDIT_DRAW_ITEM(), DIALOG_LIB_EDIT_TEXT::DIALOG_LIB_EDIT_TEXT(), DIALOG_LIB_NEW_COMPONENT::DIALOG_LIB_NEW_COMPONENT(), DIALOG_LIBEDIT_OPTIONS::DIALOG_LIBEDIT_OPTIONS(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), DIALOG_PLOT_SCHEMATIC::DIALOG_PLOT_SCHEMATIC(), DIALOG_SCH_EDIT_SHEET_PIN::DIALOG_SCH_EDIT_SHEET_PIN(), DIALOG_SCH_SHEET_PROPS::DIALOG_SCH_SHEET_PROPS(), DIALOG_SELECT_PRETTY_LIB::DIALOG_SELECT_PRETTY_LIB(), DIALOG_TRACK_VIA_SIZE::DIALOG_TRACK_VIA_SIZE(), DIALOG_EDIT_ONE_FIELD::init(), NETLIST_DIALOG::NETLIST_DIALOG(), DIALOG_LIB_EDIT_PIN::OnInitDialog(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::OnInitDialog(), DIALOG_TRACK_VIA_PROPERTIES::OnInitDlg(), DIALOG_GRAPHIC_ITEMS_OPTIONS::OnInitDlg(), DialogEditModuleText::OnInitDlg(), DIALOG_SET_GRID::OnInitDlg(), DIALOG_PCB_TEXT_PROPERTIES::OnInitDlg(), DIALOG_PRINT_FOR_MODEDIT::OnInitDlg(), DIALOG_GRAPHIC_ITEM_PROPERTIES::OnInitDlg(), DIALOG_MODULE_MODULE_EDITOR::OnInitDlg(), DIALOG_SIM_SETTINGS::onInitDlg(), DIALOG_SPICE_MODEL::onInitDlg(), DIALOG_MODULE_BOARD_EDITOR::OnInitDlg(), DIALOG_PRINT_USING_PRINTER::OnInitDlg(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnInitDlg(), TARGET_PROPERTIES_DIALOG_EDITOR::TARGET_PROPERTIES_DIALOG_EDITOR(), and DIALOG_SIGNAL_LIST::TransferDataToWindow().

105 {
106  // must be called from the constructor of derived classes,
107  // when all widgets are initialized, and therefore their size fixed
108 
109  // SetSizeHints fixes the minimal size of sizers in the dialog
110  // (SetSizeHints calls Fit(), so no need to call it)
111  GetSizer()->SetSizeHints( this );
112 
113  // the default position, when calling the first time the dlg
114  Center();
115 }
void DIALOG_SHIM::FixOSXCancelButtonIssue ( )
protectedinherited

A ugly hack to fix an issue on OSX: when typing ctrl+c in a wxTextCtrl inside a dialog, it is closed instead of copying a text if a button with wxID_CANCEL is used in a wxStdDialogButtonSizer, when the dlg is created by wxFormBuilder: the label is &Cancel, and this accelerator key has priority to copy text standard accelerator, and the dlg is closed when trying to copy text this function do nothing on other platforms.

Definition at line 117 of file dialog_shim.cpp.

Referenced by DIALOG_SHIM::Show().

118 {
119 #ifdef __WXMAC__
120  // A ugly hack to fix an issue on OSX: ctrl+c closes the dialog instead of
121  // copying a text if a button with wxID_CANCEL is used in a wxStdDialogButtonSizer
122  // created by wxFormBuilder: the label is &Cancel, and this accelerator key has priority
123  // to copy text standard accelerator, and the dlg is closed when trying to copy text
124  wxButton* button = dynamic_cast< wxButton* > ( wxWindow::FindWindowById( wxID_CANCEL, this ) );
125 
126  if( button )
127  button->SetLabel( _( "Cancel" ) );
128 #endif
129 }
wxCheckBox* DIALOG_LAYERS_SETUP::getCheckBox ( LAYER_NUM  aLayer)
inlineprivate

Definition at line 193 of file dialog_layers_setup.cpp.

References CTLs::checkbox, and getCTLs().

Referenced by getUILayerMask(), and setLayerCheckBox().

194  {
195  return getCTLs( aLayer ).checkbox;
196  }
CTLs getCTLs(LAYER_NUM aLayerNumber)
Map aLayerNumber to the wx IDs for that layer which are the layer name control ID, checkbox control ID, and choice control ID.
wxCheckBox * checkbox
wxChoice* DIALOG_LAYERS_SETUP::getChoice ( LAYER_NUM  aLayer)
inlineprivate

Definition at line 198 of file dialog_layers_setup.cpp.

References CTLs::choice, and getCTLs().

Referenced by getLayerTypeIndex(), and showLayerTypes().

199  {
200  return (wxChoice*) getCTLs( aLayer ).choice;
201  }
CTLs getCTLs(LAYER_NUM aLayerNumber)
Map aLayerNumber to the wx IDs for that layer which are the layer name control ID, checkbox control ID, and choice control ID.
wxControl * choice
CTLs DIALOG_LAYERS_SETUP::getCTLs ( LAYER_NUM  aLayerNumber)
private

Map aLayerNumber to the wx IDs for that layer which are the layer name control ID, checkbox control ID, and choice control ID.

Definition at line 252 of file dialog_layers_setup.cpp.

References B_Adhes, B_CrtYd, B_Cu, B_Fab, B_Mask, B_Paste, B_SilkS, Cmts_User, Dwgs_User, Eco1_User, Eco2_User, Edge_Cuts, F_Adhes, F_CrtYd, F_Cu, F_Fab, F_Mask, F_Paste, F_SilkS, In10_Cu, In11_Cu, In12_Cu, In13_Cu, In14_Cu, In15_Cu, In16_Cu, In17_Cu, In18_Cu, In19_Cu, In1_Cu, In20_Cu, In21_Cu, In22_Cu, In23_Cu, In24_Cu, In25_Cu, In26_Cu, In27_Cu, In28_Cu, In29_Cu, In2_Cu, In30_Cu, In3_Cu, In4_Cu, In5_Cu, In6_Cu, In7_Cu, In8_Cu, In9_Cu, Margin, RETAUX, and RETCOP.

Referenced by getCheckBox(), getChoice(), getName(), and setCopperLayerCheckBoxes().

253 {
254 #define RETCOP(x) return CTLs( x##Name, x##CheckBox, x##Choice, x##Panel );
255 #define RETAUX(x) return CTLs( x##Name, x##CheckBox, x##StaticText, x##Panel );
256 
257  switch( aLayerNumber )
258  {
259  case F_CrtYd: RETAUX( m_CrtYdFront );
260  case F_Fab: RETAUX( m_FabFront );
261  case F_Adhes: RETAUX( m_AdhesFront );
262  case F_Paste: RETAUX( m_SoldPFront );
263  case F_SilkS: RETAUX( m_SilkSFront );
264  case F_Mask: RETAUX( m_MaskFront );
265  case F_Cu: RETCOP( m_Front );
266 
267  case In1_Cu: RETCOP( m_In1 );
268  case In2_Cu: RETCOP( m_In2 );
269  case In3_Cu: RETCOP( m_In3 );
270  case In4_Cu: RETCOP( m_In4 );
271  case In5_Cu: RETCOP( m_In5 );
272  case In6_Cu: RETCOP( m_In6 );
273  case In7_Cu: RETCOP( m_In7 );
274  case In8_Cu: RETCOP( m_In8 );
275  case In9_Cu: RETCOP( m_In9 );
276  case In10_Cu: RETCOP( m_In10 );
277  case In11_Cu: RETCOP( m_In11 );
278  case In12_Cu: RETCOP( m_In12 );
279  case In13_Cu: RETCOP( m_In13 );
280  case In14_Cu: RETCOP( m_In14 );
281  case In15_Cu: RETCOP( m_In15 );
282 
283  case In16_Cu: RETCOP( m_In16 );
284  case In17_Cu: RETCOP( m_In17 );
285  case In18_Cu: RETCOP( m_In18 );
286  case In19_Cu: RETCOP( m_In19 );
287  case In20_Cu: RETCOP( m_In20 );
288  case In21_Cu: RETCOP( m_In21 );
289  case In22_Cu: RETCOP( m_In22 );
290  case In23_Cu: RETCOP( m_In23 );
291  case In24_Cu: RETCOP( m_In24 );
292  case In25_Cu: RETCOP( m_In25 );
293  case In26_Cu: RETCOP( m_In26 );
294  case In27_Cu: RETCOP( m_In27 );
295  case In28_Cu: RETCOP( m_In28 );
296  case In29_Cu: RETCOP( m_In29 );
297  case In30_Cu: RETCOP( m_In30 );
298 
299  case B_Cu: RETCOP( m_Back );
300  case B_Mask: RETAUX( m_MaskBack );
301  case B_SilkS: RETAUX( m_SilkSBack );
302  case B_Paste: RETAUX( m_SoldPBack );
303  case B_Adhes: RETAUX( m_AdhesBack );
304  case B_Fab: RETAUX( m_FabBack );
305  case B_CrtYd: RETAUX( m_CrtYdBack );
306 
307  case Edge_Cuts: RETAUX( m_PCBEdges );
308  case Margin: RETAUX( m_Margin );
309  case Eco2_User: RETAUX( m_Eco2 );
310  case Eco1_User: RETAUX( m_Eco1 );
311  case Cmts_User: RETAUX( m_Comments );
312  case Dwgs_User: RETAUX( m_Drawings );
313  default:
314  wxASSERT_MSG( 0, wxT( "bad layer id" ) );
315  return CTLs( 0, 0, 0 );
316  }
317 
318 #undef RETCOP
319 #undef RETAUX
320 }
Holds the 3 UI control pointers for a single board layer.
#define RETCOP(x)
#define RETAUX(x)
wxString DIALOG_LAYERS_SETUP::getLayerName ( LAYER_NUM  layer)
private

Definition at line 699 of file dialog_layers_setup.cpp.

References getName(), and IsCopperLayer().

Referenced by testLayerNames(), and TransferDataFromWindow().

700 {
701  wxString ret;
702 
703  wxASSERT( IsCopperLayer( aLayer ) );
704 
705  wxTextCtrl* ctl = (wxTextCtrl*) getName( aLayer );
706 
707  ret = ctl->GetValue().Trim();
708 
709  return ret;
710 }
wxControl * getName(LAYER_NUM aLayer)
bool IsCopperLayer(LAYER_NUM aLayerId)
Function IsCopperLayer tests whether a layer is a copper layer.
int DIALOG_LAYERS_SETUP::getLayerTypeIndex ( LAYER_NUM  layer)
private

Definition at line 689 of file dialog_layers_setup.cpp.

References getChoice().

Referenced by TransferDataFromWindow().

690 {
691  wxChoice* ctl = getChoice( aLayer );
692 
693  int ret = ctl->GetCurrentSelection(); // indices must have same sequence as LAYER_T
694 
695  return ret;
696 }
wxChoice * getChoice(LAYER_NUM aLayer)
wxControl* DIALOG_LAYERS_SETUP::getName ( LAYER_NUM  aLayer)
inlineprivate

Definition at line 188 of file dialog_layers_setup.cpp.

References getCTLs(), and CTLs::name.

Referenced by getLayerName(), showBoardLayerNames(), and testLayerNames().

189  {
190  return getCTLs( aLayer ).name;
191  }
CTLs getCTLs(LAYER_NUM aLayerNumber)
Map aLayerNumber to the wx IDs for that layer which are the layer name control ID, checkbox control ID, and choice control ID.
wxControl * name
LSEQ DIALOG_LAYERS_SETUP::getRemovedLayersWithItems ( )
private

Return a list of layers removed from the board that contain items.

Definition at line 793 of file dialog_layers_setup.cpp.

References GENERAL_COLLECTOR::BoardLevelItems, PCB_LAYER_COLLECTOR::Collect(), COLLECTOR::GetCount(), BOARD::GetEnabledLayers(), getUILayerMask(), m_pcb, LSET::Seq(), and PCB_LAYER_COLLECTOR::SetLayerId().

Referenced by TransferDataFromWindow().

794 {
795  LSEQ removedLayers;
796  LSET newLayers = getUILayerMask();
797  LSET curLayers = m_pcb->GetEnabledLayers();
798 
799  if( newLayers == curLayers )
800  return removedLayers;
801 
802  PCB_LAYER_COLLECTOR collector;
803  LSEQ newLayerSeq = newLayers.Seq();
804  std::vector< PCB_LAYER_ID >::iterator it;
805 
806  for( auto layer_id : curLayers.Seq() )
807  {
808  if( std::find( newLayerSeq.begin(), newLayerSeq.end(), layer_id ) == newLayerSeq.end() )
809  {
810  collector.SetLayerId( layer_id );
812 
813  if( collector.GetCount() != 0 )
814  removedLayers.push_back( layer_id );
815  }
816  }
817 
818  return removedLayers;
819 }
int GetCount() const
Function GetCount returns the number of objects in the list.
static const KICAD_T BoardLevelItems[]
A scan list for all primary board items, omitting items which are subordinate to a MODULE...
Definition: collectors.h:255
void Collect(BOARD_ITEM *aBoard, const KICAD_T aScanList[])
Tests a BOARD_ITEM using this class's Inspector method, which does the collection.
Definition: collectors.cpp:494
Collect all BOARD_ITEM objects on a given layer.
Definition: collectors.h:573
LSET GetEnabledLayers() const
Function GetEnabledLayers is a proxy function that calls the corresponding function in m_BoardSetting...
void SetLayerId(PCB_LAYER_ID aLayerId)
Definition: collectors.h:583
LSEQ Seq(const PCB_LAYER_ID *aWishListSequence, unsigned aCount) const
Function Seq returns an LSEQ from the union of this LSET and a desired sequence.
Definition: lset.cpp:337
Class LSET is a set of PCB_LAYER_IDs.
Class LSEQ is a sequence (and therefore also a set) of PCB_LAYER_IDs.
LSET getUILayerMask()
Return the selected layer mask within the UI checkboxes.
LSET DIALOG_LAYERS_SETUP::getUILayerMask ( )
private

Return the selected layer mask within the UI checkboxes.

Definition at line 484 of file dialog_layers_setup.cpp.

References dlg_layers(), and getCheckBox().

Referenced by getRemovedLayersWithItems(), OnCheckBox(), OnCopperLayersChoice(), and TransferDataFromWindow().

485 {
486  LSET layerMaskResult;
487 
488  for( LSEQ seq = dlg_layers(); seq; ++seq )
489  {
490  PCB_LAYER_ID layer = *seq;
491  wxCheckBox* ctl = getCheckBox( layer );
492 
493  if( ctl->GetValue() )
494  {
495  layerMaskResult.set( layer );
496  }
497  }
498 
499  return layerMaskResult;
500 }
wxCheckBox * getCheckBox(LAYER_NUM aLayer)
static LSEQ dlg_layers()
PCB_LAYER_ID
A quick note on layer IDs:
Class LSET is a set of PCB_LAYER_IDs.
Class LSEQ is a sequence (and therefore also a set) of PCB_LAYER_IDs.
KIWAY& KIWAY_HOLDER::Kiway ( ) const
inlineinherited

Function Kiway returns a reference to the KIWAY that this object has an opportunity to participate in.

A KIWAY_HOLDER is not necessarily a KIWAY_PLAYER.

Definition at line 60 of file kiway_player.h.

References KIWAY_HOLDER::m_kiway.

Referenced by SCH_EDIT_FRAME::AppendSchematic(), CVPCB_MAINFRAME::BuildLIBRARY_LISTBOX(), DIALOG_CHOOSE_COMPONENT::ConstructRightPanel(), CVPCB_MAINFRAME::CreateScreenCmp(), CVPCB_MAINFRAME::CVPCB_MAINFRAME(), DIALOG_SHIM::DIALOG_SHIM(), EDIT_TOOL::editFootprintInFpEditor(), SCH_EDIT_FRAME::EditSheet(), DISPLAY_FOOTPRINTS_FRAME::Get_Module(), FOOTPRINT_EDIT_FRAME::GetPlotSettings(), SCH_EDIT_FRAME::ImportFile(), PCB_EDIT_FRAME::ImportFile(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::initBuffers(), PCB_EDIT_FRAME::InstallModuleOptionsFrame(), KIWAY_PLAYER::language_change(), CVPCB_MAINFRAME::LoadFootprintFiles(), KIWAY_PLAYER::OnChangeIconsOptions(), CVPCB_MAINFRAME::OnEditFootprintLibraryTable(), SCH_BASE_FRAME::OnEditSymbolLibTable(), DIALOG_CHOOSE_COMPONENT::OnInitDialog(), SCH_EDIT_FRAME::OnLeftClick(), SCH_BASE_FRAME::OnOpenLibraryViewer(), SCH_EDIT_FRAME::OnSimulate(), DIALOG_EDIT_ONE_FIELD::OnTextValueSelectButtonClick(), FOOTPRINT_EDIT_FRAME::OnUpdateInsertModuleInBoard(), FOOTPRINT_EDIT_FRAME::OnUpdateLoadModuleFromBoard(), FOOTPRINT_EDIT_FRAME::OnUpdateReplaceModuleInBoard(), SCH_EDIT_FRAME::OpenProjectFiles(), KIWAY_HOLDER::Prj(), PCB_EDIT_FRAME::Process_Config(), PCB_EDIT_FRAME::Process_Special_Functions(), FOOTPRINT_EDIT_FRAME::ProcessPreferences(), CVPCB_MAINFRAME::ReadNetListAndFpFiles(), FOOTPRINT_VIEWER_FRAME::ReCreateFootprintList(), LIB_EDIT_FRAME::refreshSchematic(), SCH_EDIT_FRAME::rescueProject(), SCH_EDIT_FRAME::SaveEEFile(), CVPCB_MAINFRAME::SaveFootprintAssociation(), SCH_BASE_FRAME::SelectComponentFromLibBrowser(), CVPCB_MAINFRAME::SendMessageToEESCHEMA(), PCB_EDIT_FRAME::SendMessageToEESCHEMA(), SCH_EDIT_FRAME::SendMessageToPCBNEW(), SCH_EDIT_FRAME::sendNetlist(), FOOTPRINT_EDIT_FRAME::SetPlotSettings(), DISPLAY_FOOTPRINTS_FRAME::Show3D_Frame(), FOOTPRINT_VIEWER_FRAME::Show3D_Frame(), FOOTPRINT_EDIT_FRAME::Show3D_Frame(), FOOTPRINT_WIZARD_FRAME::Show3D_Frame(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::showButtonHandler(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::showButtonHandler(), SIM_PLOT_FRAME::SIM_PLOT_FRAME(), and DIALOG_EXCHANGE_MODULE::ViewAndSelectFootprint().

61  {
62  wxASSERT( m_kiway ); // smoke out bugs in Debug build, then Release runs fine.
63  return *m_kiway;
64  }
KIWAY * m_kiway
Definition: kiway_player.h:85
void DIALOG_LAYERS_SETUP::moveTitles ( )
inlineprivate

Definition at line 203 of file dialog_layers_setup.cpp.

References DIALOG_LAYERS_SETUP_BASE::m_LayerListFlexGridSizer.

Referenced by OnSize().

204  {
205  wxArrayInt widths = m_LayerListFlexGridSizer->GetColWidths();
206 
207  int offset = 0;
208  wxSize txtz;
209 
210  txtz = m_nameStaticText->GetSize();
211  m_nameStaticText->Move( offset + (widths[0] - txtz.x)/2, 5 );
212  offset += widths[0];
213 
214  txtz = m_enabledStaticText->GetSize();
215  m_enabledStaticText->Move( offset + (widths[1] - txtz.x)/2, 5 );
216  offset += widths[1];
217 
218  txtz = m_typeStaticText->GetSize();
219  m_typeStaticText->Move( offset + (widths[2] - txtz.x)/2, 5 );
220  }
wxFlexGridSizer * m_LayerListFlexGridSizer
wxStaticText * m_typeStaticText
wxStaticText * m_enabledStaticText
wxStaticText * m_nameStaticText
void DIALOG_LAYERS_SETUP::OnCheckBox ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_LAYERS_SETUP_BASE.

Definition at line 554 of file dialog_layers_setup.cpp.

References getUILayerMask(), m_enabledLayers, and showPresets().

555 {
557 
559 }
void showPresets(LSET enabledLayerMask)
LSET getUILayerMask()
Return the selected layer mask within the UI checkboxes.
void DIALOG_LAYERS_SETUP::OnCopperLayersChoice ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_LAYERS_SETUP_BASE.

Definition at line 600 of file dialog_layers_setup.cpp.

References getUILayerMask(), m_copperLayerCount, DIALOG_LAYERS_SETUP_BASE::m_CopperLayersChoice, m_enabledLayers, setCopperLayerCheckBoxes(), and showPresets().

601 {
602  m_copperLayerCount = m_CopperLayersChoice->GetCurrentSelection() * 2 + 2;
603 
605 
607 
609 }
void showPresets(LSET enabledLayerMask)
void setCopperLayerCheckBoxes(int copperCount)
LSET getUILayerMask()
Return the selected layer mask within the UI checkboxes.
void DIALOG_LAYERS_SETUP::OnInitDialog ( wxInitDialogEvent &  aEvent)
overrideprivatevirtual

Reimplemented from DIALOG_LAYERS_SETUP_BASE.

Definition at line 347 of file dialog_layers_setup.cpp.

References PCAD2KICAD::Center, DIALOG_LAYERS_SETUP_BASE::m_AdhesFrontName, DIALOG_LAYERS_SETUP_BASE::m_LayersListPanel, DIALOG_LAYERS_SETUP_BASE::m_sdbSizerOK, and DIALOG_LAYERS_SETUP_BASE::m_TitlePanel.

348 {
349  wxWindowBase::OnInitDialog( aEvent );
350 
351  // set the height of the title panel to be the size of any wxStaticText object
352  // plus 10 so we can have a border of 5 on both top and bottom.
353  m_TitlePanel->SetMinSize( wxSize( -1, m_AdhesFrontName->GetSize().y+10 ) );
354 
355  m_LayersListPanel->ShowScrollbars( wxSHOW_SB_ALWAYS, wxSHOW_SB_ALWAYS );
356 
357  Layout();
358  Fit();
359  Center();
360 
361  m_sdbSizerOK->SetFocus();
362  m_sdbSizerOK->SetDefault();
363 
364  // OnSize() will fix the title spacing.
365  QueueEvent( new wxSizeEvent( GetSize() ) );
366 }
void DIALOG_LAYERS_SETUP::OnPresetsChoice ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_LAYERS_SETUP_BASE.

Definition at line 574 of file dialog_layers_setup.cpp.

References LSET::AllCuMask(), DIM, m_copperLayerCount, m_enabledLayers, DIALOG_LAYERS_SETUP_BASE::m_PresetsChoice, setCopperLayerCheckBoxes(), showCopperChoice(), and showSelectedLayerCheckBoxes().

575 {
576  unsigned presetNdx = m_PresetsChoice->GetCurrentSelection();
577 
578  if( presetNdx == 0 ) // the Custom setting controls nothing.
579  return;
580 
581  if( presetNdx < DIM(presets) )
582  {
583  m_enabledLayers = presets[ presetNdx ];
584 
585  LSET copperSet = m_enabledLayers & LSET::AllCuMask();
586 
587  int copperCount = copperSet.count();
588 
589  m_copperLayerCount = copperCount;
590 
592 
594 
596  }
597 }
static LSET AllCuMask(int aCuLayerCount=MAX_CU_LAYERS)
Function AllCuMask returns a mask holding the requested number of Cu PCB_LAYER_IDs.
Definition: lset.cpp:646
#define DIM(x)
of elements in an array
Definition: macros.h:98
static const LSET presets[]
Class LSET is a set of PCB_LAYER_IDs.
void showCopperChoice(int copperCount)
void setCopperLayerCheckBoxes(int copperCount)
void showSelectedLayerCheckBoxes(LSET enableLayerMask)
void DIALOG_LAYERS_SETUP::OnSize ( wxSizeEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_LAYERS_SETUP_BASE.

Definition at line 389 of file dialog_layers_setup.cpp.

References moveTitles().

390 {
391  moveTitles();
392  event.Skip();
393 }
PROJECT & KIWAY_HOLDER::Prj ( ) const
inherited

Function Prj returns a reference to the PROJECT "associated with" this KIWAY.

Definition at line 34 of file kiway_holder.cpp.

References KIWAY_HOLDER::Kiway(), and KIWAY::Prj().

Referenced by DIALOG_EDIT_COMPONENT_IN_LIBRARY::AddAliasOfPart(), SCH_EDIT_FRAME::AppendSchematic(), PCB_EDIT_FRAME::ArchiveModulesOnBoard(), LIB_VIEW_FRAME::BestZoom(), DIALOG_MODULE_MODULE_EDITOR::BrowseAndAdd3DShapeFile(), DIALOG_MODULE_BOARD_EDITOR::BrowseAndAdd3DShapeFile(), DIALOG_EDIT_COMPONENT_IN_LIBRARY::BrowseAndSelectDocFile(), DIALOG_EXCHANGE_MODULE::BrowseAndSelectFootprint(), DIALOG_SYMBOL_LIB_TABLE::browseLibrariesHandler(), CVPCB_MAINFRAME::BuildLIBRARY_LISTBOX(), DIALOG_MODULE_MODULE_EDITOR::Cfg3DPath(), DIALOG_MODULE_BOARD_EDITOR::Cfg3DPath(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copyPanelToOptions(), PCB_BASE_EDIT_FRAME::CreateNewLibrary(), LIB_EDIT_FRAME::CreateNewLibraryPart(), DIALOG_PLOT_SCHEMATIC::createPlotFileName(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), FOOTPRINT_EDIT_FRAME::DeleteModuleFromCurrentLibrary(), LIB_EDIT_FRAME::DeleteOnePart(), DIALOG_CHOOSE_COMPONENT::DIALOG_CHOOSE_COMPONENT(), DIALOG_CONFIG_EQUFILES::DIALOG_CONFIG_EQUFILES(), DIALOG_FP_LIB_TABLE::DIALOG_FP_LIB_TABLE(), DIALOG_MODULE_BOARD_EDITOR::DIALOG_MODULE_BOARD_EDITOR(), DIALOG_MODULE_MODULE_EDITOR::DIALOG_MODULE_MODULE_EDITOR(), DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS(), DIALOG_SYMBOL_LIB_TABLE::DIALOG_SYMBOL_LIB_TABLE(), LIB_VIEW_FRAME::DisplayLibInfos(), LIB_EDIT_FRAME::DisplayLibInfos(), SCH_BASE_FRAME::DisplayListComponentsInLib(), PCB_EDIT_FRAME::doAutoSave(), DIALOG_MODULE_MODULE_EDITOR::Edit3DShapeFileName(), DIALOG_MODULE_BOARD_EDITOR::Edit3DShapeFileName(), SCH_EDIT_FRAME::EditComponentFieldText(), LIB_EDIT_FRAME::EditField(), SCH_EDIT_FRAME::EditSheet(), PCB_EDIT_FRAME::Export_IDF3(), PCB_EDIT_FRAME::ExportVRML_File(), PCB_EDIT_FRAME::Files_io_from_id(), PCB_EDIT_FRAME::GenD356File(), NETLIST_DIALOG::GenNetlist(), DISPLAY_FOOTPRINTS_FRAME::Get_Module(), FOOTPRINT_VIEWER_FRAME::getCurFootprintName(), LIB_EDIT_FRAME::GetCurLib(), FOOTPRINT_VIEWER_FRAME::getCurNickname(), FOOTPRINT_EDIT_FRAME::GetCurrentLib(), SCH_BASE_FRAME::GetLibAlias(), SCH_BASE_FRAME::GetLibPart(), FOOTPRINT_EDIT_FRAME::getLibPath(), DIALOG_SYMBOL_REMAP::getLibsNotInGlobalSymbolLibTable(), DIALOG_BOM::getPluginFileName(), LIB_VIEW_FRAME::getSelectedAlias(), FP_THREAD_IFACE::GetTable(), SCH_EDIT_FRAME::ImportFile(), PCB_EDIT_FRAME::ImportFile(), DIALOG_MODULE_MODULE_EDITOR::initModeditProperties(), DIALOG_MODULE_BOARD_EDITOR::InitModeditProperties(), PCB_EDIT_FRAME::InstallNetlistFrame(), SCH_EDIT_FRAME::IsSearchCacheObsolete(), SCH_EDIT_FRAME::Load_Component(), SCH_EDIT_FRAME::LoadCmpToFootprintLinkFile(), LIB_EDIT_FRAME::LoadComponentFromCurrentLib(), CVPCB_MAINFRAME::LoadFootprintFiles(), DIALOG_SPICE_MODEL::loadLibrary(), LIB_EDIT_FRAME::LoadOneSymbol(), CVPCB_MAINFRAME::LoadProjectFile(), SCH_EDIT_FRAME::LoadProjectFile(), PCB_EDIT_FRAME::LoadProjectSettings(), DIALOG_DRC_CONTROL::makeValidFileNameReport(), FOOTPRINT_VIEWER_FRAME::OnActivate(), DIALOG_GENCAD_EXPORT_OPTIONS::onBrowse(), DIALOG_DRC_CONTROL::OnButtonBrowseRptFileClick(), CVPCB_MAINFRAME::OnEditFootprintLibraryTable(), SCH_BASE_FRAME::OnEditSymbolLibTable(), DIALOG_GENDRILL::OnGenReportFile(), SCH_EDIT_FRAME::OnImportProject(), DIALOG_CHOOSE_COMPONENT::OnInitDialog(), PCB_EDIT_FRAME::OnLeftClick(), DIALOG_NETLIST::OnOpenNetlistClick(), DIALOG_PLOT::OnOutputDirectoryBrowseClicked(), DIALOG_SVG_PRINT::OnOutputDirectoryBrowseClicked(), DIALOG_GENDRILL::OnOutputDirectoryBrowseClicked(), DIALOG_PLOT_SCHEMATIC::OnOutputDirectoryBrowseClicked(), DIALOG_GEN_MODULE_POSITION::OnOutputDirectoryBrowseClicked(), LIB_EDIT_FRAME::OnPlotCurrentComponent(), DIALOG_SYMBOL_REMAP::OnRemapSymbols(), SCH_EDIT_FRAME::OnRightClick(), DIALOG_BOM::OnRunPlugin(), LIB_EDIT_FRAME::OnSaveCurrentPart(), DIALOG_NETLIST::OnSaveMessagesToFile(), SCH_EDIT_FRAME::OnSaveProject(), DIALOG_CHOOSE_COMPONENT::OnSchViewPaint(), DIALOG_SPICE_MODEL::onSelectLibrary(), LIB_VIEW_FRAME::OnSelectSymbol(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnTestChipName(), LIB_EDIT_FRAME::OnUpdateSaveCurrentLib(), LIB_EDIT_FRAME::OnUpdateSaveCurrentLibAs(), FOOTPRINT_EDIT_FRAME::OnUpdateSelectCurrentLib(), LIB_EDIT_FRAME::OnViewEntryDoc(), LIB_VIEW_FRAME::onViewSymbolDocument(), SCH_EDIT_FRAME::OpenProjectFiles(), PCB_EDIT_FRAME::OpenProjectFiles(), SCH_EDIT_FRAME::PasteListOfItems(), PCB_EDITOR_CONTROL::PlaceModule(), DIALOG_CHOOSE_COMPONENT::PopulateFootprintSelector(), SCH_EDIT_FRAME::Process_Config(), PCB_EDIT_FRAME::Process_Config(), FOOTPRINT_EDIT_FRAME::ProcessPreferences(), CVPCB_MAINFRAME::ReadNetListAndFpFiles(), PCB_EDIT_FRAME::RecreateCmpFileFromBoard(), FOOTPRINT_VIEWER_FRAME::ReCreateFootprintList(), LIB_VIEW_FRAME::ReCreateHToolbar(), FOOTPRINT_VIEWER_FRAME::ReCreateLibraryList(), LIB_VIEW_FRAME::ReCreateListCmp(), LIB_VIEW_FRAME::ReCreateListLib(), LIB_VIEW_FRAME::RedrawActiveWindow(), EDA_3D_VIEWER::ReloadRequest(), DIALOG_SYMBOL_REMAP::remapSymbolToLibTable(), SCH_EDIT_FRAME::RescueLegacyProject(), SCH_EDIT_FRAME::RescueSymbolLibTableProject(), FOOTPRINT_EDIT_FRAME::restoreLastFootprint(), FOOTPRINT_EDIT_FRAME::retainLastFootprint(), LIB_EDIT_FRAME::SaveActiveLibrary(), SCH_EDIT_FRAME::SaveEEFile(), FOOTPRINT_EDIT_FRAME::SaveFootprintInLibrary(), LIB_EDIT_FRAME::SaveOneSymbol(), CVPCB_MAINFRAME::SaveProjectFile(), SCH_EDIT_FRAME::SaveProjectSettings(), PCB_EDIT_FRAME::SaveProjectSettings(), FOOTPRINT_VIEWER_FRAME::SelectAndViewFootprint(), SCH_BASE_FRAME::SelectComponentFromLibrary(), FOOTPRINT_VIEWER_FRAME::SelectCurrentFootprint(), PCB_BASE_FRAME::SelectLibrary(), SCH_BASE_FRAME::SelectLibraryFromList(), SCH_EDIT_FRAME::sendNetlist(), FOOTPRINT_VIEWER_FRAME::setCurFootprintName(), LIB_EDIT_FRAME::SetCurLib(), FOOTPRINT_VIEWER_FRAME::setCurNickname(), LIB_EDIT_FRAME::SetCurPart(), DIALOG_CHOOSE_COMPONENT::ShowFootprintFor(), SIM_PLOT_FRAME::SIM_PLOT_FRAME(), EDA_3D_VIEWER::takeScreenshot(), SIM_PLOT_FRAME::updateNetlistExporter(), SCH_SCREEN::UpdateSymbolLinks(), FOOTPRINT_VIEWER_FRAME::UpdateTitle(), CVPCB_MAINFRAME::UpdateTitle(), FOOTPRINT_EDIT_FRAME::updateTitle(), SCH_EDIT_FRAME::WriteNetListFile(), DIALOG_MODULE_BOARD_EDITOR::~DIALOG_MODULE_BOARD_EDITOR(), and DIALOG_MODULE_MODULE_EDITOR::~DIALOG_MODULE_MODULE_EDITOR().

35 {
36  return Kiway().Prj();
37 }
KIWAY & Kiway() const
Function Kiway returns a reference to the KIWAY that this object has an opportunity to participate in...
Definition: kiway_player.h:60
VTBL_ENTRY PROJECT & Prj() const
Function Prj returns the PROJECT associated with this KIWAY.
Definition: kiway.cpp:144
void DIALOG_LAYERS_SETUP::setCopperLayerCheckBoxes ( int  copperCount)
private

Definition at line 510 of file dialog_layers_setup.cpp.

References B_Cu, CTLs::checkbox, CTLs::choice, F_Cu, getCTLs(), LSET::InternalCuMask(), DIALOG_LAYERS_SETUP_BASE::m_LayersListPanel, CTLs::name, CTLs::panel, and setLayerCheckBox().

Referenced by DenyChangeCheckBox(), OnCopperLayersChoice(), OnPresetsChoice(), and TransferDataToWindow().

511 {
512  if( copperCount > 0 )
513  {
514  setLayerCheckBox( F_Cu, true );
515  --copperCount;
516  }
517 
518  if( copperCount > 0 )
519  {
520  setLayerCheckBox( B_Cu, true );
521  --copperCount;
522  }
523 
524  for( LSEQ seq = LSET::InternalCuMask().Seq(); seq; ++seq, --copperCount )
525  {
526  PCB_LAYER_ID layer = *seq;
527  bool state = copperCount > 0;
528 
529 #ifdef HIDE_INACTIVE_LAYERS
530  // This code hides non-active copper layers, or redisplays hidden
531  // layers which are now needed.
532  CTLs ctl = getCTLs( layer );
533 
534  ctl.name->Show( state );
535  ctl.checkbox->Show( state );
536  ctl.choice->Show( state );
537 
538  if( ctl.panel )
539  ctl.panel->Show( state );
540 #endif
541 
542  setLayerCheckBox( layer, state );
543  }
544 
545 #ifdef HIDE_INACTIVE_LAYERS
546  // Send an size event to force sizers to be updated,
547  // because the number of copper layers can have changed.
548  wxSizeEvent evt_size( m_LayersListPanel->GetSize() );
549  m_LayersListPanel->GetEventHandler()->ProcessEvent( evt_size );
550 #endif
551 }
Holds the 3 UI control pointers for a single board layer.
void setLayerCheckBox(LAYER_NUM layer, bool isChecked)
CTLs getCTLs(LAYER_NUM aLayerNumber)
Map aLayerNumber to the wx IDs for that layer which are the layer name control ID, checkbox control ID, and choice control ID.
wxControl * choice
wxPanel * panel
PCB_LAYER_ID
A quick note on layer IDs:
static LSET InternalCuMask()
Function InternalCuMask() returns a complete set of internal copper layers, which is all Cu layers ex...
Definition: lset.cpp:606
Class LSEQ is a sequence (and therefore also a set) of PCB_LAYER_IDs.
wxCheckBox * checkbox
wxControl * name
void KIWAY_HOLDER::SetKiway ( wxWindow *  aDest,
KIWAY aKiway 
)
inherited

Function SetKiway.

Parameters
aDestis the recipient of aKiway pointer. It is only used for debugging, since "this" is not a wxWindow*. "this" is a KIWAY_HOLDER mix-in.
aKiwayis often from a parent window, or from KIFACE::CreateWindow().

Definition at line 41 of file kiway_holder.cpp.

References KIWAY_HOLDER::m_kiway, and name.

Referenced by DIALOG_SHIM::DIALOG_SHIM(), and SIM_PLOT_FRAME::SIM_PLOT_FRAME().

42 {
43 #if defined(DEBUG)
44  // offer a trap point for debugging most any window
45  wxASSERT( aDest );
46  if( !strcmp( typeid(aDest).name(), "DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB" ) )
47  {
48  int breakhere=1;
49  (void) breakhere;
50  }
51 #endif
52 
53  (void) aDest;
54 
55  m_kiway = aKiway;
56 }
KIWAY * m_kiway
Definition: kiway_player.h:85
const char * name
void DIALOG_LAYERS_SETUP::setLayerCheckBox ( LAYER_NUM  layer,
bool  isChecked 
)
private

Definition at line 503 of file dialog_layers_setup.cpp.

References getCheckBox().

Referenced by setCopperLayerCheckBoxes(), and showSelectedLayerCheckBoxes().

504 {
505  wxCheckBox* ctl = getCheckBox( aLayer );
506  ctl->SetValue( isChecked );
507 }
wxCheckBox * getCheckBox(LAYER_NUM aLayer)
bool DIALOG_SHIM::Show ( bool  show)
overrideinherited

Definition at line 139 of file dialog_shim.cpp.

References class_map, DIALOG_SHIM::FixOSXCancelButtonIssue(), EDA_RECT::GetPosition(), EDA_RECT::GetSize(), DIALOG_SHIM::m_hash_key, wxPoint::x, and wxPoint::y.

Referenced by DisplayHotkeyList(), DIALOG_SHIM::EndQuasiModal(), InvokeDialogERC(), DIALOG_ANNOTATE::OnApplyClick(), DIALOG_SCH_FIND::OnCancel(), DIALOG_ANNOTATE::OnCancelClick(), DIALOG_DRC_CONTROL::OnLeftDClickClearance(), DIALOG_DRC_CONTROL::OnLeftDClickUnconnected(), DIALOG_DRC_CONTROL::OnPopupMenu(), DIALOG_EXCHANGE_MODULE::OnQuit(), POSITION_RELATIVE_TOOL::PositionRelative(), CVPCB_MAINFRAME::ReadNetListAndFpFiles(), DRC::ShowDRCDialog(), and DIALOG_SHIM::ShowQuasiModal().

140 {
141  bool ret;
142  const char* hash_key;
143 
144  if( m_hash_key.size() )
145  {
146  // a special case like EDA_LIST_DIALOG, which has multiple uses.
147  hash_key = m_hash_key.c_str();
148  }
149  else
150  {
151  hash_key = typeid(*this).name();
152  }
153 
154  // Show or hide the window. If hiding, save current position and size.
155  // If showing, use previous position and size.
156  if( show )
157  {
158  wxDialog::Raise(); // Needed on OS X and some other window managers (i.e. Unity)
159  ret = wxDialog::Show( show );
160 
161  // classname is key, returns a zeroed out default EDA_RECT if none existed before.
162  EDA_RECT r = class_map[ hash_key ];
163 
164  if( r.GetSize().x != 0 && r.GetSize().y != 0 )
165  SetSize( r.GetPosition().x, r.GetPosition().y, r.GetSize().x, r.GetSize().y, 0 );
166  }
167  else
168  {
169  // Save the dialog's position & size before hiding, using classname as key
170  EDA_RECT r( wxDialog::GetPosition(), wxDialog::GetSize() );
171  class_map[ hash_key ] = r;
172 
173  ret = wxDialog::Show( show );
174  }
175 
177 
178  return ret;
179 }
std::string m_hash_key
Definition: dialog_shim.h:128
void FixOSXCancelButtonIssue()
A ugly hack to fix an issue on OSX: when typing ctrl+c in a wxTextCtrl inside a dialog, it is closed instead of copying a text if a button with wxID_CANCEL is used in a wxStdDialogButtonSizer, when the dlg is created by wxFormBuilder: the label is &Cancel, and this accelerator key has priority to copy text standard accelerator, and the dlg is closed when trying to copy text this function do nothing on other platforms.
static RECT_MAP class_map
const wxPoint & GetPosition() const
Class EDA_RECT handles the component boundary box.
const wxSize & GetSize() const
void DIALOG_LAYERS_SETUP::showBoardLayerNames ( )
private

Definition at line 417 of file dialog_layers_setup.cpp.

References dlg_layers(), BOARD::GetLayerName(), getName(), and m_pcb.

Referenced by TransferDataToWindow().

418 {
419  // Establish all the board's layer names into the dialog presentation, by
420  // obtaining them from BOARD::GetLayerName() which calls
421  // BOARD::GetStandardLayerName() for non-coppers.
422 
423  for( LSEQ seq = dlg_layers(); seq; ++seq )
424  {
425  PCB_LAYER_ID layer = *seq;
426 
427  wxControl* ctl = getName( layer );
428 
429  wxASSERT( ctl );
430 
431  if( ctl )
432  {
433  wxString lname = m_pcb->GetLayerName( layer );
434 
435  if( ctl->IsKindOf( CLASSINFO( wxTextCtrl ) ) )
436  ((wxTextCtrl*)ctl)->SetValue( lname ); // wxTextCtrl
437  else
438  ctl->SetLabel( lname ); // wxStaticText
439  }
440  }
441 }
static LSEQ dlg_layers()
wxControl * getName(LAYER_NUM aLayer)
PCB_LAYER_ID
A quick note on layer IDs:
const wxString GetLayerName(PCB_LAYER_ID aLayer) const
Function GetLayerName returns the name of a layer given by aLayer.
Class LSEQ is a sequence (and therefore also a set) of PCB_LAYER_IDs.
void DIALOG_LAYERS_SETUP::showCopperChoice ( int  copperCount)
private

Definition at line 396 of file dialog_layers_setup.cpp.

References DIALOG_LAYERS_SETUP_BASE::m_CopperLayersChoice, and MAX_CU_LAYERS.

Referenced by OnPresetsChoice(), and TransferDataToWindow().

397 {
398  if( copperCount > MAX_CU_LAYERS )
399  copperCount = MAX_CU_LAYERS;
400 
401  if( copperCount < 2 )
402  copperCount = 2;
403 
404  for( int lyrCnt = 2; lyrCnt <= MAX_CU_LAYERS; lyrCnt += 2 )
405  {
406  // note this will change a one layer board to 2:
407  if( copperCount <= lyrCnt )
408  {
409  int idx = lyrCnt/2 - 1;
410  m_CopperLayersChoice->SetSelection(idx);
411  break;
412  }
413  }
414 }
void DIALOG_LAYERS_SETUP::showLayerTypes ( )
private

Definition at line 472 of file dialog_layers_setup.cpp.

References LSET::AllCuMask(), getChoice(), BOARD::GetLayerType(), and m_pcb.

Referenced by TransferDataToWindow().

473 {
474  for( LSEQ seq = LSET::AllCuMask().Seq(); seq; ++seq )
475  {
476  PCB_LAYER_ID cu_layer = *seq;
477 
478  wxChoice* ctl = getChoice( cu_layer );
479  ctl->SetSelection( m_pcb->GetLayerType( cu_layer ) );
480  }
481 }
static LSET AllCuMask(int aCuLayerCount=MAX_CU_LAYERS)
Function AllCuMask returns a mask holding the requested number of Cu PCB_LAYER_IDs.
Definition: lset.cpp:646
PCB_LAYER_ID
A quick note on layer IDs:
Class LSEQ is a sequence (and therefore also a set) of PCB_LAYER_IDs.
wxChoice * getChoice(LAYER_NUM aLayer)
LAYER_T GetLayerType(PCB_LAYER_ID aLayer) const
Function GetLayerType returns the type of the copper layer given by aLayer.
void DIALOG_LAYERS_SETUP::showPresets ( LSET  enabledLayerMask)
private

Definition at line 455 of file dialog_layers_setup.cpp.

References DIM, and DIALOG_LAYERS_SETUP_BASE::m_PresetsChoice.

Referenced by OnCheckBox(), OnCopperLayersChoice(), and TransferDataToWindow().

456 {
457  int presetsNdx = 0; // the "Custom" setting, matches nothing
458 
459  for( unsigned i=1; i<DIM( presets ); ++i )
460  {
461  if( enabledLayers == presets[i] )
462  {
463  presetsNdx = i;
464  break;
465  }
466  }
467 
468  m_PresetsChoice->SetSelection( presetsNdx );
469 }
#define DIM(x)
of elements in an array
Definition: macros.h:98
static const LSET presets[]
int DIALOG_SHIM::ShowQuasiModal ( )
inherited

Definition at line 495 of file dialog_shim.cpp.

References DBG, DIALOG_SHIM::m_qmodal_loop, DIALOG_SHIM::m_qmodal_parent_disabler, DIALOG_SHIM::m_qmodal_showing, and DIALOG_SHIM::Show().

Referenced by LIB_EDIT_FRAME::DeleteOnePart(), SCH_EDIT_FRAME::EditComponent(), SCH_EDIT_FRAME::EditComponentFieldText(), LIB_EDIT_FRAME::EditField(), EDIT_TOOL::ExchangeFootprints(), PCB_EDIT_FRAME::InstallExchangeModuleFrame(), LIB_EDIT_FRAME::InstallFieldsEditorDialog(), SCH_EDIT_FRAME::InstallHierarchyFrame(), InvokeDialogCreateBOMEditor(), InvokeDialogUpdateFields(), SCH_EDIT_FRAME::OnRemapSymbols(), LIB_VIEW_FRAME::OnSelectSymbol(), SCH_EDIT_FRAME::OpenProjectFiles(), and SCH_BASE_FRAME::SelectComponentFromLibrary().

496 {
497  // This is an exception safe way to zero a pointer before returning.
498  // Yes, even though DismissModal() clears this first normally, this is
499  // here in case there's an exception before the dialog is dismissed.
500  struct NULLER
501  {
502  void*& m_what;
503  NULLER( void*& aPtr ) : m_what( aPtr ) {}
504  ~NULLER() { m_what = 0; } // indeed, set it to NULL on destruction
505  } clear_this( (void*&) m_qmodal_loop );
506 
507  // release the mouse if it's currently captured as the window having it
508  // will be disabled when this dialog is shown -- but will still keep the
509  // capture making it impossible to do anything in the modal dialog itself
510  wxWindow* win = wxWindow::GetCapture();
511  if( win )
512  win->ReleaseMouse();
513 
514  // Get the optimal parent
515  wxWindow* parent = GetParentForModalDialog( GetParent(), GetWindowStyle() );
516 
517  // Show the optimal parent
518  DBG( if( parent ) printf( "%s: optimal parent: %s\n", __func__, typeid(*parent).name() );)
519 
520  wxASSERT_MSG( !m_qmodal_parent_disabler,
521  wxT( "Caller using ShowQuasiModal() twice on same window?" ) );
522 
523  // quasi-modal: disable only my "optimal" parent
525 
526  Show( true );
527 
528  m_qmodal_showing = true;
529 
530  EVENT_LOOP event_loop;
531 
532  m_qmodal_loop = &event_loop;
533 
534  event_loop.Run();
535 
536  return GetReturnCode();
537 }
bool m_qmodal_showing
Definition: dialog_shim.h:132
EVENT_LOOP * m_qmodal_loop
Definition: dialog_shim.h:131
bool Show(bool show) override
WDO_ENABLE_DISABLE * m_qmodal_parent_disabler
Definition: dialog_shim.h:133
Toggle a window's "enable" status to disabled, then enabled on destruction.
Definition: dialog_shim.cpp:33
#define DBG(x)
Definition: fctsys.h:33
void DIALOG_LAYERS_SETUP::showSelectedLayerCheckBoxes ( LSET  enableLayerMask)
private

Definition at line 444 of file dialog_layers_setup.cpp.

References dlg_layers(), and setLayerCheckBox().

Referenced by OnPresetsChoice(), and TransferDataToWindow().

445 {
446  // the check boxes
447  for( LSEQ seq = dlg_layers(); seq; ++seq )
448  {
449  PCB_LAYER_ID layer = *seq;
450  setLayerCheckBox( layer, enabledLayers[layer] );
451  }
452 }
static LSEQ dlg_layers()
void setLayerCheckBox(LAYER_NUM layer, bool isChecked)
PCB_LAYER_ID
A quick note on layer IDs:
Class LSEQ is a sequence (and therefore also a set) of PCB_LAYER_IDs.
bool DIALOG_LAYERS_SETUP::testLayerNames ( )
private

Definition at line 725 of file dialog_layers_setup.cpp.

References LSET::AllCuMask(), DisplayError(), getLayerName(), getName(), hasOneOf(), m_enabledLayers, and name.

Referenced by TransferDataFromWindow().

726 {
727  std::vector<wxString> names;
728 
729  wxTextCtrl* ctl;
730 
731  for( LSEQ seq = LSET::AllCuMask().Seq(); seq; ++seq )
732  {
733  PCB_LAYER_ID layer = *seq;
734 
735  // we _can_ rely on m_enabledLayers being current here:
736  if( !m_enabledLayers[layer] )
737  continue;
738 
739  wxString name = getLayerName( layer );
740 
741  ctl = (wxTextCtrl*) getName( layer );
742 
743  // check name for legality.
744  // 1) cannot be blank.
745  // 2) cannot have blanks.
746  // 3) cannot have " chars
747  // 4) cannot be 'signal'
748  // 5) must be unique.
749  // 6) cannot have illegal chars in filenames ( some filenames are built from layer names )
750  // like : % $ \ " / :
751  wxString badchars = wxFileName::GetForbiddenChars( wxPATH_DOS );
752  badchars.Append( '%' );
753 
754  if( !name )
755  {
756  DisplayError( this, _( "Layer name may not be empty." ) );
757  ctl->SetFocus(); // on the bad name
758  return false;
759  }
760 
761  if( hasOneOf( name, badchars ) )
762  {
763  DisplayError( this, _( "Layer name has an illegal character, one of: '" ) +
764  badchars + wxT( "'" ) );
765  ctl->SetFocus(); // on the bad name
766  return false;
767  }
768 
769  if( name == wxT( "signal" ) )
770  {
771  DisplayError( this, _( "Layer name 'signal' is reserved." ) );
772  ctl->SetFocus(); // on the bad name
773  return false;
774  }
775 
776  for( std::vector<wxString>::iterator it = names.begin(); it != names.end(); ++it )
777  {
778  if( name == *it )
779  {
780  DisplayError( this, _( "Duplicate layer names are not permitted." ) );
781  ctl->SetFocus(); // on the bad name
782  return false;
783  }
784  }
785 
786  names.push_back( name );
787  }
788 
789  return true;
790 }
static LSET AllCuMask(int aCuLayerCount=MAX_CU_LAYERS)
Function AllCuMask returns a mask holding the requested number of Cu PCB_LAYER_IDs.
Definition: lset.cpp:646
wxControl * getName(LAYER_NUM aLayer)
PCB_LAYER_ID
A quick note on layer IDs:
Class LSEQ is a sequence (and therefore also a set) of PCB_LAYER_IDs.
wxString getLayerName(LAYER_NUM layer)
const char * name
static bool hasOneOf(const wxString &str, const wxString &chars)
void DisplayError(wxWindow *parent, const wxString &text, int displaytime)
Function DisplayError displays an error or warning message box with aMessage.
Definition: confirm.cpp:71
bool DIALOG_LAYERS_SETUP::TransferDataFromWindow ( )
overrideprivate

Definition at line 612 of file dialog_layers_setup.cpp.

References LSET::AllCuMask(), GENERAL_COLLECTOR::BoardLevelItems, PCB_LAYER_COLLECTOR::Collect(), DisplayError(), g_UserUnit, COLLECTOR::GetCount(), BOARD::GetDesignSettings(), getLayerName(), getLayerTypeIndex(), getRemovedLayersWithItems(), getUILayerMask(), IsOK(), m_enabledLayers, m_pcb, DIALOG_LAYERS_SETUP_BASE::m_textCtrlBrdThickness, name, BOARD::Remove(), BOARD_DESIGN_SETTINGS::SetBoardThickness(), BOARD::SetEnabledLayers(), PCB_LAYER_COLLECTOR::SetLayerId(), BOARD::SetLayerName(), BOARD::SetLayerType(), BOARD::SetVisibleLayers(), StringFromValue(), testLayerNames(), and ValueFromTextCtrl().

613 {
614  if( !wxWindow::TransferDataFromWindow() || !testLayerNames() )
615  return false;
616 
617  wxString msg;
618 
619  // Make sure the board thickness is sane.
620  int thickness = ValueFromTextCtrl( *m_textCtrlBrdThickness );
621 
622  if( thickness < Millimeter2iu( 0.1 ) || thickness > Millimeter2iu( 10.0 ) )
623  {
624  msg.Printf( _( "Board thickness %s is out of range." ),
625  StringFromValue( g_UserUnit, thickness, true ) );
626  DisplayError( this, msg );
627  return false;
628  }
629 
630  // Check for removed layers with items which will get deleted from the board.
631  LSEQ removedLayers = getRemovedLayersWithItems();
632 
633  if( !removedLayers.empty()
634  && !IsOK( this, _( "Items have been found on removed layers. This operation will delete "
635  "all items from removed layers and cannot be undone. Do you wish to "
636  "continue?" ) ) )
637  return false;
638 
639  // Delete all objects on layers that have been removed. Leaving them in copper layers
640  // can (will?) result in DRC errors and it pollutes the board file with cruft.
641  if( !removedLayers.empty() )
642  {
643  PCB_LAYER_COLLECTOR collector;
644 
645  for( auto layer_id : removedLayers )
646  {
647  collector.SetLayerId( layer_id );
649 
650  // Bye-bye items on on removed layer.
651  if( collector.GetCount() != 0 )
652  {
653  for( int i = 0; i < collector.GetCount(); i++ )
654  m_pcb->Remove( collector[i] );
655  }
656  }
657  }
658 
659  wxString name;
660 
663 
664  /* Ensure enabled layers are also visible
665  * This is mainly to avoid mistakes if some enabled
666  * layers are not visible when exiting this dialog
667  */
669 
670  for( LSEQ seq = LSET::AllCuMask().Seq(); seq; ++seq )
671  {
672  PCB_LAYER_ID layer = *seq;
673 
674  if( m_enabledLayers[layer] )
675  {
676  name = getLayerName( layer );
677  m_pcb->SetLayerName( layer, name );
678  LAYER_T t = (LAYER_T) getLayerTypeIndex( layer );
679  m_pcb->SetLayerType( layer, t );
680  }
681  }
682 
683  m_pcb->GetDesignSettings().SetBoardThickness( thickness );
684 
685  return true;
686 }
static LSET AllCuMask(int aCuLayerCount=MAX_CU_LAYERS)
Function AllCuMask returns a mask holding the requested number of Cu PCB_LAYER_IDs.
Definition: lset.cpp:646
int GetCount() const
Function GetCount returns the number of objects in the list.
static const KICAD_T BoardLevelItems[]
A scan list for all primary board items, omitting items which are subordinate to a MODULE...
Definition: collectors.h:255
wxString StringFromValue(EDA_UNITS_T aUnit, int aValue, bool aAddUnitSymbol)
Function StringFromValue returns the string from aValue according to units (inch, mm ...
Definition: base_units.cpp:203
void Collect(BOARD_ITEM *aBoard, const KICAD_T aScanList[])
Tests a BOARD_ITEM using this class's Inspector method, which does the collection.
Definition: collectors.cpp:494
Collect all BOARD_ITEM objects on a given layer.
Definition: collectors.h:573
bool SetLayerType(PCB_LAYER_ID aLayer, LAYER_T aLayerType)
Function SetLayerType changes the type of the layer given by aLayer.
void SetBoardThickness(int aThickness)
void SetLayerId(PCB_LAYER_ID aLayerId)
Definition: collectors.h:583
PCB_LAYER_ID
A quick note on layer IDs:
void SetVisibleLayers(LSET aLayerMask)
Function SetVisibleLayers is a proxy function that calls the correspondent function in m_BoardSetting...
LAYER_T
Enum LAYER_T gives the allowed types of layers, same as Specctra DSN spec.
Definition: class_board.h:71
bool SetLayerName(PCB_LAYER_ID aLayer, const wxString &aLayerName)
Function SetLayerName changes the name of the layer given by aLayer.
BOARD_DESIGN_SETTINGS & GetDesignSettings() const
Function GetDesignSettings.
Definition: class_board.h:532
int ValueFromTextCtrl(const wxTextCtrl &aTextCtr)
Convert the number Value in a string according to the internal units and the selected unit (g_UserUni...
Definition: base_units.cpp:384
Class LSEQ is a sequence (and therefore also a set) of PCB_LAYER_IDs.
EDA_UNITS_T g_UserUnit
Global variables definitions.
Definition: common.cpp:56
LSET getUILayerMask()
Return the selected layer mask within the UI checkboxes.
LSEQ getRemovedLayersWithItems()
Return a list of layers removed from the board that contain items.
wxString getLayerName(LAYER_NUM layer)
const char * name
int getLayerTypeIndex(LAYER_NUM layer)
void DisplayError(wxWindow *parent, const wxString &text, int displaytime)
Function DisplayError displays an error or warning message box with aMessage.
Definition: confirm.cpp:71
bool IsOK(wxWindow *aParent, const wxString &aMessage)
Function IsOK displays a yes/no dialog with aMessage and returns the user response.
Definition: confirm.cpp:129
void SetEnabledLayers(LSET aLayerMask)
Function SetEnabledLayers is a proxy function that calls the correspondent function in m_BoardSetting...
void Remove(BOARD_ITEM *aBoardItem) override
Removes an item from the container.
bool DIALOG_LAYERS_SETUP::TransferDataToWindow ( )
overrideprivate

Definition at line 369 of file dialog_layers_setup.cpp.

References g_UserUnit, GetAbbreviatedUnitsLabel(), BOARD_DESIGN_SETTINGS::GetBoardThickness(), BOARD::GetDesignSettings(), m_copperLayerCount, m_enabledLayers, m_pcb, DIALOG_LAYERS_SETUP_BASE::m_staticTextBrdThicknessUnit, DIALOG_LAYERS_SETUP_BASE::m_textCtrlBrdThickness, PutValueInLocalUnits(), setCopperLayerCheckBoxes(), showBoardLayerNames(), showCopperChoice(), showLayerTypes(), showPresets(), and showSelectedLayerCheckBoxes().

370 {
371  if( !wxDialog::TransferDataToWindow() )
372  return false;
373 
379 
383  showLayerTypes();
384 
385  return true;
386 }
void showPresets(LSET enabledLayerMask)
void showCopperChoice(int copperCount)
wxString GetAbbreviatedUnitsLabel(EDA_UNITS_T aUnit)
Definition: base_units.cpp:479
void setCopperLayerCheckBoxes(int copperCount)
BOARD_DESIGN_SETTINGS & GetDesignSettings() const
Function GetDesignSettings.
Definition: class_board.h:532
EDA_UNITS_T g_UserUnit
Global variables definitions.
Definition: common.cpp:56
void showSelectedLayerCheckBoxes(LSET enableLayerMask)
void PutValueInLocalUnits(wxTextCtrl &aTextCtr, int aValue)
Function PutValueInLocalUnits converts aValue from internal units to user units and append the units ...
Definition: base_units.cpp:265

Member Data Documentation

wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_AdhesBackCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_AdhesBackName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_AdhesBackPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_AdhesBackStaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_AdhesFrontCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_AdhesFrontName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_AdhesFrontPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_AdhesFrontStaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_BackCheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_BackChoice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_BackName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_BackPanel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_CommentsCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_CommentsName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_CommentsPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_CommentsStaticText
protectedinherited
int DIALOG_LAYERS_SETUP::m_copperLayerCount
private
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_CopperLayersChoice
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_CrtYdBackCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_CrtYdBackName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_CrtYdBackPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_CrtYdBackStaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_CrtYdFrontCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_CrtYdFrontName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_CrtYdFrontPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_CrtYdFrontStaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_DrawingsCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_DrawingsName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_DrawingsPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_DrawingsStaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_Eco1CheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_Eco1Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_Eco1Panel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_Eco1StaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_Eco2CheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_Eco2Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_Eco2Panel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_Eco2StaticText
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP::m_enabledStaticText
private

Definition at line 150 of file dialog_layers_setup.cpp.

Referenced by DIALOG_LAYERS_SETUP().

wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_FabBackCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_FabBackName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_FabBackPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_FabBackStaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_FabFrontCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_FabFrontName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_FabFrontPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_FabFrontStaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_FrontCheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_FrontChoice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_FrontName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_FrontPanel
protectedinherited
std::string DIALOG_SHIM::m_hash_key
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In10CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In10Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In10Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In10Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In11CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In11Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In11Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In11Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In12CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In12Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In12Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In12Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In13CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In13Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In13Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In13Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In14CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In14Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In14Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In14Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In15CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In15Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In15Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In15Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In16CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In16Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In16Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In16Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In17CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In17Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In17Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In17Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In18CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In18Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In18Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In18Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In19CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In19Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In19Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In19Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In1CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In1Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In1Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In1Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In20CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In20Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In20Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In20Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In21CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In21Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In21Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In21Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In22CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In22Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In22Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In22Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In23CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In23Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In23Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In23Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In24CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In24Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In24Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In24Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In25CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In25Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In25Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In25Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In26CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In26Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In26Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In26Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In27CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In27Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In27Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In27Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In28CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In28Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In28Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In28Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In29CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In29Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In29Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In29Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In2CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In2Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In2Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In2Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In30CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In30Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In30Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In30Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In3CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In3Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In3Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In3Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In4CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In4Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In4Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In4Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In5CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In5Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In5Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In5Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In6CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In6Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In6Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In6Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In7CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In7Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In7Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In7Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In8CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In8Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In8Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In8Panel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_In9CheckBox
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_In9Choice
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_In9Name
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_In9Panel
protectedinherited
wxFlexGridSizer* DIALOG_LAYERS_SETUP_BASE::m_LayerListFlexGridSizer
protectedinherited
wxScrolledWindow* DIALOG_LAYERS_SETUP_BASE::m_LayersListPanel
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_MarginCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_MarginName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_MarginPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_MarginStaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_MaskBackCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_MaskBackName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_MaskBackPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_MaskBackStaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_MaskFrontCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_MaskFrontName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_MaskFrontPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_MaskFrontStaticText
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP::m_nameStaticText
private

Definition at line 149 of file dialog_layers_setup.cpp.

Referenced by DIALOG_LAYERS_SETUP().

wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_PCBEdgesCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_PCBEdgesName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_PCBEdgesPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_PCBEdgesStaticText
protectedinherited
wxChoice* DIALOG_LAYERS_SETUP_BASE::m_PresetsChoice
protectedinherited
EVENT_LOOP* DIALOG_SHIM::m_qmodal_loop
protectedinherited

Definition at line 131 of file dialog_shim.h.

Referenced by DIALOG_SHIM::EndQuasiModal(), and DIALOG_SHIM::ShowQuasiModal().

WDO_ENABLE_DISABLE* DIALOG_SHIM::m_qmodal_parent_disabler
protectedinherited
bool DIALOG_SHIM::m_qmodal_showing
protectedinherited
wxStdDialogButtonSizer* DIALOG_LAYERS_SETUP_BASE::m_sdbSizer
protectedinherited
wxButton* DIALOG_LAYERS_SETUP_BASE::m_sdbSizerCancel
protectedinherited
wxButton* DIALOG_LAYERS_SETUP_BASE::m_sdbSizerOK
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_SilkSBackCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_SilkSBackName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_SilkSBackPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_SilkSBackStaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_SilkSFrontCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_SilkSFrontName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_SilkSFrontPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_SilkSFrontStaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_SoldPBackCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_SoldPBackName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_SoldPBackPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_SoldPBackStaticText
protectedinherited
wxCheckBox* DIALOG_LAYERS_SETUP_BASE::m_SoldPFrontCheckBox
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_SoldPFrontName
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_SoldPFrontPanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_SoldPFrontStaticText
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_staticTextBrdThickness
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_staticTextBrdThicknessUnit
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_staticTextCopperLayers
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_staticTextGrouping
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP_BASE::m_staticTextLayers
protectedinherited
wxTextCtrl* DIALOG_LAYERS_SETUP_BASE::m_textCtrlBrdThickness
protectedinherited
wxPanel* DIALOG_LAYERS_SETUP_BASE::m_TitlePanel
protectedinherited
wxStaticText* DIALOG_LAYERS_SETUP::m_typeStaticText
private

Definition at line 151 of file dialog_layers_setup.cpp.

Referenced by DIALOG_LAYERS_SETUP().


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