KiCad PCB EDA Suite
DIALOG_MODULE_MODULE_EDITOR Class Reference

#include <dialog_edit_module_for_Modedit.h>

Inheritance diagram for DIALOG_MODULE_MODULE_EDITOR:
DIALOG_MODULE_MODULE_EDITOR_BASE DIALOG_SHIM KIWAY_HOLDER

Public Member Functions

 DIALOG_MODULE_MODULE_EDITOR (FOOTPRINT_EDIT_FRAME *aParent, MODULE *aModule)
 
 ~DIALOG_MODULE_MODULE_EDITOR ()
 
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

wxNotebook * m_NoteBook
 
wxPanel * m_PanelProperties
 
wxStaticText * m_staticTextDoc
 
wxTextCtrl * m_DocCtrl
 
wxStaticText * m_staticTextKeywords
 
wxTextCtrl * m_KeywordCtrl
 
wxStaticText * m_staticTextRef
 
wxTextCtrl * m_ReferenceCtrl
 
wxButton * m_button4
 
wxStaticText * m_staticTextVal
 
wxTextCtrl * m_ValueCtrl
 
wxButton * m_button5
 
wxStaticText * m_staticTextFp
 
wxTextCtrl * m_FootprintNameCtrl
 
wxRadioBox * m_AttributsCtrl
 
wxRadioBox * m_AutoPlaceCtrl
 
wxStaticText * m_staticText11
 
wxSlider * m_CostRot90Ctrl
 
wxStaticText * m_staticText12
 
wxSlider * m_CostRot180Ctrl
 
wxStaticText * m_staticTextInfo
 
wxStaticText * m_staticTextNetClearance
 
wxTextCtrl * m_NetClearanceValueCtrl
 
wxStaticText * m_NetClearanceUnits
 
wxStaticLine * m_staticline1
 
wxStaticLine * m_staticline2
 
wxStaticLine * m_staticline3
 
wxStaticText * m_MaskClearanceTitle
 
wxTextCtrl * m_SolderMaskMarginCtrl
 
wxStaticText * m_SolderMaskMarginUnits
 
wxStaticText * m_staticTextSolderPaste
 
wxTextCtrl * m_SolderPasteMarginCtrl
 
wxStaticText * m_SolderPasteMarginUnits
 
wxStaticText * m_staticTextRatio
 
wxTextCtrl * m_SolderPasteMarginRatioCtrl
 
wxStaticText * m_SolderPasteRatioMarginUnits
 
wxPanel * m_Panel3D
 
wxListBox * m_3D_ShapeNameListBox
 
wxButton * m_buttonBrowse
 
wxButton * m_buttonRemove
 
wxButton * m_buttonEdit
 
wxButton * m_button6
 
wxBoxSizer * bLowerSizer3D
 
wxStdDialogButtonSizer * m_sdbSizerStdButtons
 
wxButton * m_sdbSizerStdButtonsOK
 
wxButton * m_sdbSizerStdButtonsCancel
 
std::string m_hash_key
 
EVENT_LOOPm_qmodal_loop
 
bool m_qmodal_showing
 
WDO_ENABLE_DISABLEm_qmodal_parent_disabler
 

Private Member Functions

void BrowseAndAdd3DShapeFile ()
 
void initModeditProperties ()
 
void Edit3DShapeFileName ()
 
void OnEditValue (wxCommandEvent &event) override
 
void OnEditReference (wxCommandEvent &event) override
 
void On3DShapeSelection (wxCommandEvent &event)
 
void On3DShapeNameSelected (wxCommandEvent &event) override
 
void Add3DShape (wxCommandEvent &event) override
 
void Remove3DShape (wxCommandEvent &event) override
 
void Edit3DShapeFilename (wxCommandEvent &event) override
 
void OnCancelClick (wxCommandEvent &event) override
 
void OnOkClick (wxCommandEvent &event) override
 
void Cfg3DPath (wxCommandEvent &event) override
 
void OnInitDlg (wxInitDialogEvent &event) override
 

Private Attributes

FOOTPRINT_EDIT_FRAMEm_parent
 
MODULEm_currentModule
 
TEXTE_MODULEm_referenceCopy
 
TEXTE_MODULEm_valueCopy
 
std::vector< S3D_INFOm_shapes3D_list
 
int m_lastSelected3DShapeIndex
 
PANEL_PREV_3Dm_PreviewPane
 
MODULEm_currentModuleCopy
 

Static Private Attributes

static size_t m_page = 0
 

Detailed Description

Definition at line 35 of file dialog_edit_module_for_Modedit.h.

Constructor & Destructor Documentation

DIALOG_MODULE_MODULE_EDITOR::DIALOG_MODULE_MODULE_EDITOR ( FOOTPRINT_EDIT_FRAME aParent,
MODULE aModule 
)

Definition at line 63 of file dialog_edit_module_for_Modedit.cpp.

References DIALOG_MODULE_MODULE_EDITOR_BASE::bLowerSizer3D, initModeditProperties(), KiBitmap(), m_currentModule, m_currentModuleCopy, DIALOG_MODULE_MODULE_EDITOR_BASE::m_FootprintNameCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_NoteBook, m_page, DIALOG_MODULE_MODULE_EDITOR_BASE::m_Panel3D, m_parent, m_PreviewPane, DIALOG_MODULE_MODULE_EDITOR_BASE::m_sdbSizerStdButtonsOK, m_shapes3D_list, Pgm(), and KIWAY_HOLDER::Prj().

64  :
66 {
67  m_parent = aParent;
68  m_currentModule = aModule;
69 
70  // Give an icon
71  wxIcon icon;
72  icon.CopyFromBitmap( KiBitmap( icon_modedit_xpm ) );
73  SetIcon( icon );
74 
75  aParent->Prj().Get3DCacheManager()->GetResolver()->SetProgramBase( &Pgm() );
76 
77  m_currentModuleCopy = new MODULE( *aModule );
78 
80  aParent->Prj().Get3DCacheManager(),
82  &m_shapes3D_list );
83 
84  bLowerSizer3D->Add( m_PreviewPane, 1, wxEXPAND, 5 );
85 
88 
89  m_NoteBook->SetSelection( m_page );
90 
91  m_sdbSizerStdButtonsOK->SetDefault();
92 
93  Layout();
94 
95 }
PGM_BASE & Pgm()
The global Program "get" accessor.
Definition: kicad.cpp:65
Class FILE_NAME_CHAR_VALIDATOR.
Definition: validators.h:43
PROJECT & Prj() const
Function Prj returns a reference to the PROJECT "associated with" this KIWAY.
wxBitmap KiBitmap(BITMAP_DEF aBitmap)
Function KiBitmap constructs a wxBitmap from a memory record, held in a BITMAP_DEF.
Definition: bitmap.cpp:36
DIALOG_MODULE_MODULE_EDITOR_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Footprint Properties"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
DIALOG_MODULE_MODULE_EDITOR::~DIALOG_MODULE_MODULE_EDITOR ( )

Definition at line 98 of file dialog_edit_module_for_Modedit.cpp.

References DIALOG_MODULE_MODULE_EDITOR_BASE::m_NoteBook, m_page, m_PreviewPane, m_referenceCopy, m_shapes3D_list, m_valueCopy, and KIWAY_HOLDER::Prj().

99 {
100  m_shapes3D_list.clear();
101 
102  // free the memory used by all models, otherwise models which were
103  // browsed but not used would consume memory
104  Prj().Get3DCacheManager()->FlushCache( false );
105 
106  // the GL canvas has to be visible before it is destroyed
107  m_page = m_NoteBook->GetSelection();
108  m_NoteBook->SetSelection( 1 );
109 
110  delete m_referenceCopy;
111  m_referenceCopy = NULL; // just in case, to avoid double-free
112 
113  delete m_valueCopy;
114  m_valueCopy = NULL;
115 
116  delete m_PreviewPane;
117  m_PreviewPane = NULL; // just in case, to avoid double-free
118 
119  // this is already deleted by the board used on preview pane so
120  // no need to delete here
121  // delete m_currentModuleCopy;
122  // m_currentModuleCopy = NULL;
123 }
PROJECT & Prj() const
Function Prj returns a reference to the PROJECT "associated with" this KIWAY.

Member Function Documentation

void DIALOG_MODULE_MODULE_EDITOR::Add3DShape ( wxCommandEvent &  event)
inlineoverrideprivatevirtual
void DIALOG_MODULE_MODULE_EDITOR::BrowseAndAdd3DShapeFile ( )
private

Definition at line 379 of file dialog_edit_module_for_Modedit.cpp.

References Format(), PROJECT::GetRString(), DIALOG_MODULE_MODULE_EDITOR_BASE::m_3D_ShapeNameListBox, S3D_INFO::m_Filename, m_lastSelected3DShapeIndex, m_PreviewPane, m_shapes3D_list, KIWAY_HOLDER::Prj(), S3D::Select3DModel(), PANEL_PREV_3D::SetModelDataIdx(), PROJECT::SetRString(), S3D_FILENAME_RESOLVER::SplitAlias(), PROJECT::VIEWER_3D_FILTER_INDEX, and PROJECT::VIEWER_3D_PATH.

Referenced by Add3DShape().

380 {
381  PROJECT& prj = Prj();
382  S3D_INFO model;
383 
384  wxString initialpath = prj.GetRString( PROJECT::VIEWER_3D_PATH );
385  wxString sidx = prj.GetRString( PROJECT::VIEWER_3D_FILTER_INDEX );
386  int filter = 0;
387 
388  if( !sidx.empty() )
389  {
390  long tmp;
391  sidx.ToLong( &tmp );
392 
393  if( tmp > 0 && tmp <= 0x7FFFFFFF )
394  filter = (int) tmp;
395  }
396 
397  if( !S3D::Select3DModel( m_PreviewPane, Prj().Get3DCacheManager(),
398  initialpath, filter, &model ) || model.m_Filename.empty() )
399  {
400  return;
401  }
402 
403  prj.SetRString( PROJECT::VIEWER_3D_PATH, initialpath );
404  sidx = wxString::Format( wxT( "%i" ), filter );
406  wxString origPath = model.m_Filename;
407  wxString alias;
408  wxString shortPath;
409  S3D_FILENAME_RESOLVER* res = Prj().Get3DCacheManager()->GetResolver();
410 
411  if( res && res->SplitAlias( origPath, alias, shortPath ) )
412  {
413  origPath = alias;
414  origPath.append( wxT( ":" ) );
415  origPath.append( shortPath );
416  }
417 
418  m_3D_ShapeNameListBox->Append( origPath );
419 
420  #ifdef __WINDOWS__
421  // In Kicad files, filenames and paths are stored using Unix notation
422  model.m_Filename.Replace( wxT( "\\" ), wxT( "/" ) );
423  #endif
424 
425  m_shapes3D_list.push_back( model );
428 
429  if( m_PreviewPane )
431 
432  return;
433 }
Class PROJECT holds project specific data.
Definition: project.h:51
bool SplitAlias(const wxString &aFileName, wxString &anAlias, wxString &aRelPath)
Function SplitAlias returns true if the given name contains an alias and populates the string anAlias...
PROJECT & Prj() const
Function Prj returns a reference to the PROJECT "associated with" this KIWAY.
void SetModelDataIdx(int idx, bool aReloadPreviewModule=false)
SetModelDataIdx - This will set the index of the INFO list that was set on the parent.
bool Select3DModel(wxWindow *aParent, S3D_CACHE *aCache, wxString &prevModelSelectDir, int &prevModelWildcard, S3D_INFO *aModel)
VTBL_ENTRY void SetRString(RSTRING_T aStringId, const wxString &aString)
Function SetRString stores a "retained string", which is any session and project specific string iden...
Definition: project.cpp:162
VTBL_ENTRY const wxString & GetRString(RSTRING_T aStringId)
Function GetRString returns a "retained string", which is any session and project specific string ide...
Definition: project.cpp:177
void Format(OUTPUTFORMATTER *out, int aNestLevel, int aCtl, CPTREE &aTree)
Function Format outputs a PTREE into s-expression format via an OUTPUTFORMATTER derivative.
Definition: ptree.cpp:205
wxString m_Filename
The 3D shape filename in 3D library.
Definition: 3d_info.h:45
void DIALOG_MODULE_MODULE_EDITOR::Cfg3DPath ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_MODULE_MODULE_EDITOR_BASE.

Definition at line 554 of file dialog_edit_module_for_Modedit.cpp.

References S3D::Configure3DPaths(), m_lastSelected3DShapeIndex, m_PreviewPane, KIWAY_HOLDER::Prj(), and PANEL_PREV_3D::SetModelDataIdx().

555 {
556  if( S3D::Configure3DPaths( this, Prj().Get3DCacheManager()->GetResolver() ) )
557  if( m_lastSelected3DShapeIndex >= 0 )
558  if( m_PreviewPane )
560 }
bool Configure3DPaths(wxWindow *aParent, S3D_FILENAME_RESOLVER *aResolver)
PROJECT & Prj() const
Function Prj returns a reference to the PROJECT "associated with" this KIWAY.
void SetModelDataIdx(int idx, bool aReloadPreviewModule=false)
SetModelDataIdx - This will set the index of the INFO list that was set on the parent.
void DIALOG_MODULE_MODULE_EDITOR::Edit3DShapeFileName ( )
private

Definition at line 327 of file dialog_edit_module_for_Modedit.cpp.

References DIALOG_MODULE_MODULE_EDITOR_BASE::m_3D_ShapeNameListBox, m_PreviewPane, m_shapes3D_list, KIWAY_HOLDER::Prj(), PANEL_PREV_3D::UpdateModelName(), and S3D_FILENAME_RESOLVER::ValidateFileName().

Referenced by Edit3DShapeFilename().

328 {
329  int idx = m_3D_ShapeNameListBox->GetSelection();
330 
331  if( idx < 0 )
332  return;
333 
334  // Edit filename
335  wxString filename = m_3D_ShapeNameListBox->GetStringSelection();
336  wxTextEntryDialog dlg( this, wxEmptyString, wxEmptyString, filename );
337 
338  bool hasAlias;
339  S3D_FILENAME_RESOLVER* res = Prj().Get3DCacheManager()->GetResolver();
340 
341  if( dlg.ShowModal() != wxID_OK )
342  return;
343 
344  filename = dlg.GetValue();
345 
346  if( filename.empty() )
347  return;
348 
349  if( !res->ValidateFileName( filename, hasAlias ) )
350  {
351  wxString msg = _( "Invalid filename: " );
352  msg.append( filename );
353  wxMessageBox( msg, _( "Edit 3D file name" ) );
354 
355  return;
356  }
357 
358  m_3D_ShapeNameListBox->SetString( idx, filename );
359 
360  // if the user has specified an alias in the name then prepend ':'
361  if( hasAlias )
362  filename.insert( 0, wxT( ":" ) );
363 
364  #ifdef __WINDOWS__
365  // In Kicad files, filenames and paths are stored using Unix notation
366  filename.Replace( wxT( "\\" ), wxT( "/" ) );
367  #endif
368 
369  m_shapes3D_list[idx].m_Filename = filename;
370 
371  // This assumes that the index didn't change and will just update the filename
372  if( m_PreviewPane )
373  m_PreviewPane->UpdateModelName( filename );
374 
375  return;
376 }
bool ValidateFileName(const wxString &aFileName, bool &hasAlias)
Function ValidateName returns true if the given path is a valid aliased relative path.
PROJECT & Prj() const
Function Prj returns a reference to the PROJECT "associated with" this KIWAY.
void UpdateModelName(wxString const &aModel)
void DIALOG_MODULE_MODULE_EDITOR::Edit3DShapeFilename ( wxCommandEvent &  event)
inlineoverrideprivatevirtual
bool DIALOG_SHIM::Enable ( bool  enable)
overrideinherited

Definition at line 181 of file dialog_shim.cpp.

Referenced by DIALOG_PRINT_USING_PRINTER::InitValues().

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

Definition at line 539 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().

540 {
541  // Hook up validator and transfer data from controls handling so quasi-modal dialogs
542  // handle validation in the same way as other dialogs.
543  if( ( retCode == wxID_OK ) && ( !Validate() || !TransferDataFromWindow() ) )
544  return;
545 
546  SetReturnCode( retCode );
547 
548  if( !IsQuasiModal() )
549  {
550  wxFAIL_MSG( wxT( "either DIALOG_SHIM::EndQuasiModal called twice or ShowQuasiModal wasn't called" ) );
551  return;
552  }
553 
554  m_qmodal_showing = false;
555 
556  if( m_qmodal_loop )
557  {
558  if( m_qmodal_loop->IsRunning() )
559  m_qmodal_loop->Exit( 0 );
560  else
561  m_qmodal_loop->ScheduleExit( 0 );
562 
563  m_qmodal_loop = NULL;
564  }
565 
568 
569  Show( false );
570 }
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 103 of file dialog_shim.cpp.

References PCAD2KICAD::Center.

Referenced by 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_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_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(), 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().

104 {
105  // must be called from the constructor of derived classes,
106  // when all widgets are initialized, and therefore their size fixed
107 
108  // SetSizeHints fixes the minimal size of sizers in the dialog
109  // (SetSizeHints calls Fit(), so no need to call it)
110  GetSizer()->SetSizeHints( this );
111 
112  // the default position, when calling the first time the dlg
113  Center();
114 }
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 116 of file dialog_shim.cpp.

Referenced by DIALOG_SHIM::Show().

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

Definition at line 126 of file dialog_edit_module_for_Modedit.cpp.

References LIB_ID::Format(), FROM_UTF8(), g_UserUnit, GetAbbreviatedUnitsLabel(), MODULE::GetAttributes(), MODULE::GetDescription(), MODULE::GetFPID(), MODULE::GetKeywords(), MODULE::GetLocalClearance(), MODULE::GetLocalSolderMaskMargin(), MODULE::GetLocalSolderPasteMargin(), MODULE::GetLocalSolderPasteMarginRatio(), MODULE::GetPlacementCost180(), MODULE::GetPlacementCost90(), EDA_TEXT::GetText(), MODULE::IsLocked(), KISYS3DMOD, DIALOG_MODULE_MODULE_EDITOR_BASE::m_3D_ShapeNameListBox, DIALOG_MODULE_MODULE_EDITOR_BASE::m_AttributsCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_AutoPlaceCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_CostRot180Ctrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_CostRot90Ctrl, m_currentModule, DIALOG_MODULE_MODULE_EDITOR_BASE::m_DocCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_FootprintNameCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_KeywordCtrl, m_lastSelected3DShapeIndex, DIALOG_MODULE_MODULE_EDITOR_BASE::m_NetClearanceUnits, DIALOG_MODULE_MODULE_EDITOR_BASE::m_NetClearanceValueCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_Panel3D, m_PreviewPane, m_referenceCopy, DIALOG_MODULE_MODULE_EDITOR_BASE::m_ReferenceCtrl, m_shapes3D_list, DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderMaskMarginCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderMaskMarginUnits, DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderPasteMarginCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderPasteMarginRatioCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderPasteMarginUnits, m_valueCopy, DIALOG_MODULE_MODULE_EDITOR_BASE::m_ValueCtrl, MOD_CMS, MOD_VIRTUAL, MODULE::Models(), KIWAY_HOLDER::Prj(), PutValueInLocalUnits(), MODULE::Reference(), PANEL_PREV_3D::ResetModelData(), PANEL_PREV_3D::SetModelDataIdx(), EDA_ITEM::SetParent(), S3D_FILENAME_RESOLVER::SplitAlias(), and MODULE::Value().

Referenced by DIALOG_MODULE_MODULE_EDITOR().

127 {
128  SetFocus();
129 
130  // Display the default path, given by environment variable KISYS3DMOD
131  wxString default_path;
132  wxGetEnv( KISYS3DMOD, &default_path );
133 #ifdef __WINDOWS__
134  default_path.Replace( wxT( "/" ), wxT( "\\" ) );
135 #endif
136 
138 
139  // Init 3D shape list
140  m_3D_ShapeNameListBox->Clear();
141  std::list<S3D_INFO>::iterator sM = m_currentModule->Models().begin();
142  std::list<S3D_INFO>::iterator eM = m_currentModule->Models().end();
143  m_shapes3D_list.clear();
144 
145 
146  wxString origPath;
147  wxString alias;
148  wxString shortPath;
149  S3D_FILENAME_RESOLVER* res = Prj().Get3DCacheManager()->GetResolver();
150 
151  while( sM != eM )
152  {
153  m_shapes3D_list.push_back( *sM );
154  origPath = sM->m_Filename;
155 
156  if( res && res->SplitAlias( origPath, alias, shortPath ) )
157  {
158  origPath = alias;
159  origPath.append( wxT( ":" ) );
160  origPath.append( shortPath );
161  }
162 
163  m_3D_ShapeNameListBox->Append( origPath );
164  ++sM;
165  }
166 
167  m_DocCtrl->SetValue( m_currentModule->GetDescription() );
168  m_KeywordCtrl->SetValue( m_currentModule->GetKeywords() );
173  m_ReferenceCtrl->SetValue( m_referenceCopy->GetText() );
174  m_ValueCtrl->SetValue( m_valueCopy->GetText() );
176 
177  m_AttributsCtrl->SetItemToolTip( 0, _( "Use this attribute for most non SMD components" ) );
178  m_AttributsCtrl->SetItemToolTip( 1,
179  _( "Use this attribute for SMD components.\n"
180  "Only components with this option are put in the footprint position list file" ) );
181  m_AttributsCtrl->SetItemToolTip( 2,
182  _( "Use this attribute for \"virtual\" components drawn on board\n"
183  "like an edge connector (old ISA PC bus for instance)" ) );
184 
185  // Controls on right side of the dialog
186  switch( m_currentModule->GetAttributes() & 255 )
187  {
188  case 0:
189  m_AttributsCtrl->SetSelection( 0 );
190  break;
191 
192  case MOD_CMS:
193  m_AttributsCtrl->SetSelection( 1 );
194  break;
195 
196  case MOD_VIRTUAL:
197  m_AttributsCtrl->SetSelection( 2 );
198  break;
199 
200  default:
201  m_AttributsCtrl->SetSelection( 0 );
202  break;
203  }
204 
205  m_AutoPlaceCtrl->SetSelection( (m_currentModule->IsLocked()) ? 1 : 0 );
206  m_AutoPlaceCtrl->SetItemToolTip( 0, _( "Enable hotkey move commands and Auto Placement" ) );
207  m_AutoPlaceCtrl->SetItemToolTip( 1, _( "Disable hotkey move commands and Auto Placement" ) );
208 
211 
212  // Initialize dialog relative to masks clearances
216 
217  wxString msg;
220 
221  // These 2 parameters are usually < 0, so prepare entering a negative value, if current is 0
223 
225  m_SolderPasteMarginCtrl->SetValue( wxT( "-" ) + m_SolderPasteMarginCtrl->GetValue() );
226 
228  msg.Printf( wxT( "-%f" ), m_currentModule->GetLocalSolderPasteMarginRatio() * 100.0 );
229  else
230  msg.Printf( wxT( "%f" ), m_currentModule->GetLocalSolderPasteMarginRatio() * 100.0 );
231 
232  m_SolderPasteMarginRatioCtrl->SetValue( msg );
233 
234  // Add solder paste margin ration in per cent
235  // for the usual default value 0.0, display -0.0 (or -0,0 in some countries)
236  msg.Printf( wxT( "%f" ), m_currentModule->GetLocalSolderPasteMarginRatio() * 100.0 );
237 
239  msg[0] == '0') // Sometimes Printf adds a sign if the value is very small (0.0)
240  m_SolderPasteMarginRatioCtrl->SetValue( wxT( "-" ) + msg );
241  else
242  m_SolderPasteMarginRatioCtrl->SetValue( msg );
243 
244  // if m_3D_ShapeNameListBox is not empty, preselect first 3D shape
245  if( m_3D_ShapeNameListBox->GetCount() > 0 )
246  {
249  if( m_PreviewPane )
251  }
252  else
253  {
254  if( m_PreviewPane )
255  m_PreviewPane->ResetModelData( true );
256  }
257 
258  // We have modified the UI, so call Fit() for m_Panel3D
259  // to be sure the m_Panel3D sizers are initialized before opening the dialog
260  m_Panel3D->GetSizer()->Fit( m_Panel3D );
261 }
void ResetModelData(bool aReloadPreviewModule=false)
ResetModelData - Clear the values and reload the preview board.
TEXTE_MODULE & Reference()
Definition: class_module.h:455
static wxString FROM_UTF8(const char *cstring)
function FROM_UTF8 converts a UTF8 encoded C string to a wxString for all wxWidgets build modes...
Definition: macros.h:53
int GetLocalClearance() const
Definition: class_module.h:166
Set for modules listed in the automatic insertion list (usually SMD footprints)
Definition: class_module.h:76
std::list< S3D_INFO > & Models()
Definition: class_module.h:139
int GetPlacementCost90() const
Definition: class_module.h:523
double GetLocalSolderPasteMarginRatio() const
Definition: class_module.h:172
bool SplitAlias(const wxString &aFileName, wxString &anAlias, wxString &aRelPath)
Function SplitAlias returns true if the given name contains an alias and populates the string anAlias...
const LIB_ID & GetFPID() const
Definition: class_module.h:151
PROJECT & Prj() const
Function Prj returns a reference to the PROJECT "associated with" this KIWAY.
void SetModelDataIdx(int idx, bool aReloadPreviewModule=false)
SetModelDataIdx - This will set the index of the INFO list that was set on the parent.
void SetParent(EDA_ITEM *aParent)
Definition: base_struct.h:213
TEXTE_MODULE & Value()
read/write accessors:
Definition: class_module.h:454
const wxString & GetText() const
Function GetText returns the string associated with the text object.
Definition: eda_text.h:130
wxString GetAbbreviatedUnitsLabel(EDA_UNITS_T aUnit)
Definition: base_units.cpp:479
#define KISYS3DMOD
A variable name whose value holds the path of 3D shape files.
Definition: 3d_viewer.h:38
int GetAttributes() const
Definition: class_module.h:184
const wxString & GetKeywords() const
Definition: class_module.h:157
int GetLocalSolderMaskMargin() const
Definition: class_module.h:163
bool IsLocked() const override
Function IsLocked.
Definition: class_module.h:223
int GetLocalSolderPasteMargin() const
Definition: class_module.h:169
EDA_UNITS_T g_UserUnit
Global variables definitions.
Definition: common.cpp:56
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
const wxString & GetDescription() const
Definition: class_module.h:154
Virtual component: when created by copper shapes on board (Like edge card connectors, mounting hole...)
Definition: class_module.h:78
UTF8 Format() const
Function Format.
Definition: lib_id.cpp:263
int GetPlacementCost180() const
Definition: class_module.h:520
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::AppendOneEEProject(), 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(), DIALOG_EDIT_LIBENTRY_FIELDS_IN_LIB::initBuffers(), LIB_EDIT_FRAME::InstallConfigFrame(), PCB_EDIT_FRAME::InstallModuleOptionsFrame(), KIWAY_PLAYER::language_change(), SCH_SHEET::Load(), CVPCB_MAINFRAME::LoadFootprintFiles(), KIWAY_PLAYER::OnChangeIconsOptions(), CVPCB_MAINFRAME::OnEditFootprintLibraryTable(), 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::ReadNetListAndLinkFiles(), FOOTPRINT_VIEWER_FRAME::ReCreateFootprintList(), LIB_EDIT_FRAME::refreshSchematic(), 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_MODULE_MODULE_EDITOR::On3DShapeNameSelected ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_MODULE_MODULE_EDITOR_BASE.

Definition at line 264 of file dialog_edit_module_for_Modedit.cpp.

References DIALOG_MODULE_MODULE_EDITOR_BASE::m_3D_ShapeNameListBox, m_lastSelected3DShapeIndex, m_PreviewPane, m_shapes3D_list, PANEL_PREV_3D::ResetModelData(), and PANEL_PREV_3D::SetModelDataIdx().

265 {
267 
268  if( m_lastSelected3DShapeIndex < 0 ) // happens under wxGTK when deleting an item in m_3D_ShapeNameListBox wxListBox
269  {
270  if( m_PreviewPane )
272  return;
273  }
274 
275  if( m_lastSelected3DShapeIndex >= (int)m_shapes3D_list.size() )
276  {
277  wxMessageBox( wxT( "On3DShapeNameSelected() error" ) );
279 
280  if( m_PreviewPane )
282 
283  return;
284  }
285 
287 }
void ResetModelData(bool aReloadPreviewModule=false)
ResetModelData - Clear the values and reload the preview board.
void SetModelDataIdx(int idx, bool aReloadPreviewModule=false)
SetModelDataIdx - This will set the index of the INFO list that was set on the parent.
void DIALOG_MODULE_MODULE_EDITOR::On3DShapeSelection ( wxCommandEvent &  event)
private
void DIALOG_MODULE_MODULE_EDITOR::OnCancelClick ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_MODULE_MODULE_EDITOR_BASE.

Definition at line 436 of file dialog_edit_module_for_Modedit.cpp.

437 {
438  EndModal( -1 );
439 }
void DIALOG_MODULE_MODULE_EDITOR::OnEditReference ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_MODULE_MODULE_EDITOR_BASE.

Definition at line 534 of file dialog_edit_module_for_Modedit.cpp.

References EDA_DRAW_FRAME::GetCrossHairPosition(), EDA_TEXT::GetText(), EDA_TEXT::GetTextPos(), PCB_BASE_FRAME::InstallTextModOptionsFrame(), m_parent, m_referenceCopy, DIALOG_MODULE_MODULE_EDITOR_BASE::m_ReferenceCtrl, and EDA_DRAW_FRAME::SetCrossHairPosition().

535 {
540  m_ReferenceCtrl->SetValue( m_referenceCopy->GetText() );
541 }
const wxPoint & GetTextPos() const
Definition: eda_text.h:224
void InstallTextModOptionsFrame(TEXTE_MODULE *TextMod, wxDC *DC)
const wxString & GetText() const
Function GetText returns the string associated with the text object.
Definition: eda_text.h:130
void SetCrossHairPosition(const wxPoint &aPosition, bool aSnapToGrid=true)
Function SetCrossHairPosition sets the screen cross hair position to aPosition in logical (drawing) u...
wxPoint GetCrossHairPosition(bool aInvertY=false) const
Function GetCrossHairPosition return the current cross hair position in logical (drawing) coordinates...
void DIALOG_MODULE_MODULE_EDITOR::OnEditValue ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_MODULE_MODULE_EDITOR_BASE.

Definition at line 544 of file dialog_edit_module_for_Modedit.cpp.

References EDA_DRAW_FRAME::GetCrossHairPosition(), EDA_TEXT::GetText(), EDA_TEXT::GetTextPos(), PCB_BASE_FRAME::InstallTextModOptionsFrame(), m_parent, m_valueCopy, DIALOG_MODULE_MODULE_EDITOR_BASE::m_ValueCtrl, and EDA_DRAW_FRAME::SetCrossHairPosition().

545 {
550  m_ValueCtrl->SetValue( m_valueCopy->GetText() );
551 }
const wxPoint & GetTextPos() const
Definition: eda_text.h:224
void InstallTextModOptionsFrame(TEXTE_MODULE *TextMod, wxDC *DC)
const wxString & GetText() const
Function GetText returns the string associated with the text object.
Definition: eda_text.h:130
void SetCrossHairPosition(const wxPoint &aPosition, bool aSnapToGrid=true)
Function SetCrossHairPosition sets the screen cross hair position to aPosition in logical (drawing) u...
wxPoint GetCrossHairPosition(bool aInvertY=false) const
Function GetCrossHairPosition return the current cross hair position in logical (drawing) coordinates...
void DIALOG_MODULE_MODULE_EDITOR::OnInitDlg ( wxInitDialogEvent &  event)
inlineoverrideprivatevirtual

Reimplemented from DIALOG_MODULE_MODULE_EDITOR_BASE.

Definition at line 78 of file dialog_edit_module_for_Modedit.h.

References DIALOG_SHIM::FinishDialogSettings().

79  {
80  // Call the default wxDialog handler of a wxInitDialogEvent
81  TransferDataToWindow();
82 
83  // Now all widgets have the size fixed, call FinishDialogSettings
85  }
void FinishDialogSettings()
In all dialogs, we must call the same functions to fix minimal dlg size, the default position and per...
void DIALOG_MODULE_MODULE_EDITOR::OnOkClick ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_MODULE_MODULE_EDITOR_BASE.

Definition at line 442 of file dialog_edit_module_for_Modedit.cpp.

References MODULE::CalculateBoundingBox(), DisplayError(), GetChars(), MODULE::IsLibNameValid(), DIALOG_MODULE_MODULE_EDITOR_BASE::m_AttributsCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_AutoPlaceCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_CostRot180Ctrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_CostRot90Ctrl, m_currentModule, DIALOG_MODULE_MODULE_EDITOR_BASE::m_DocCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_FootprintNameCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_KeywordCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_NetClearanceValueCtrl, m_parent, m_PreviewPane, m_referenceCopy, m_shapes3D_list, DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderMaskMarginCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderPasteMarginCtrl, DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderPasteMarginRatioCtrl, m_valueCopy, MOD_CMS, MOD_VIRTUAL, MODULE::Models(), COMMIT::Modify(), BOARD_COMMIT::Push(), MODULE::Reference(), MODULE::SetAttributes(), MODULE::SetDescription(), MODULE::SetFPID(), MODULE::SetKeywords(), MODULE::SetLocalClearance(), MODULE::SetLocalSolderMaskMargin(), MODULE::SetLocalSolderPasteMargin(), MODULE::SetLocalSolderPasteMarginRatio(), MODULE::SetLocked(), MODULE::SetPlacementCost180(), MODULE::SetPlacementCost90(), MODULE::StringLibNameInvalidChars(), PANEL_PREV_3D::ValidateWithMessage(), MODULE::Value(), and ValueFromTextCtrl().

443 {
444  BOARD_COMMIT commit( m_parent );
445  wxString msg;
446 
447  // First, test for invalid chars in module name
448  wxString footprintName = m_FootprintNameCtrl->GetValue();
449 
450  if( ! footprintName.IsEmpty() )
451  {
452  if( ! MODULE::IsLibNameValid( footprintName ) )
453  {
454  msg.Printf( _( "Error:\none of invalid chars <%s> found\nin <%s>" ),
456  GetChars( footprintName ) );
457 
458  DisplayError( NULL, msg );
459 
460  return;
461  }
462  }
463 
464  if( !m_PreviewPane->ValidateWithMessage( msg ) )
465  {
466  DisplayError( NULL, msg );
467  return;
468  }
469 
470  commit.Modify( m_currentModule );
471 
472  m_currentModule->SetLocked( m_AutoPlaceCtrl->GetSelection() == 1 );
473 
474  switch( m_AttributsCtrl->GetSelection() )
475  {
476  case 0:
478  break;
479 
480  case 1:
482  break;
483 
484  case 2:
486  break;
487  }
488 
491  m_currentModule->SetDescription( m_DocCtrl->GetValue() );
492  m_currentModule->SetKeywords( m_KeywordCtrl->GetValue() );
493 
494  // Init footprint name in library
495  if( ! footprintName.IsEmpty() )
496  m_currentModule->SetFPID( LIB_ID( footprintName ) );
497 
498  // Init Fields:
499  TEXTE_MODULE& reference = m_currentModule->Reference();
500  reference = *m_referenceCopy;
501  TEXTE_MODULE& value = m_currentModule->Value();
502  value = *m_valueCopy;
503 
504  // Initialize masks clearances
508  double dtmp;
509  msg = m_SolderPasteMarginRatioCtrl->GetValue();
510  msg.ToDouble( &dtmp );
511 
512  // A -50% margin ratio means no paste on a pad, the ratio must be >= -50 %
513  if( dtmp < -50.0 )
514  dtmp = -50.0;
515 
516  // A margin ratio is always <= 0
517  if( dtmp > 0.0 )
518  dtmp = 0.0;
519 
521 
522  std::list<S3D_INFO>* draw3D = &m_currentModule->Models();
523  draw3D->clear();
524  draw3D->insert( draw3D->end(), m_shapes3D_list.begin(), m_shapes3D_list.end() );
525 
527 
528  commit.Push( _( "Modify module properties" ) );
529 
530  EndModal( 1 );
531 }
void SetPlacementCost90(int aCost)
Definition: class_module.h:524
TEXTE_MODULE & Reference()
Definition: class_module.h:455
void SetLocalClearance(int aClearance)
Definition: class_module.h:167
void SetPlacementCost180(int aCost)
Definition: class_module.h:521
void CalculateBoundingBox()
Function CalculateBoundingBox calculates the bounding box in board coordinates.
bool ValidateWithMessage(wxString &aErrorMessage)
verify X,Y and Z scale factors are acceptable (> 0.001 and < 1000.0)
Set for modules listed in the automatic insertion list (usually SMD footprints)
Definition: class_module.h:76
static const wxChar * StringLibNameInvalidChars(bool aUserReadable)
static function StringLibNameInvalidChars Test for validity of the name in a library of the footprint...
std::list< S3D_INFO > & Models()
Definition: class_module.h:139
Class LIB_ID.
Definition: lib_id.h:56
void SetLocalSolderPasteMarginRatio(double aRatio)
Definition: class_module.h:173
TEXTE_MODULE & Value()
read/write accessors:
Definition: class_module.h:454
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
void SetLocalSolderMaskMargin(int aMargin)
Definition: class_module.h:164
static bool IsLibNameValid(const wxString &aName)
static function IsLibNameValid Test for validity of a name of a footprint to be used in a footprint l...
void SetLocalSolderPasteMargin(int aMargin)
Definition: class_module.h:170
static const wxChar * GetChars(const wxString &s)
Function GetChars returns a wxChar* to the actual wxChar* data within a wxString, and is helpful for ...
Definition: macros.h:92
void SetLocked(bool isLocked) override
Function SetLocked sets the MODULE_is_LOCKED bit in the m_ModuleStatus.
Definition: class_module.h:233
Virtual component: when created by copper shapes on board (Like edge card connectors, mounting hole...)
Definition: class_module.h:78
void SetKeywords(const wxString &aKeywords)
Definition: class_module.h:158
void DisplayError(wxWindow *parent, const wxString &text, int displaytime)
Function DisplayError displays an error or warning message box with aMessage.
Definition: confirm.cpp:69
void SetFPID(const LIB_ID &aFPID)
Definition: class_module.h:152
void SetAttributes(int aAttributes)
Definition: class_module.h:185
void SetDescription(const wxString &aDoc)
Definition: class_module.h:155
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 SCH_EDIT_FRAME::AnnotateComponents(), SCH_EDIT_FRAME::AppendOneEEProject(), PCB_EDIT_FRAME::ArchiveModulesOnBoard(), LIB_VIEW_FRAME::BestZoom(), BrowseAndAdd3DShapeFile(), DIALOG_MODULE_BOARD_EDITOR::BrowseAndAdd3DShapeFile(), DIALOG_EDIT_COMPONENT_IN_LIBRARY::BrowseAndSelectDocFile(), DIALOG_EXCHANGE_MODULE::BrowseAndSelectFootprint(), CVPCB_MAINFRAME::BuildLIBRARY_LISTBOX(), Cfg3DPath(), DIALOG_MODULE_BOARD_EDITOR::Cfg3DPath(), SCH_EDIT_FRAME::CheckAnnotate(), SCH_SCREEN::CheckComponentsToPartsLinks(), SCH_EDIT_FRAME::ConvertPart(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::copyPanelToOptions(), SCH_EDIT_FRAME::CreateArchiveLibrary(), PCB_BASE_EDIT_FRAME::CreateNewLibrary(), DIALOG_PLOT_SCHEMATIC::createPlotFileName(), FOOTPRINT_EDIT_FRAME::DeleteModuleFromCurrentLibrary(), LIB_EDIT_FRAME::DeleteOnePart(), DIALOG_CONFIG_EQUFILES::DIALOG_CONFIG_EQUFILES(), DIALOG_EESCHEMA_CONFIG::DIALOG_EESCHEMA_CONFIG(), DIALOG_FP_LIB_TABLE::DIALOG_FP_LIB_TABLE(), DIALOG_MODULE_MODULE_EDITOR(), DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS(), DIALOG_SCH_EDIT_ONE_FIELD::DIALOG_SCH_EDIT_ONE_FIELD(), LIB_VIEW_FRAME::DisplayLibInfos(), SCH_BASE_FRAME::DisplayListComponentsInLib(), PCB_EDIT_FRAME::doAutoSave(), Edit3DShapeFileName(), DIALOG_MODULE_BOARD_EDITOR::Edit3DShapeFileName(), SCH_EDIT_FRAME::EditComponentFieldText(), SCH_EDIT_FRAME::EditSheet(), PCB_EDIT_FRAME::Export_IDF3(), PCB_EDIT_FRAME::ExportToGenCAD(), PCB_EDIT_FRAME::ExportVRML_File(), PCB_EDIT_FRAME::Files_io_from_id(), PCB_EDIT_FRAME::GenD356File(), DIALOG_GENDRILL::GenDrillAndMapFiles(), NETLIST_DIALOG::GenNetlist(), DISPLAY_FOOTPRINTS_FRAME::Get_Module(), FOOTPRINT_VIEWER_FRAME::getCurFootprintName(), LIB_EDIT_FRAME::GetCurLib(), FOOTPRINT_VIEWER_FRAME::getCurNickname(), LIB_EDIT_FRAME::GetCurPart(), FOOTPRINT_EDIT_FRAME::GetCurrentLib(), FOOTPRINT_EDIT_FRAME::getLibPath(), DIALOG_BOM::getPluginFileName(), LIB_VIEW_FRAME::getSelectedAlias(), FP_THREAD_IFACE::GetTable(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::InitBuffers(), initModeditProperties(), DIALOG_MODULE_BOARD_EDITOR::InitModeditProperties(), LIB_EDIT_FRAME::InstallConfigFrame(), SCH_EDIT_FRAME::InstallConfigFrame(), PCB_EDIT_FRAME::InstallNetlistFrame(), SCH_EDIT_FRAME::IsSearchCacheObsolete(), SCH_EDIT_FRAME::Load_Component(), SCH_EDIT_FRAME::LoadCmpToFootprintLinkFile(), CVPCB_MAINFRAME::LoadFootprintFiles(), SCH_EDIT_FRAME::LoadOneEEFile(), LIB_EDIT_FRAME::LoadOneLibraryPart(), LIB_EDIT_FRAME::LoadOneSymbol(), CVPCB_MAINFRAME::LoadProjectFile(), SCH_EDIT_FRAME::LoadProjectFile(), PCB_EDIT_FRAME::LoadProjectSettings(), DIALOG_DRC_CONTROL::makeValidFileNameReport(), FOOTPRINT_VIEWER_FRAME::OnActivate(), DIALOG_EESCHEMA_CONFIG::OnAddOrInsertLibClick(), DIALOG_EESCHEMA_CONFIG::OnAddOrInsertPath(), DIALOG_DRC_CONTROL::OnButtonBrowseRptFileClick(), LIB_EDIT_FRAME::OnCloseWindow(), CVPCB_MAINFRAME::OnEditFootprintLibraryTable(), DIALOG_GENDRILL::OnGenReportFile(), DIALOG_CHOOSE_COMPONENT::OnInitDialog(), PCB_EDIT_FRAME::OnLeftClick(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnOKButtonClick(), 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(), SCH_EDIT_FRAME::OnRightClick(), DIALOG_BOM::OnRunPlugin(), DIALOG_NETLIST::OnSaveMessagesToFile(), SCH_EDIT_FRAME::OnSaveProject(), DIALOG_SPICE_MODEL::onSelectIcLib(), LIB_VIEW_FRAME::OnSelectSymbol(), SCH_EDIT_FRAME::OnSelectUnit(), DIALOG_SPICE_MODEL::onSemiSelectLib(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::OnTestChipName(), 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(), SCH_EDIT_FRAME::prepareForNetlist(), SCH_EDIT_FRAME::Process_Config(), PCB_EDIT_FRAME::Process_Config(), SCH_EDIT_FRAME::Process_Special_Functions(), SCH_EDIT_FRAME::ProcessCmpToFootprintLinkFile(), FOOTPRINT_EDIT_FRAME::ProcessPreferences(), CVPCB_MAINFRAME::ReadNetListAndLinkFiles(), 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(), SCH_EDIT_FRAME::RescueProject(), FOOTPRINT_EDIT_FRAME::restoreLastFootprint(), FOOTPRINT_EDIT_FRAME::retainLastFootprint(), SCH_SCREEN::Save(), 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_EDIT_COMPONENT_IN_SCHEMATIC::SetInitCmp(), SIM_PLOT_FRAME::SIM_PLOT_FRAME(), EDA_3D_VIEWER::takeScreenshot(), DIALOG_ERC::TestErc(), DIALOG_SPICE_MODEL::updateFromFile(), SIM_PLOT_FRAME::updateNetlistExporter(), 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().

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_MODULE_MODULE_EDITOR::Remove3DShape ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_MODULE_MODULE_EDITOR_BASE.

Definition at line 290 of file dialog_edit_module_for_Modedit.cpp.

References DIALOG_MODULE_MODULE_EDITOR_BASE::m_3D_ShapeNameListBox, m_lastSelected3DShapeIndex, m_PreviewPane, m_shapes3D_list, PANEL_PREV_3D::ResetModelData(), and PANEL_PREV_3D::SetModelDataIdx().

291 {
292  int ii = m_3D_ShapeNameListBox->GetSelection();
293 
294  if( ii < 0 )
295  {
296  if( m_PreviewPane )
297  m_PreviewPane->ResetModelData( true );
298 
299  return;
300  }
301 
302  m_shapes3D_list.erase( m_shapes3D_list.begin() + ii );
303  m_3D_ShapeNameListBox->Delete( ii );
304 
305  if( m_3D_ShapeNameListBox->GetCount() > 0 )
306  {
307  if( ii > 0 )
309  else
311 
313 
314  if( m_PreviewPane )
316  }
317  else
318  {
319  if( m_PreviewPane )
320  m_PreviewPane->ResetModelData( true );
321  }
322 
323  return;
324 }
void ResetModelData(bool aReloadPreviewModule=false)
ResetModelData - Clear the values and reload the preview board.
void SetModelDataIdx(int idx, bool aReloadPreviewModule=false)
SetModelDataIdx - This will set the index of the INFO list that was set on the parent.
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.

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
bool DIALOG_SHIM::Show ( bool  show)
overrideinherited

Definition at line 138 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_SCH_FIND::OnCancel(), DIALOG_DRC_CONTROL::OnLeftDClickClearance(), DIALOG_DRC_CONTROL::OnLeftDClickUnconnected(), DIALOG_DRC_CONTROL::OnPopupMenu(), DIALOG_EXCHANGE_MODULE::OnQuit(), CVPCB_MAINFRAME::ReadNetListAndLinkFiles(), DRC::ShowDRCDialog(), and DIALOG_SHIM::ShowQuasiModal().

139 {
140  bool ret;
141  const char* hash_key;
142 
143  if( m_hash_key.size() )
144  {
145  // a special case like EDA_LIST_DIALOG, which has multiple uses.
146  hash_key = m_hash_key.c_str();
147  }
148  else
149  {
150  hash_key = typeid(*this).name();
151  }
152 
153  // Show or hide the window. If hiding, save current position and size.
154  // If showing, use previous position and size.
155  if( show )
156  {
157  wxDialog::Raise(); // Needed on OS X and some other window managers (i.e. Unity)
158  ret = wxDialog::Show( show );
159 
160  // classname is key, returns a zeroed out default EDA_RECT if none existed before.
161  EDA_RECT r = class_map[ hash_key ];
162 
163  if( r.GetSize().x != 0 && r.GetSize().y != 0 )
164  SetSize( r.GetPosition().x, r.GetPosition().y, r.GetSize().x, r.GetSize().y, 0 );
165  }
166  else
167  {
168  // Save the dialog's position & size before hiding, using classname as key
169  EDA_RECT r( wxDialog::GetPosition(), wxDialog::GetSize() );
170  class_map[ hash_key ] = r;
171 
172  ret = wxDialog::Show( show );
173  }
174 
176 
177  return ret;
178 }
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
int DIALOG_SHIM::ShowQuasiModal ( )
inherited

Definition at line 494 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(), LIB_VIEW_FRAME::OnSelectSymbol(), and SCH_BASE_FRAME::SelectComponentFromLibrary().

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

Member Data Documentation

wxBoxSizer* DIALOG_MODULE_MODULE_EDITOR_BASE::bLowerSizer3D
protectedinherited
wxRadioBox* DIALOG_MODULE_MODULE_EDITOR_BASE::m_AttributsCtrl
protectedinherited
wxRadioBox* DIALOG_MODULE_MODULE_EDITOR_BASE::m_AutoPlaceCtrl
protectedinherited
wxButton* DIALOG_MODULE_MODULE_EDITOR_BASE::m_button4
protectedinherited
wxButton* DIALOG_MODULE_MODULE_EDITOR_BASE::m_button5
protectedinherited
wxButton* DIALOG_MODULE_MODULE_EDITOR_BASE::m_button6
protectedinherited
wxButton* DIALOG_MODULE_MODULE_EDITOR_BASE::m_buttonBrowse
protectedinherited
wxButton* DIALOG_MODULE_MODULE_EDITOR_BASE::m_buttonEdit
protectedinherited
wxButton* DIALOG_MODULE_MODULE_EDITOR_BASE::m_buttonRemove
protectedinherited
wxSlider* DIALOG_MODULE_MODULE_EDITOR_BASE::m_CostRot180Ctrl
protectedinherited
wxSlider* DIALOG_MODULE_MODULE_EDITOR_BASE::m_CostRot90Ctrl
protectedinherited
MODULE* DIALOG_MODULE_MODULE_EDITOR::m_currentModule
private
MODULE* DIALOG_MODULE_MODULE_EDITOR::m_currentModuleCopy
private

Definition at line 47 of file dialog_edit_module_for_Modedit.h.

Referenced by DIALOG_MODULE_MODULE_EDITOR().

wxTextCtrl* DIALOG_MODULE_MODULE_EDITOR_BASE::m_DocCtrl
protectedinherited
wxTextCtrl* DIALOG_MODULE_MODULE_EDITOR_BASE::m_FootprintNameCtrl
protectedinherited
std::string DIALOG_SHIM::m_hash_key
protectedinherited
wxTextCtrl* DIALOG_MODULE_MODULE_EDITOR_BASE::m_KeywordCtrl
protectedinherited
int DIALOG_MODULE_MODULE_EDITOR::m_lastSelected3DShapeIndex
private
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_MaskClearanceTitle
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_NetClearanceUnits
protectedinherited
wxTextCtrl* DIALOG_MODULE_MODULE_EDITOR_BASE::m_NetClearanceValueCtrl
protectedinherited
wxNotebook* DIALOG_MODULE_MODULE_EDITOR_BASE::m_NoteBook
protectedinherited
size_t DIALOG_MODULE_MODULE_EDITOR::m_page = 0
staticprivate
wxPanel* DIALOG_MODULE_MODULE_EDITOR_BASE::m_Panel3D
protectedinherited
wxPanel* DIALOG_MODULE_MODULE_EDITOR_BASE::m_PanelProperties
protectedinherited
FOOTPRINT_EDIT_FRAME* DIALOG_MODULE_MODULE_EDITOR::m_parent
private
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
TEXTE_MODULE* DIALOG_MODULE_MODULE_EDITOR::m_referenceCopy
private
wxTextCtrl* DIALOG_MODULE_MODULE_EDITOR_BASE::m_ReferenceCtrl
protectedinherited
wxStdDialogButtonSizer* DIALOG_MODULE_MODULE_EDITOR_BASE::m_sdbSizerStdButtons
protectedinherited
wxButton* DIALOG_MODULE_MODULE_EDITOR_BASE::m_sdbSizerStdButtonsCancel
protectedinherited
wxButton* DIALOG_MODULE_MODULE_EDITOR_BASE::m_sdbSizerStdButtonsOK
protectedinherited
wxTextCtrl* DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderMaskMarginCtrl
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderMaskMarginUnits
protectedinherited
wxTextCtrl* DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderPasteMarginCtrl
protectedinherited
wxTextCtrl* DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderPasteMarginRatioCtrl
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderPasteMarginUnits
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_SolderPasteRatioMarginUnits
protectedinherited
wxStaticLine* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticline1
protectedinherited
wxStaticLine* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticline2
protectedinherited
wxStaticLine* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticline3
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticText11
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticText12
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticTextDoc
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticTextFp
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticTextInfo
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticTextKeywords
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticTextNetClearance
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticTextRatio
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticTextRef
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticTextSolderPaste
protectedinherited
wxStaticText* DIALOG_MODULE_MODULE_EDITOR_BASE::m_staticTextVal
protectedinherited
TEXTE_MODULE* DIALOG_MODULE_MODULE_EDITOR::m_valueCopy
private
wxTextCtrl* DIALOG_MODULE_MODULE_EDITOR_BASE::m_ValueCtrl
protectedinherited

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