KiCad PCB EDA Suite
DIALOG_CREATE_ARRAY Class Reference

#include <dialog_create_array.h>

Inheritance diagram for DIALOG_CREATE_ARRAY:
DIALOG_CREATE_ARRAY_BASE CONFIG_SAVE_RESTORE_WINDOW DIALOG_SHIM KIWAY_HOLDER

Classes

struct  ARRAY_CIRCULAR_OPTIONS
 
struct  ARRAY_GRID_OPTIONS
 
struct  ARRAY_OPTIONS
 Persistent dialog options. More...
 
struct  CREATE_ARRAY_DIALOG_ENTRIES
 

Public Types

enum  ARRAY_TYPE_T { ARRAY_GRID, ARRAY_CIRCULAR }
 
enum  ARRAY_NUMBERING_TYPE_T { NUMBERING_NUMERIC = 0, NUMBERING_HEX, NUMBERING_ALPHA_NO_IOSQXZ, NUMBERING_ALPHA_FULL }
 

Public Member Functions

 DIALOG_CREATE_ARRAY (PCB_BASE_FRAME *aParent, bool enableNumbering, wxPoint aOrigPos)
 
 ~DIALOG_CREATE_ARRAY ()
 
ARRAY_OPTIONSGetArrayOptions () const
 
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

virtual void OnClose (wxCloseEvent &event)
 
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...
 
void Add (wxRadioBox *ctrl, int &dest)
 
void Add (wxCheckBox *ctrl, bool &dest)
 
void Add (wxTextCtrl *ctrl, wxString &dest)
 
void Add (wxChoice *ctrl, int &dest)
 
void Add (wxNotebook *ctrl, int &dest)
 
void ReadConfigFromControls ()
 
void RestoreConfigToControls ()
 

Protected Attributes

wxNotebook * m_gridTypeNotebook
 
wxPanel * m_gridPanel
 
wxStaticText * m_labelNx
 
wxTextCtrl * m_entryNx
 
wxStaticText * m_labelNy
 
wxTextCtrl * m_entryNy
 
wxStaticText * m_labelDx
 
wxTextCtrl * m_entryDx
 
wxStaticText * m_unitLabelDx
 
wxStaticText * m_labelDy
 
wxTextCtrl * m_entryDy
 
wxStaticText * m_unitLabelDy
 
wxStaticText * m_labelOffsetX
 
wxTextCtrl * m_entryOffsetX
 
wxStaticText * m_unitLabelOffsetX
 
wxStaticText * m_labelOffsetY
 
wxTextCtrl * m_entryOffsetY
 
wxStaticText * m_unitLabelOffsetY
 
wxStaticText * m_labelStagger
 
wxTextCtrl * m_entryStagger
 
wxRadioBox * m_radioBoxGridStaggerType
 
wxBoxSizer * m_gridPadNumberingSizer
 
wxRadioBox * m_radioBoxGridNumberingAxis
 
wxCheckBox * m_checkBoxGridReverseNumbering
 
wxRadioBox * m_rbGridStartNumberingOpt
 
wxRadioBox * m_radioBoxGridNumberingScheme
 
wxStaticText * m_labelPriAxisNumbering
 
wxChoice * m_choicePriAxisNumbering
 
wxStaticText * m_labelSecAxisNumbering
 
wxChoice * m_choiceSecAxisNumbering
 
wxStaticText * m_labelGridNumberingOffset
 
wxTextCtrl * m_entryGridPriNumberingOffset
 
wxTextCtrl * m_entryGridSecNumberingOffset
 
wxPanel * m_circularPanel
 
wxStaticText * m_labelCentreX
 
wxTextCtrl * m_entryCentreX
 
wxStaticText * m_unitLabelCentreX
 
wxStaticText * m_labelCentreY
 
wxTextCtrl * m_entryCentreY
 
wxStaticText * m_unitLabelCentreY
 
wxStaticText * m_labelCircRadius
 
wxStaticText * m_labelCircRadiusValue
 
wxStaticText * m_labelCircAngle
 
wxTextCtrl * m_entryCircAngle
 
wxStaticText * m_unitLabelCircAngle
 
wxStaticText * m_labelCircCount
 
wxTextCtrl * m_entryCircCount
 
wxStaticText * m_labelCircRotate
 
wxCheckBox * m_entryRotateItemsCb
 
wxStaticBoxSizer * m_circPadNumberingSizer
 
wxRadioBox * m_rbCircStartNumberingOpt
 
wxStaticText * m_labelCircNumStart
 
wxTextCtrl * m_entryCircNumberingStart
 
wxStdDialogButtonSizer * m_stdButtons
 
wxButton * m_stdButtonsOK
 
wxButton * m_stdButtonsCancel
 
std::string m_hash_key
 
EVENT_LOOPm_qmodal_loop
 
bool m_qmodal_showing
 
WDO_ENABLE_DISABLEm_qmodal_parent_disabler
 

Private Member Functions

void OnParameterChanged (wxCommandEvent &event) override
 
void OnOkClick (wxCommandEvent &event) override
 
void setControlEnablement ()
 
void calculateCircularArrayProperties ()
 

Private Attributes

ARRAY_OPTIONSm_settings
 The settings object returned to the caller. More...
 
const wxPoint m_originalItemPosition
 
bool m_numberingEnabled
 

Static Private Attributes

static CREATE_ARRAY_DIALOG_ENTRIES m_options
 

Detailed Description

Definition at line 173 of file dialog_create_array.h.

Member Enumeration Documentation

Enumerator
NUMBERING_NUMERIC 

Arabic numerals: 0,1,2,3,4,5,6,7,8,9,10,11...

NUMBERING_HEX 
NUMBERING_ALPHA_NO_IOSQXZ 

Alphabet, excluding IOSQXZ

                           Per ASME Y14.35M-1997 sec. 5.2 (previously MIL-STD-100 sec. 406.5)
                           as these can be confused with numerals and are often not used
                           for pin numbering on BGAs, etc
NUMBERING_ALPHA_FULL 

Full 26-character alphabet.

Definition at line 185 of file dialog_create_array.h.

Enumerator
ARRAY_GRID 

A grid (x*y) array.

ARRAY_CIRCULAR 

A circular array.

Definition at line 178 of file dialog_create_array.h.

179  {
180  ARRAY_GRID,
182  };

Constructor & Destructor Documentation

DIALOG_CREATE_ARRAY::DIALOG_CREATE_ARRAY ( PCB_BASE_FRAME aParent,
bool  enableNumbering,
wxPoint  aOrigPos 
)

Definition at line 41 of file dialog_create_array.cpp.

References CONFIG_SAVE_RESTORE_WINDOW::Add(), calculateCircularArrayProperties(), DIM, g_UserUnit, GetAbbreviatedUnitsLabel(), DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_arrayTypeTab, DIALOG_CREATE_ARRAY_BASE::m_checkBoxGridReverseNumbering, DIALOG_CREATE_ARRAY_BASE::m_choicePriAxisNumbering, DIALOG_CREATE_ARRAY_BASE::m_choiceSecAxisNumbering, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_circAngle, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_circCentreX, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_circCentreY, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_circCount, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_circNumberingOffset, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_circRotate, DIALOG_CREATE_ARRAY_BASE::m_entryCentreX, DIALOG_CREATE_ARRAY_BASE::m_entryCentreY, DIALOG_CREATE_ARRAY_BASE::m_entryCircAngle, DIALOG_CREATE_ARRAY_BASE::m_entryCircCount, DIALOG_CREATE_ARRAY_BASE::m_entryCircNumberingStart, DIALOG_CREATE_ARRAY_BASE::m_entryDx, DIALOG_CREATE_ARRAY_BASE::m_entryDy, DIALOG_CREATE_ARRAY_BASE::m_entryGridPriNumberingOffset, DIALOG_CREATE_ARRAY_BASE::m_entryGridSecNumberingOffset, DIALOG_CREATE_ARRAY_BASE::m_entryNx, DIALOG_CREATE_ARRAY_BASE::m_entryNy, DIALOG_CREATE_ARRAY_BASE::m_entryOffsetX, DIALOG_CREATE_ARRAY_BASE::m_entryOffsetY, DIALOG_CREATE_ARRAY_BASE::m_entryRotateItemsCb, DIALOG_CREATE_ARRAY_BASE::m_entryStagger, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_grid2dArrayNumbering, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridDx, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridDy, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridNumberingAxis, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridNumberingReverseAlternate, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridNx, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridNy, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridOffsetX, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridOffsetY, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridPriAxisNumScheme, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridPriNumberingOffset, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridSecAxisNumScheme, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridSecNumberingOffset, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridStagger, DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES::m_gridStaggerType, DIALOG_CREATE_ARRAY_BASE::m_gridTypeNotebook, m_options, DIALOG_CREATE_ARRAY_BASE::m_radioBoxGridNumberingAxis, DIALOG_CREATE_ARRAY_BASE::m_radioBoxGridNumberingScheme, DIALOG_CREATE_ARRAY_BASE::m_radioBoxGridStaggerType, DIALOG_CREATE_ARRAY_BASE::m_stdButtonsOK, DIALOG_CREATE_ARRAY_BASE::m_unitLabelCentreX, DIALOG_CREATE_ARRAY_BASE::m_unitLabelCentreY, DIALOG_CREATE_ARRAY_BASE::m_unitLabelDx, DIALOG_CREATE_ARRAY_BASE::m_unitLabelDy, DIALOG_CREATE_ARRAY_BASE::m_unitLabelOffsetX, DIALOG_CREATE_ARRAY_BASE::m_unitLabelOffsetY, CONFIG_SAVE_RESTORE_WINDOW::RestoreConfigToControls(), and setControlEnablement().

43  :
44  DIALOG_CREATE_ARRAY_BASE( aParent ),
46  m_settings( NULL ),
47  m_originalItemPosition( aOrigPos ),
48  m_numberingEnabled(enableNumbering)
49 {
50  // Set up numbering scheme drop downs
51  //
52  // character set
53  // NOTE: do not change the order of this relative to the ARRAY_NUMBERING_TYPE_T enum
54  const wxString charSetDescriptions[] =
55  {
56  _( "Numerals (0,1,2,...,9,10)" ),
57  _( "Hexadecimal (0,1,...,F,10,...)" ),
58  _( "Alphabet, minus IOSQXZ" ),
59  _( "Alphabet, full 26 characters" )
60  };
61  m_choicePriAxisNumbering->Set( DIM( charSetDescriptions ), charSetDescriptions );
62  m_choiceSecAxisNumbering->Set( DIM( charSetDescriptions ), charSetDescriptions );
63 
64  m_choicePriAxisNumbering->SetSelection( 0 );
65  m_choiceSecAxisNumbering->SetSelection( 0 );
66 
71 
75 
77 
80 
87 
89 
93 
96 
98 
99  // Load units into labels
100  {
101  const wxString lengthUnit = GetAbbreviatedUnitsLabel( g_UserUnit );
102 
103  m_unitLabelCentreX->SetLabelText( lengthUnit );
104  m_unitLabelCentreY->SetLabelText( lengthUnit );
105  m_unitLabelDx->SetLabelText( lengthUnit );
106  m_unitLabelDy->SetLabelText( lengthUnit );
107  m_unitLabelOffsetX->SetLabelText( lengthUnit );
108  m_unitLabelOffsetY->SetLabelText( lengthUnit );
109  }
110 
111  // Run the callbacks once to process the dialog contents
114 
115  m_stdButtonsOK->SetDefault();
116  Fit();
117  SetMinSize( GetSize() );
118 }
#define DIM(x)
of elements in an array
Definition: macros.h:98
CONFIG_SAVE_RESTORE_WINDOW(bool &validFlag)
ARRAY_OPTIONS * m_settings
The settings object returned to the caller.
void Add(wxRadioBox *ctrl, int &dest)
DIALOG_CREATE_ARRAY_BASE(wxWindow *parent, wxWindowID id=wxID_DIALOG_CREATE_ARRAY, const wxString &title=_("Create Array"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(652, 473), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
wxString GetAbbreviatedUnitsLabel(EDA_UNITS_T aUnit)
Definition: base_units.cpp:479
EDA_UNITS_T g_UserUnit
Global variables definitions.
Definition: common.cpp:56
static CREATE_ARRAY_DIALOG_ENTRIES m_options
const wxPoint m_originalItemPosition
DIALOG_CREATE_ARRAY::~DIALOG_CREATE_ARRAY ( )

Definition at line 121 of file dialog_create_array.cpp.

References m_settings.

122 {
123  if( m_settings != NULL )
124  delete m_settings;
125 }
ARRAY_OPTIONS * m_settings
The settings object returned to the caller.

Member Function Documentation

void CONFIG_SAVE_RESTORE_WINDOW::Add ( wxRadioBox *  ctrl,
int &  dest 
)
inlineprotectedinherited

Definition at line 64 of file dialog_create_array.h.

References CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_RADIOBOX.

Referenced by DIALOG_CREATE_ARRAY().

65  {
66  CONFIG_CTRL_T ctrlInfo = { ctrl, CFG_CTRL_RADIOBOX, (void*) &dest };
67 
68  ctrls.push_back( ctrlInfo );
69  }
std::vector< CONFIG_CTRL_T > ctrls
void CONFIG_SAVE_RESTORE_WINDOW::Add ( wxCheckBox *  ctrl,
bool &  dest 
)
inlineprotectedinherited

Definition at line 71 of file dialog_create_array.h.

References CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_CHECKBOX.

72  {
73  CONFIG_CTRL_T ctrlInfo = { ctrl, CFG_CTRL_CHECKBOX, (void*) &dest };
74 
75  ctrls.push_back( ctrlInfo );
76  }
std::vector< CONFIG_CTRL_T > ctrls
void CONFIG_SAVE_RESTORE_WINDOW::Add ( wxTextCtrl *  ctrl,
wxString &  dest 
)
inlineprotectedinherited

Definition at line 78 of file dialog_create_array.h.

References CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_TEXT.

79  {
80  CONFIG_CTRL_T ctrlInfo = { ctrl, CFG_CTRL_TEXT, (void*) &dest };
81 
82  ctrls.push_back( ctrlInfo );
83  }
std::vector< CONFIG_CTRL_T > ctrls
void CONFIG_SAVE_RESTORE_WINDOW::Add ( wxChoice *  ctrl,
int &  dest 
)
inlineprotectedinherited

Definition at line 85 of file dialog_create_array.h.

References CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_CHOICE.

86  {
87  CONFIG_CTRL_T ctrlInfo = { ctrl, CFG_CTRL_CHOICE, (void*) &dest };
88 
89  ctrls.push_back( ctrlInfo );
90  }
std::vector< CONFIG_CTRL_T > ctrls
void CONFIG_SAVE_RESTORE_WINDOW::Add ( wxNotebook *  ctrl,
int &  dest 
)
inlineprotectedinherited

Definition at line 92 of file dialog_create_array.h.

References CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_TAB.

93  {
94  CONFIG_CTRL_T ctrlInfo = { ctrl, CFG_CTRL_TAB, (void*) &dest };
95 
96  ctrls.push_back( ctrlInfo );
97  }
std::vector< CONFIG_CTRL_T > ctrls
void DIALOG_CREATE_ARRAY::calculateCircularArrayProperties ( )
private

Definition at line 452 of file dialog_create_array.cpp.

References DoubleValueFromString(), VECTOR2< T >::EuclideanNorm(), g_UserUnit, DIALOG_CREATE_ARRAY_BASE::m_entryCentreX, DIALOG_CREATE_ARRAY_BASE::m_entryCentreY, DIALOG_CREATE_ARRAY_BASE::m_labelCircRadiusValue, m_originalItemPosition, StringFromValue(), wxPoint::x, and wxPoint::y.

Referenced by DIALOG_CREATE_ARRAY(), and OnParameterChanged().

453 {
454  wxPoint centre;
455 
456  centre.x = DoubleValueFromString( g_UserUnit, m_entryCentreX->GetValue() );
457  centre.y = DoubleValueFromString( g_UserUnit, m_entryCentreY->GetValue() );
458 
459  // Find the radius, etc of the circle
460  centre -= m_originalItemPosition;
461 
462  const double radius = VECTOR2I(centre.x, centre.y).EuclideanNorm();
463  m_labelCircRadiusValue->SetLabelText( StringFromValue( g_UserUnit, int(radius), true ) );
464 }
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
VECTOR2< int > VECTOR2I
Definition: vector2d.h:590
T EuclideanNorm() const
Destructor.
Definition: vector2d.h:295
EDA_UNITS_T g_UserUnit
Global variables definitions.
Definition: common.cpp:56
double DoubleValueFromString(EDA_UNITS_T aUnits, const wxString &aTextValue)
Function DoubleValueFromString converts aTextValue to a double.
Definition: base_units.cpp:301
const wxPoint m_originalItemPosition
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_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 }
ARRAY_OPTIONS* DIALOG_CREATE_ARRAY::GetArrayOptions ( ) const
inline
Returns
the array options set by this dialogue, or NULL if they were not set, or could not be set

Definition at line 328 of file dialog_create_array.h.

Referenced by ARRAY_CREATOR::Invoke().

329  {
330  return m_settings;
331  }
ARRAY_OPTIONS * m_settings
The settings object returned to the caller.
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(), SCH_EDIT_FRAME::ImportFile(), PCB_EDIT_FRAME::ImportFile(), 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(), 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::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
virtual void DIALOG_CREATE_ARRAY_BASE::OnClose ( wxCloseEvent &  event)
inlineprotectedvirtualinherited
void DIALOG_CREATE_ARRAY::OnOkClick ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from DIALOG_CREATE_ARRAY_BASE.

Definition at line 284 of file dialog_create_array.cpp.

References DEGREES, DoubleValueFromString(), g_UserUnit, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_2dArrayNumbering, DIALOG_CREATE_ARRAY::ARRAY_CIRCULAR_OPTIONS::m_angle, DIALOG_CREATE_ARRAY::ARRAY_CIRCULAR_OPTIONS::m_centre, DIALOG_CREATE_ARRAY_BASE::m_checkBoxGridReverseNumbering, DIALOG_CREATE_ARRAY_BASE::m_choicePriAxisNumbering, DIALOG_CREATE_ARRAY_BASE::m_choiceSecAxisNumbering, DIALOG_CREATE_ARRAY_BASE::m_circularPanel, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_delta, DIALOG_CREATE_ARRAY_BASE::m_entryCentreX, DIALOG_CREATE_ARRAY_BASE::m_entryCentreY, DIALOG_CREATE_ARRAY_BASE::m_entryCircAngle, DIALOG_CREATE_ARRAY_BASE::m_entryCircCount, DIALOG_CREATE_ARRAY_BASE::m_entryCircNumberingStart, DIALOG_CREATE_ARRAY_BASE::m_entryDx, DIALOG_CREATE_ARRAY_BASE::m_entryDy, DIALOG_CREATE_ARRAY_BASE::m_entryGridPriNumberingOffset, DIALOG_CREATE_ARRAY_BASE::m_entryGridSecNumberingOffset, DIALOG_CREATE_ARRAY_BASE::m_entryNx, DIALOG_CREATE_ARRAY_BASE::m_entryNy, DIALOG_CREATE_ARRAY_BASE::m_entryOffsetX, DIALOG_CREATE_ARRAY_BASE::m_entryOffsetY, DIALOG_CREATE_ARRAY_BASE::m_entryRotateItemsCb, DIALOG_CREATE_ARRAY_BASE::m_entryStagger, DIALOG_CREATE_ARRAY_BASE::m_gridPanel, DIALOG_CREATE_ARRAY_BASE::m_gridTypeNotebook, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_horizontalThenVertical, DIALOG_CREATE_ARRAY::ARRAY_CIRCULAR_OPTIONS::m_nPts, m_numberingEnabled, DIALOG_CREATE_ARRAY::ARRAY_CIRCULAR_OPTIONS::m_numberingOffset, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_numberingOffsetX, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_numberingOffsetY, DIALOG_CREATE_ARRAY::ARRAY_OPTIONS::m_numberingStartIsSpecified, DIALOG_CREATE_ARRAY::ARRAY_CIRCULAR_OPTIONS::m_numberingType, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_nx, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_ny, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_offset, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_priAxisNumType, DIALOG_CREATE_ARRAY_BASE::m_radioBoxGridNumberingAxis, DIALOG_CREATE_ARRAY_BASE::m_radioBoxGridNumberingScheme, DIALOG_CREATE_ARRAY_BASE::m_radioBoxGridStaggerType, DIALOG_CREATE_ARRAY_BASE::m_rbCircStartNumberingOpt, DIALOG_CREATE_ARRAY_BASE::m_rbGridStartNumberingOpt, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_reverseNumberingAlternate, DIALOG_CREATE_ARRAY::ARRAY_CIRCULAR_OPTIONS::m_rotateItems, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_secAxisNumType, m_settings, DIALOG_CREATE_ARRAY::ARRAY_OPTIONS::m_shouldNumber, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_stagger, DIALOG_CREATE_ARRAY::ARRAY_GRID_OPTIONS::m_stagger_rows, NUMBERING_NUMERIC, CONFIG_SAVE_RESTORE_WINDOW::ReadConfigFromControls(), validateLongEntry(), validateNumberingTypeAndOffset(), wxPoint::x, and wxPoint::y.

285 {
286  ARRAY_OPTIONS* newSettings = NULL;
287 
288  wxArrayString errorStrs;
289 
290  const wxWindow* page = m_gridTypeNotebook->GetCurrentPage();
291 
292  if( page == m_gridPanel )
293  {
294  ARRAY_GRID_OPTIONS* newGrid = new ARRAY_GRID_OPTIONS();
295  bool ok = true;
296 
297  // ints
298  ok = ok && validateLongEntry(*m_entryNx, newGrid->m_nx, _("horizontal count"),
299  errorStrs);
300  ok = ok && validateLongEntry(*m_entryNy, newGrid->m_ny, _("vertical count"),
301  errorStrs);
302 
303 
304  newGrid->m_delta.x = DoubleValueFromString( g_UserUnit, m_entryDx->GetValue() );
305  newGrid->m_delta.y = DoubleValueFromString( g_UserUnit, m_entryDy->GetValue() );
306 
307  newGrid->m_offset.x = DoubleValueFromString( g_UserUnit, m_entryOffsetX->GetValue() );
308  newGrid->m_offset.y = DoubleValueFromString( g_UserUnit, m_entryOffsetY->GetValue() );
309 
310  ok = ok && validateLongEntry(*m_entryStagger, newGrid->m_stagger, _("stagger"),
311  errorStrs);
312 
313  newGrid->m_stagger_rows = m_radioBoxGridStaggerType->GetSelection() == 0;
314 
315  newGrid->m_horizontalThenVertical = m_radioBoxGridNumberingAxis->GetSelection() == 0;
316  newGrid->m_reverseNumberingAlternate = m_checkBoxGridReverseNumbering->GetValue();
317 
318  newGrid->m_shouldNumber = m_numberingEnabled;
319 
320  if ( m_numberingEnabled )
321  {
322  newGrid->m_2dArrayNumbering = m_radioBoxGridNumberingScheme->GetSelection() != 0;
323 
324  bool numOk = validateNumberingTypeAndOffset(
326  newGrid->m_priAxisNumType, newGrid->m_numberingOffsetX,
327  errorStrs );
328 
329  if( newGrid->m_2dArrayNumbering )
330  {
333  newGrid->m_secAxisNumType, newGrid->m_numberingOffsetY,
334  errorStrs ) && numOk;
335  }
336 
337  ok = ok && numOk;
338 
339  newGrid->m_numberingStartIsSpecified = m_rbGridStartNumberingOpt->GetSelection() == 1;
340  }
341 
342  // Only use settings if all values are good
343  if( ok )
344  newSettings = newGrid;
345  else
346  delete newGrid;
347  }
348  else if( page == m_circularPanel )
349  {
350  ARRAY_CIRCULAR_OPTIONS* newCirc = new ARRAY_CIRCULAR_OPTIONS();
351  bool ok = true;
352 
353  newCirc->m_centre.x = DoubleValueFromString( g_UserUnit, m_entryCentreX->GetValue() );
354  newCirc->m_centre.y = DoubleValueFromString( g_UserUnit, m_entryCentreY->GetValue() );
355 
356  newCirc->m_angle = DoubleValueFromString( DEGREES, m_entryCircAngle->GetValue() );
357 
358  ok = ok && validateLongEntry(*m_entryCircCount, newCirc->m_nPts,
359  _("point count"), errorStrs);
360 
361  newCirc->m_rotateItems = m_entryRotateItemsCb->GetValue();
362 
363  newCirc->m_shouldNumber = m_numberingEnabled;
364 
365  if ( m_numberingEnabled )
366  {
367  newCirc->m_numberingStartIsSpecified = m_rbCircStartNumberingOpt->GetSelection() == 1;
368  newCirc->m_numberingType = NUMBERING_NUMERIC;
369 
371  newCirc->m_numberingOffset,
372  _("numbering start"), errorStrs);
373  }
374 
375  // Only use settings if all values are good
376  if( ok )
377  newSettings = newCirc;
378  else
379  delete newCirc;
380  }
381 
382  // If we got good settings, send them out and finish
383  if( newSettings )
384  {
385  delete m_settings;
386 
387  // assign pointer and ownership here
388  m_settings = newSettings;
390 
391  EndModal( wxID_OK );
392  }
393  else
394  {
395  wxString errorStr;
396 
397  if( errorStrs.IsEmpty() )
398  errorStr = _("Bad parameters");
399  else
400  errorStr = boost::algorithm::join( errorStrs, "\n" );
401 
402  wxMessageBox( errorStr );
403  }
404 }
ARRAY_OPTIONS * m_settings
The settings object returned to the caller.
Arabic numerals: 0,1,2,3,4,5,6,7,8,9,10,11...
EDA_UNITS_T g_UserUnit
Global variables definitions.
Definition: common.cpp:56
static bool validateNumberingTypeAndOffset(const wxTextCtrl &offsetEntry, const wxChoice &typeEntry, DIALOG_CREATE_ARRAY::ARRAY_NUMBERING_TYPE_T &type, int &offset, wxArrayString &errors)
Validates and saves (if valid) the type and offset of an array axis numbering.
double DoubleValueFromString(EDA_UNITS_T aUnits, const wxString &aTextValue)
Function DoubleValueFromString converts aTextValue to a double.
Definition: base_units.cpp:301
static bool validateLongEntry(const wxTextEntry &entry, long &dest, const wxString description, wxArrayString &errors)
Validate and save a long integer entry.
void DIALOG_CREATE_ARRAY::OnParameterChanged ( wxCommandEvent &  event)
overrideprivatevirtual
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(), SCH_EDIT_FRAME::backAnnotateFootprints(), LIB_VIEW_FRAME::BestZoom(), DIALOG_MODULE_MODULE_EDITOR::BrowseAndAdd3DShapeFile(), DIALOG_MODULE_BOARD_EDITOR::BrowseAndAdd3DShapeFile(), DIALOG_EDIT_COMPONENT_IN_LIBRARY::BrowseAndSelectDocFile(), DIALOG_EXCHANGE_MODULE::BrowseAndSelectFootprint(), CVPCB_MAINFRAME::BuildLIBRARY_LISTBOX(), DIALOG_MODULE_MODULE_EDITOR::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(), SCH_EDIT_FRAME::CreateNetlist(), PCB_BASE_EDIT_FRAME::CreateNewLibrary(), DIALOG_PLOT_SCHEMATIC::createPlotFileName(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), 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_BOARD_EDITOR::DIALOG_MODULE_BOARD_EDITOR(), DIALOG_MODULE_MODULE_EDITOR::DIALOG_MODULE_MODULE_EDITOR(), DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS(), DIALOG_SCH_EDIT_ONE_FIELD::DIALOG_SCH_EDIT_ONE_FIELD(), DIALOG_SYMBOL_LIB_TABLE::DIALOG_SYMBOL_LIB_TABLE(), LIB_VIEW_FRAME::DisplayLibInfos(), SCH_BASE_FRAME::DisplayListComponentsInLib(), PCB_EDIT_FRAME::doAutoSave(), DIALOG_MODULE_MODULE_EDITOR::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(), 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_SYMBOL_REMAP::getLibsNotInGlobalSymbolLibTable(), DIALOG_BOM::getPluginFileName(), LIB_VIEW_FRAME::getSelectedAlias(), FP_THREAD_IFACE::GetTable(), SCH_EDIT_FRAME::ImportFile(), PCB_EDIT_FRAME::ImportFile(), DIALOG_EDIT_COMPONENT_IN_SCHEMATIC::InitBuffers(), DIALOG_MODULE_MODULE_EDITOR::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(), DIALOG_BOM_EDITOR::LoadComponents(), 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(), SCH_BASE_FRAME::OnEditSymbolLibTable(), DIALOG_GENDRILL::OnGenReportFile(), SCH_EDIT_FRAME::OnImportProject(), 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(), DIALOG_SYMBOL_REMAP::OnRemapSymbols(), 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::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::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::~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 CONFIG_SAVE_RESTORE_WINDOW::ReadConfigFromControls ( )
inlineprotectedinherited

Definition at line 99 of file dialog_create_array.h.

References CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_CHECKBOX, CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_CHOICE, CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_RADIOBOX, CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_TAB, and CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_TEXT.

Referenced by OnOkClick().

100  {
101  for( std::vector<CONFIG_CTRL_T>::const_iterator iter = ctrls.begin(), iend = ctrls.end();
102  iter != iend; ++iter )
103  {
104  switch( iter->type )
105  {
106  case CFG_CTRL_CHECKBOX:
107  *(bool*) iter->dest = static_cast<wxCheckBox*>( iter->control )->GetValue();
108  break;
109 
110  case CFG_CTRL_TEXT:
111  *(wxString*) iter->dest = static_cast<wxTextCtrl*>( iter->control )->GetValue();
112  break;
113 
114  case CFG_CTRL_CHOICE:
115  *(int*) iter->dest = static_cast<wxChoice*>( iter->control )->GetSelection();
116  break;
117 
118  case CFG_CTRL_RADIOBOX:
119  *(int*) iter->dest = static_cast<wxRadioBox*>( iter->control )->GetSelection();
120  break;
121 
122  case CFG_CTRL_TAB:
123  *(int*) iter->dest = static_cast<wxNotebook*>( iter->control )->GetSelection();
124  break;
125 
126  default:
127  wxASSERT_MSG( false, wxString(
128  "Unhandled control type for config store: " ) << iter->type );
129  }
130  }
131 
132  valid = true;
133  }
std::vector< CONFIG_CTRL_T > ctrls
void CONFIG_SAVE_RESTORE_WINDOW::RestoreConfigToControls ( )
inlineprotectedinherited

Definition at line 135 of file dialog_create_array.h.

References CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_CHECKBOX, CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_CHOICE, CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_RADIOBOX, CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_TAB, and CONFIG_SAVE_RESTORE_WINDOW::CFG_CTRL_TEXT.

Referenced by DIALOG_CREATE_ARRAY().

136  {
137  if( !valid )
138  return;
139 
140  for( std::vector<CONFIG_CTRL_T>::const_iterator iter = ctrls.begin(), iend = ctrls.end();
141  iter != iend; ++iter )
142  {
143  switch( iter->type )
144  {
145  case CFG_CTRL_CHECKBOX:
146  static_cast<wxCheckBox*>( iter->control )->SetValue( *(bool*) iter->dest );
147  break;
148 
149  case CFG_CTRL_TEXT:
150  static_cast<wxTextCtrl*>( iter->control )->SetValue( *(wxString*) iter->dest );
151  break;
152 
153  case CFG_CTRL_CHOICE:
154  static_cast<wxChoice*>( iter->control )->SetSelection( *(int*) iter->dest );
155  break;
156 
157  case CFG_CTRL_RADIOBOX:
158  static_cast<wxRadioBox*>( iter->control )->SetSelection( *(int*) iter->dest );
159  break;
160 
161  case CFG_CTRL_TAB:
162  static_cast<wxNotebook*>( iter->control )->SetSelection( *(int*) iter->dest );
163  break;
164 
165  default:
166  wxASSERT_MSG( false, wxString(
167  "Unhandled control type for config restore: " ) << iter->type );
168  }
169  }
170  }
std::vector< CONFIG_CTRL_T > ctrls
void DIALOG_CREATE_ARRAY::setControlEnablement ( )
private

Definition at line 407 of file dialog_create_array.cpp.

References DIALOG_CREATE_ARRAY_BASE::m_checkBoxGridReverseNumbering, DIALOG_CREATE_ARRAY_BASE::m_choicePriAxisNumbering, DIALOG_CREATE_ARRAY_BASE::m_choiceSecAxisNumbering, DIALOG_CREATE_ARRAY_BASE::m_entryCircNumberingStart, DIALOG_CREATE_ARRAY_BASE::m_entryGridPriNumberingOffset, DIALOG_CREATE_ARRAY_BASE::m_entryGridSecNumberingOffset, DIALOG_CREATE_ARRAY_BASE::m_labelGridNumberingOffset, DIALOG_CREATE_ARRAY_BASE::m_labelPriAxisNumbering, DIALOG_CREATE_ARRAY_BASE::m_labelSecAxisNumbering, m_numberingEnabled, DIALOG_CREATE_ARRAY_BASE::m_radioBoxGridNumberingAxis, DIALOG_CREATE_ARRAY_BASE::m_radioBoxGridNumberingScheme, DIALOG_CREATE_ARRAY_BASE::m_rbCircStartNumberingOpt, and DIALOG_CREATE_ARRAY_BASE::m_rbGridStartNumberingOpt.

Referenced by DIALOG_CREATE_ARRAY(), and OnParameterChanged().

408 {
409  if ( m_numberingEnabled )
410  {
411  const bool renumber = m_rbGridStartNumberingOpt->GetSelection() == 1;
412 
413  // If we're not renumbering, we can't set the numbering scheme
414  // or axis numbering types
415  m_radioBoxGridNumberingScheme->Enable( renumber );
416  m_labelPriAxisNumbering->Enable( renumber );
417  m_choicePriAxisNumbering->Enable( renumber );
418 
419  // Disable the secondary axis numbering option if the
420  // numbering scheme doesn't have two axes
421  const bool num2d = m_radioBoxGridNumberingScheme->GetSelection() != 0;
422 
423  m_labelSecAxisNumbering->Enable( renumber && num2d );
424  m_choiceSecAxisNumbering->Enable( renumber && num2d );
425 
426  // We can only set an offset if we renumber
427  m_labelGridNumberingOffset->Enable( renumber );
428  m_entryGridPriNumberingOffset->Enable( renumber );
429  m_entryGridSecNumberingOffset->Enable( renumber && num2d );
430 
431  m_entryCircNumberingStart->Enable( m_rbCircStartNumberingOpt->GetSelection() == 1 );
432  }
433  else
434  {
435  // grid
436  m_rbGridStartNumberingOpt->Enable( false );
437  m_checkBoxGridReverseNumbering->Enable( false );
438  m_radioBoxGridNumberingAxis->Enable( false );
439  m_radioBoxGridNumberingScheme->Enable( false );
440  m_choiceSecAxisNumbering->Enable( false );
441  m_choicePriAxisNumbering->Enable( false );
442  m_entryGridPriNumberingOffset->Enable( false );
443  m_entryGridSecNumberingOffset->Enable( false );
444 
445  // circular
446  m_rbCircStartNumberingOpt->Enable( false );
447  m_entryCircNumberingStart->Enable( false );
448  }
449 }
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
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
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(), LIB_VIEW_FRAME::OnSelectSymbol(), 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

Member Data Documentation

wxCheckBox* DIALOG_CREATE_ARRAY_BASE::m_checkBoxGridReverseNumbering
protectedinherited
wxChoice* DIALOG_CREATE_ARRAY_BASE::m_choicePriAxisNumbering
protectedinherited
wxChoice* DIALOG_CREATE_ARRAY_BASE::m_choiceSecAxisNumbering
protectedinherited
wxStaticBoxSizer* DIALOG_CREATE_ARRAY_BASE::m_circPadNumberingSizer
protectedinherited
wxPanel* DIALOG_CREATE_ARRAY_BASE::m_circularPanel
protectedinherited
wxTextCtrl* DIALOG_CREATE_ARRAY_BASE::m_entryCircAngle
protectedinherited
wxTextCtrl* DIALOG_CREATE_ARRAY_BASE::m_entryCircCount
protectedinherited
wxTextCtrl* DIALOG_CREATE_ARRAY_BASE::m_entryCircNumberingStart
protectedinherited
wxTextCtrl* DIALOG_CREATE_ARRAY_BASE::m_entryDx
protectedinherited
wxTextCtrl* DIALOG_CREATE_ARRAY_BASE::m_entryDy
protectedinherited
wxTextCtrl* DIALOG_CREATE_ARRAY_BASE::m_entryGridPriNumberingOffset
protectedinherited
wxTextCtrl* DIALOG_CREATE_ARRAY_BASE::m_entryGridSecNumberingOffset
protectedinherited
wxTextCtrl* DIALOG_CREATE_ARRAY_BASE::m_entryNx
protectedinherited
wxTextCtrl* DIALOG_CREATE_ARRAY_BASE::m_entryNy
protectedinherited
wxTextCtrl* DIALOG_CREATE_ARRAY_BASE::m_entryOffsetX
protectedinherited
wxTextCtrl* DIALOG_CREATE_ARRAY_BASE::m_entryOffsetY
protectedinherited
wxCheckBox* DIALOG_CREATE_ARRAY_BASE::m_entryRotateItemsCb
protectedinherited
wxTextCtrl* DIALOG_CREATE_ARRAY_BASE::m_entryStagger
protectedinherited
wxBoxSizer* DIALOG_CREATE_ARRAY_BASE::m_gridPadNumberingSizer
protectedinherited
wxPanel* DIALOG_CREATE_ARRAY_BASE::m_gridPanel
protectedinherited
wxNotebook* DIALOG_CREATE_ARRAY_BASE::m_gridTypeNotebook
protectedinherited
std::string DIALOG_SHIM::m_hash_key
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelCentreX
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelCentreY
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelCircAngle
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelCircCount
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelCircNumStart
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelCircRadius
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelCircRadiusValue
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelCircRotate
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelDx
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelDy
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelGridNumberingOffset
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelNx
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelNy
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelOffsetX
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelOffsetY
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelPriAxisNumbering
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelSecAxisNumbering
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_labelStagger
protectedinherited
bool DIALOG_CREATE_ARRAY::m_numberingEnabled
private

Definition at line 388 of file dialog_create_array.h.

Referenced by OnOkClick(), and setControlEnablement().

DIALOG_CREATE_ARRAY::CREATE_ARRAY_DIALOG_ENTRIES DIALOG_CREATE_ARRAY::m_options
staticprivate

Definition at line 391 of file dialog_create_array.h.

Referenced by DIALOG_CREATE_ARRAY().

const wxPoint DIALOG_CREATE_ARRAY::m_originalItemPosition
private

Definition at line 344 of file dialog_create_array.h.

Referenced by calculateCircularArrayProperties().

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
wxRadioBox* DIALOG_CREATE_ARRAY_BASE::m_radioBoxGridNumberingAxis
protectedinherited
wxRadioBox* DIALOG_CREATE_ARRAY_BASE::m_radioBoxGridNumberingScheme
protectedinherited
wxRadioBox* DIALOG_CREATE_ARRAY_BASE::m_radioBoxGridStaggerType
protectedinherited
wxRadioBox* DIALOG_CREATE_ARRAY_BASE::m_rbCircStartNumberingOpt
protectedinherited
wxRadioBox* DIALOG_CREATE_ARRAY_BASE::m_rbGridStartNumberingOpt
protectedinherited
ARRAY_OPTIONS* DIALOG_CREATE_ARRAY::m_settings
private

The settings object returned to the caller.

We retain ownership of this

Definition at line 339 of file dialog_create_array.h.

Referenced by OnOkClick(), and ~DIALOG_CREATE_ARRAY().

wxStdDialogButtonSizer* DIALOG_CREATE_ARRAY_BASE::m_stdButtons
protectedinherited
wxButton* DIALOG_CREATE_ARRAY_BASE::m_stdButtonsCancel
protectedinherited
wxButton* DIALOG_CREATE_ARRAY_BASE::m_stdButtonsOK
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_unitLabelCentreX
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_unitLabelCentreY
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_unitLabelCircAngle
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_unitLabelDx
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_unitLabelDy
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_unitLabelOffsetX
protectedinherited
wxStaticText* DIALOG_CREATE_ARRAY_BASE::m_unitLabelOffsetY
protectedinherited

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