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

#include <dialog_drc_rule_editor.h>

Inheritance diagram for DIALOG_DRC_RULE_EDITOR:
RULE_EDITOR_DIALOG_BASE PROGRESS_REPORTER_BASE DIALOG_SHIM KIWAY_HOLDER

Public Types

enum  RULE_EDITOR_TREE_CONTEXT_OPT_ID {
  ID_NEWRULE = wxID_HIGHEST + 1 , ID_COPYRULE , ID_DELETERULE , ID_MOVEUP ,
  ID_MOVEDOWN
}
 Enumeration representing the available context menu options for the rule editor tree. More...
 
enum  HOLDER_TYPE { DIALOG , FRAME , PANEL }
 

Public Member Functions

 DIALOG_DRC_RULE_EDITOR (PCB_EDIT_FRAME *aEditorFrame, wxWindow *aParent)
 
 ~DIALOG_DRC_RULE_EDITOR ()
 
bool TransferDataToWindow () override
 
bool TransferDataFromWindow () override
 
std::vector< RULE_TREE_NODEGetDefaultRuleTreeItems () override
 Pure virtual method to get the default rule tree items.
 
void AddNewRule (RULE_TREE_ITEM_DATA *aRuleTreeItemData) override
 Adds a new rule to the rule tree, either as a child or under the parent, based on the node type (CONSTRAINT or not).
 
void DuplicateRule (RULE_TREE_ITEM_DATA *aRuleTreeItemData) override
 Duplicates a rule from the source tree node and appends it as a new item under the same parent.
 
void RuleTreeItemSelectionChanged (RULE_TREE_ITEM_DATA *aCurrentRuleTreeItemData) override
 Handles rule tree item selection changes, updating the content panel with appropriate editor or header panel.
 
void UpdateRuleTypeTreeItemData (RULE_TREE_ITEM_DATA *aCurrentRuleTreeItemData) override
 Updates the rule tree item data by transferring data from the rule editor panel and updating the item text.
 
bool isEnabled (RULE_TREE_ITEM_DATA *aRuleTreeItemData, RULE_EDITOR_TREE_CONTEXT_OPT aOption) override
 Verifies if a context menu option should be enabled based on the rule tree item type.
 
void RemoveRule (int aNodeId) override
 Removes a rule from the rule tree after confirmation, deleting the item and associated data.
 
void UpdateData ()
 
void OnSave (wxCommandEvent &aEvent) override
 
void OnCancel (wxCommandEvent &aEvent) override
 
wxTreeCtrl * GetRuleTreeCtrl ()
 Gets the tree control used for displaying and managing rules.
 
void SetModified ()
 Marks the dialog as modified, typically used to indicate unsaved changes.
 
void InitRuleTreeItems (const std::vector< RULE_TREE_NODE > &aRuleTreeNodes)
 Initializes the rule tree by adding nodes, setting up the structure, and saving its state.
 
wxPanel * GetContentPanel ()
 Retrieves the current content panel.
 
void SetContentPanel (wxPanel *aContentPanel)
 Replaces the current content panel with a new one based on the selected constraint type.
 
void AppendNewRuleTreeItem (const RULE_TREE_NODE &aRuleTreeNode, wxTreeItemId aParentTreeItemId)
 Adds a new rule tree item under the specified parent and updates the tree history.
 
RULE_TREE_ITEM_DATAGetCurrentlySelectedRuleTreeItemData ()
 Retrieves the currently selected rule tree item data.
 
wxTreeItemId GetPreviouslySelectedRuleTreeItemId ()
 Retrieves the previously selected rule tree item ID.
 
void UpdateRuleTreeItemText (wxTreeItemId aItemId, wxString aItemText)
 Updates the text of a specified rule tree item.
 
void SetControlsEnabled (bool aEnable)
 Enables or disables controls within the rule editor dialog.
 
void DeleteRuleTreeItem (wxTreeItemId aItemId, const int &aNodeId)
 Deletes a tree item and removes its corresponding node from history.
 
void SetInitialFocus (wxWindow *aWindow)
 Sets the window (usually a wxTextCtrl) that should be focused when the dialog is shown.
 
int ShowModal () override
 
int ShowQuasiModal ()
 
void EndQuasiModal (int retCode)
 
bool IsQuasiModal () const
 
void PrepareForModalSubDialog ()
 
void CleanupAfterModalSubDialog ()
 
bool Show (bool show) override
 
bool Enable (bool enable) override
 
void OnPaint (wxPaintEvent &event)
 
void OnModify ()
 
void ClearModify ()
 
void SetPosition (const wxPoint &aNewPosition)
 Force the position of the dialog to a new position.
 
EDA_UNITS GetUserUnits () const
 
void SelectAllInTextCtrls (wxWindowList &children)
 
void SetupStandardButtons (std::map< int, wxString > aLabels={})
 
void LoadControlState ()
 Load persisted control values from the current project's local settings.
 
void SaveControlState ()
 Save control values and geometry to the current project's local settings.
 
void OptOut (wxWindow *aWindow)
 Opt out of control state saving.
 
void RegisterUnitBinder (UNIT_BINDER *aUnitBinder, wxWindow *aWindow)
 Register a UNIT_BINDER so that it can handle units in control-state save/restore.
 
HOLDER_TYPE GetType () const
 
KIWAYKiway () const
 Return a reference to the KIWAY that this object has an opportunity to participate in.
 
bool HasKiway () const
 Safety check before asking for the Kiway reference.
 
PROJECTPrj () const
 Return a reference to the PROJECT associated with this KIWAY.
 
void SetKiway (wxWindow *aDest, KIWAY *aKiway)
 It is only used for debugging, since "this" is not a wxWindow*.
 

Static Public Member Functions

static RULE_EDITOR_DIALOG_BASEGetDialog (wxWindow *aWindow)
 Static method to retrieve the rule editor dialog instance associated with a given window.
 
static bool IsCtrl (int aChar, const wxKeyEvent &e)
 
static bool IsShiftCtrl (int aChar, const wxKeyEvent &e)
 

Protected Member Functions

BOARD_DESIGN_SETTINGSbds ()
 
void finishInitialization ()
 
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.
 
void setSizeInDU (int x, int y)
 Set the dialog to the given dimensions in "dialog units".
 
int horizPixelsFromDU (int x) const
 Convert an integer number of dialog units to pixels, horizontally.
 
int vertPixelsFromDU (int y) const
 Convert an integer number of dialog units to pixels, vertically.
 
void resetSize ()
 Clear the existing dialog size and position.
 
virtual void OnCharHook (wxKeyEvent &aEvt)
 
virtual void TearDownQuasiModal ()
 Override this method to perform dialog tear down actions not suitable for object dtor.
 

Protected Attributes

BOARDm_currentBoard
 
PCB_EDIT_FRAMEm_frame
 
REPORTERm_reporter
 
DRC_TOOLm_drcTool
 
wxDataViewCtrl * m_markerDataView
 
wxTreeCtrl * m_ruleTreeCtrl
 
WX_INFOBARm_infoBar
 
wxPanel * m_contentPanel
 
wxSplitterWindow * m_splitter
 
wxSearchCtrl * m_filterSearch
 
wxTextCtrl * m_filterText
 
wxBoxSizer * m_buttonsSizer
 
wxBitmapButton * m_addRuleButton
 
wxBitmapButton * m_copyRuleButton
 
wxBitmapButton * m_moveTreeItemUpButton
 
wxBitmapButton * m_moveTreeItemDownButton
 
wxBitmapButton * m_deleteRuleButton
 
wxButton * m_saveRuleButton
 
wxButton * m_cancelRuleButton
 
EDA_UNITS m_units
 
std::string m_hash_key
 
bool m_useCalculatedSize
 
bool m_firstPaintEvent
 
wxWindow * m_initialFocusTarget
 
bool m_isClosing
 
wxGUIEventLoop * m_qmodal_loop
 
bool m_qmodal_showing
 
WINDOW_DISABLERm_qmodal_parent_disabler
 
EDA_BASE_FRAMEm_parentFrame
 
std::vector< wxWindow * > m_tabOrder
 
wxSize m_initialSize
 
bool m_userPositioned
 
bool m_userResized
 
std::map< wxWindow *, wxString > m_beforeEditValues
 
std::map< wxWindow *, UNIT_BINDER * > m_unitBinders
 
std::vector< UNDO_STEPm_undoStack
 
std::vector< UNDO_STEPm_redoStack
 
std::map< wxWindow *, wxVariant > m_currentValues
 
bool m_handlingUndoRedo
 
bool m_childReleased
 

Private Member Functions

std::vector< RULE_TREE_NODEbuildElectricalRuleTreeNodes (int &aParentId)
 
std::vector< RULE_TREE_NODEbuildManufacturabilityRuleTreeNodes (int &aParentId)
 
std::vector< RULE_TREE_NODEbuildHighspeedDesignRuleTreeNodes (int &aParentId)
 
std::vector< RULE_TREE_NODEbuildFootprintsRuleTreeNodes (int &aParentId)
 
void LoadExistingRules ()
 
void SaveRulesToFile ()
 
RULE_TREE_NODE buildRuleTreeNode (RULE_TREE_ITEM_DATA *aRuleTreeItemData)
 Creates a new rule tree node with a unique name and assigns the appropriate constraint data.
 
RULE_TREE_NODE buildRuleTreeNodeData (const std::string &aName, const DRC_RULE_EDITOR_ITEM_TYPE &aNodeType, const std::optional< int > &aParentId=std::nullopt, const std::optional< DRC_RULE_EDITOR_CONSTRAINT_NAME > &aConstraintType=std::nullopt, const std::vector< RULE_TREE_NODE > &aChildNodes={}, const std::optional< int > &aId=std::nullopt)
 Creates a new rule tree node with the specified parameters, generating a new ID if not provided.
 
RULE_TREE_NODE buildRuleNodeFromKicadDrc (const wxString &aName, const wxString &aCode, const std::optional< int > &aParentId=std::nullopt)
 Build a rule tree node from a constraint keyword loaded from a .kicad_drc file.
 
RULE_TREE_NODEgetRuleTreeNodeInfo (const int &aNodeId)
 Retrieves the rule tree node for a given ID.
 
void saveRule (int aNodeId)
 Saves the rule after validating the rule editor panel.
 
void closeRuleEntryView (int aNodeId)
 Closes the rule entry view and re-enables controls.
 
int highlightMatchingItems (int aNodeId)
 Highlights board items matching the current rule condition.
 
bool validateRuleName (int aNodeId, wxString aRuleName)
 Validates if the rule name is unique for the given node ID.
 
bool deleteTreeNodeData (const int &aNodeId)
 Deletes a rule tree node by its ID.
 
void collectChildRuleNodes (int aParentId, std::vector< RULE_TREE_NODE * > &aResult)
 Collects all child rule nodes for a given parent node ID.
 
bool updateUI () override
 
void AdvancePhase (const wxString &aMessage) override
 Use the next available virtual zone of the dialog progress bar and updates the message.
 
void populateRuleTreeCtrl (const std::vector< RULE_TREE_NODE > &aRuleTreeNodes, const RULE_TREE_NODE &aRuleTreeNode, wxTreeItemId aParentTreeItemId)
 Populates the rule tree with nodes and their children.
 
void onRuleTreeItemRightClick (wxTreeEvent &aEvent)
 Handles right-click on a rule tree item to create a context menu.
 
void onRuleTreeItemSelectionChanged (wxTreeEvent &aEvent)
 Updates action buttons based on the selected tree item.
 
void onRuleTreeItemActivated (wxTreeEvent &aEvent)
 Handles double-click activation of a tree item.
 
void onNewRuleOptionClick (wxCommandEvent &aEvent)
 Creates a new rule when the "New Rule" option is clicked.
 
void onDuplicateRuleOptionClick (wxCommandEvent &aEvent)
 Duplicates the selected rule when "Duplicate Rule" is clicked.
 
void onDeleteRuleOptionClick (wxCommandEvent &aEvent)
 Deletes the selected rule when "Delete Rule" is clicked.
 
void onMoveUpRuleOptionClick (wxCommandEvent &aEvent)
 Moves a rule item up in the tree when "Move Up" is clicked.
 
void onMoveDownRuleOptionClick (wxCommandEvent &aEvent)
 Moves a rule item down in the tree when "Move Down" is clicked.
 
void onRuleTreeItemLeftDown (wxMouseEvent &aEvent)
 Initiates drag operation for a tree item on mouse down.
 
void onRuleTreeItemMouseMotion (wxMouseEvent &aEvent)
 Handles drag motion to move the item along with the cursor.
 
void onRuleTreeItemLeftUp (wxMouseEvent &aEvent)
 Completes the drag operation on mouse release.
 
void onFilterSearch (wxCommandEvent &aEvent)
 Applies filter to the rule tree based on the search string.
 
bool filterRuleTree (const wxTreeItemId &aItem, const wxString &aFilter)
 Recursively filters tree items to show only those matching the filter.
 
void saveRuleTreeState (const wxTreeItemId &aItem, const int &aNodeId=0)
 Saves the state of a tree item to history.
 
void restoreRuleTree (const wxTreeItemId &aParent, const int &aNodeId)
 Restores a tree item from history and appends it under a parent.
 
wxTreeItemId appendRuleTreeItem (const RULE_TREE_NODE &aRuleTreeNode, wxTreeItemId aParentTreeItemId)
 Appends a new rule item to the tree.
 
void getRuleTreeChildNodes (const std::vector< RULE_TREE_NODE > &aNodes, int aParentId, std::vector< RULE_TREE_NODE > &aResult)
 Retrieves child nodes of a given parent node.
 
void moveRuleTreeItemChildrensTooOnDrag (wxTreeItemId aSrcTreeItemId, wxTreeItemId aDestTreeItemId)
 Recursively moves all child nodes of a source item to a destination during drag.
 
void updateRuleTreeItemMoveOptionState ()
 Updates the state of move options (up/down) for the selected item.
 
void updateRuleTreeActionButtonsState (RULE_TREE_ITEM_DATA *aRuleTreeItemData)
 Updates the action buttons based on the current selection.
 
void onResize (wxSizeEvent &event)
 
void onClose (wxCloseEvent &aEvt)
 
void OnCloseWindow (wxCloseEvent &aEvent)
 Properly handle the wxCloseEvent when in the quasimodal mode when not calling EndQuasiModal which is possible with any dialog derived from DIALOG_SHIM.
 
void OnSize (wxSizeEvent &aEvent)
 
void OnMove (wxMoveEvent &aEvent)
 
void OnButton (wxCommandEvent &aEvent)
 Properly handle the default button events when in the quasimodal mode when not calling EndQuasiModal which is possible with any dialog derived from DIALOG_SHIM.
 
void onChildSetFocus (wxFocusEvent &aEvent)
 
void onInitDialog (wxInitDialogEvent &aEvent)
 
std::string generateKey (const wxWindow *aWin) const
 
void registerUndoRedoHandlers (wxWindowList &aChildren)
 
void recordControlChange (wxWindow *aCtrl)
 
void onCommandEvent (wxCommandEvent &aEvent)
 
void onSpinEvent (wxSpinEvent &aEvent)
 
void onSpinDoubleEvent (wxSpinDoubleEvent &aEvent)
 
void onStyledTextChanged (wxStyledTextEvent &aEvent)
 
void onGridCellChanged (wxGridEvent &aEvent)
 
void onPropertyGridChanged (wxPropertyGridEvent &aEvent)
 
void onDataViewListChanged (wxDataViewEvent &aEvent)
 
void doUndo ()
 
void doRedo ()
 
wxVariant getControlValue (wxWindow *aCtrl)
 
void setControlValue (wxWindow *aCtrl, const wxVariant &aValue)
 
 DECLARE_EVENT_TABLE ()
 
void SetNumPhases (int aNumPhases) override
 Set the number of phases.
 
void AddPhases (int aNumPhases) override
 
virtual void BeginPhase (int aPhase) override
 Initialize the aPhase virtual zone of the dialog progress bar.
 
virtual void AdvancePhase () override
 Use the next available virtual zone of the dialog progress bar.
 
virtual void Report (const wxString &aMessage) override
 Display aMessage in the progress bar dialog.
 
virtual void SetCurrentProgress (double aProgress) override
 Set the progress value to aProgress (0..1).
 
void SetMaxProgress (int aMaxProgress) override
 Fix the value that gives the 100 percent progress bar length (inside the current virtual zone).
 
void AdvanceProgress () override
 Increment the progress bar length (inside the current virtual zone).
 
bool KeepRefreshing (bool aWait=false) override
 Update the UI dialog.
 
void SetTitle (const wxString &aTitle) override
 Change the title displayed on the window caption.
 
bool IsCancelled () const override
 
int CurrentProgress () const
 

Private Attributes

int m_nodeId
 
std::vector< RULE_TREE_NODEm_ruleTreeNodeDatas
 
PANEL_DRC_RULE_EDITORm_ruleEditorPanel
 
PANEL_DRC_GROUP_HEADERm_groupHeaderPanel
 
std::shared_ptr< RC_ITEMS_PROVIDERm_markersProvider
 
RC_TREE_MODELm_markersTreeModel
 
int m_severities
 
bool m_isDragging
 
bool m_enableMoveUp
 
bool m_enableMoveDown
 
bool m_enableAddRule
 
bool m_enableDuplicateRule
 
bool m_enableDeleteRule
 
int m_defaultSashPosition
 
wxString m_title
 
std::vector< RULE_TREE_NODEm_defaultTreeItems
 
RULE_TREE_ITEM_DATAm_selectedData
 
wxTreeItemId m_previousId
 
wxTreeItemId m_draggedItem
 
wxDragImage * m_dragImage
 
std::unordered_map< int, std::tuple< wxString, std::vector< int >, wxTreeItemId > > m_treeHistoryData
 
KIWAYm_kiway
 
HOLDER_TYPE m_type
 
wxString m_rptMessage
 
std::mutex m_mutex
 
std::atomic_int m_phase
 
std::atomic_int m_numPhases
 
std::atomic_int m_progress
 
std::atomic_int m_maxProgress
 
std::atomic_bool m_cancelled
 
std::atomic_bool m_messageChanged
 

Detailed Description

Definition at line 45 of file dialog_drc_rule_editor.h.

Member Enumeration Documentation

◆ HOLDER_TYPE

enum KIWAY_HOLDER::HOLDER_TYPE
inherited
Enumerator
DIALOG 
FRAME 
PANEL 

Definition at line 41 of file kiway_holder.h.

◆ RULE_EDITOR_TREE_CONTEXT_OPT_ID

Enumeration representing the available context menu options for the rule editor tree.

Enumerator
ID_NEWRULE 
ID_COPYRULE 
ID_DELETERULE 
ID_MOVEUP 
ID_MOVEDOWN 

Definition at line 114 of file rule_editor_dialog_base.h.

Constructor & Destructor Documentation

◆ DIALOG_DRC_RULE_EDITOR()

◆ ~DIALOG_DRC_RULE_EDITOR()

DIALOG_DRC_RULE_EDITOR::~DIALOG_DRC_RULE_EDITOR ( )

Definition at line 110 of file dialog_drc_rule_editor.cpp.

Member Function Documentation

◆ AddNewRule()

void DIALOG_DRC_RULE_EDITOR::AddNewRule ( RULE_TREE_ITEM_DATA * aRuleTreeItemData)
overridevirtual

Adds a new rule to the rule tree, either as a child or under the parent, based on the node type (CONSTRAINT or not).

Parameters
aRuleTreeItemDataThe data for the rule tree item to be added.

Implements RULE_EDITOR_DIALOG_BASE.

Definition at line 310 of file dialog_drc_rule_editor.cpp.

References RULE_EDITOR_DIALOG_BASE::AppendNewRuleTreeItem(), buildRuleTreeNode(), CONSTRAINT, RULE_TREE_ITEM_DATA::GetNodeId(), RULE_TREE_ITEM_DATA::GetParentTreeItemId(), getRuleTreeNodeInfo(), RULE_TREE_ITEM_DATA::GetTreeItemId(), and RULE_TREE_NODE::m_nodeType.

◆ AddPhases()

void PROGRESS_REPORTER_BASE::AddPhases ( int aNumPhases)
overridevirtualinherited

Implements PROGRESS_REPORTER.

Definition at line 98 of file progress_reporter_base.cpp.

References m_numPhases.

◆ AdvancePhase() [1/2]

void DIALOG_DRC_RULE_EDITOR::AdvancePhase ( const wxString & aMessage)
overrideprivatevirtual

Use the next available virtual zone of the dialog progress bar and updates the message.

Reimplemented from PROGRESS_REPORTER_BASE.

Definition at line 1092 of file dialog_drc_rule_editor.cpp.

References PROGRESS_REPORTER_BASE::AdvancePhase(), and PROGRESS_REPORTER_BASE::SetCurrentProgress().

◆ AdvancePhase() [2/2]

void PROGRESS_REPORTER_BASE::AdvancePhase ( )
overridevirtualinherited

◆ AdvanceProgress()

void PROGRESS_REPORTER_BASE::AdvanceProgress ( )
overridevirtualinherited

Increment the progress bar length (inside the current virtual zone).

Implements PROGRESS_REPORTER.

Definition at line 86 of file progress_reporter_base.cpp.

References m_progress.

◆ AppendNewRuleTreeItem()

void RULE_EDITOR_DIALOG_BASE::AppendNewRuleTreeItem ( const RULE_TREE_NODE & aRuleTreeNode,
wxTreeItemId aParentTreeItemId )
inherited

Adds a new rule tree item under the specified parent and updates the tree history.

Parameters
aRuleTreeNodeThe node data to add.
aParentTreeItemIdThe parent item's ID.

Definition at line 364 of file rule_editor_dialog_base.cpp.

References appendRuleTreeItem(), RULE_EDITOR_DATA_BASE::GetParentId(), RULE_TREE_NODE::m_nodeData, RULE_TREE_NODE::m_nodeId, RULE_TREE_NODE::m_nodeName, m_ruleTreeCtrl, and m_treeHistoryData.

Referenced by DIALOG_DRC_RULE_EDITOR::AddNewRule(), DIALOG_DRC_RULE_EDITOR::DuplicateRule(), and DIALOG_DRC_RULE_EDITOR::LoadExistingRules().

◆ appendRuleTreeItem()

wxTreeItemId RULE_EDITOR_DIALOG_BASE::appendRuleTreeItem ( const RULE_TREE_NODE & aRuleTreeNode,
wxTreeItemId aParentTreeItemId )
privateinherited

Appends a new rule item to the tree.

Parameters
aRuleTreeNodeThe rule tree node for the new item.
aParentTreeItemIdParent item ID.
Returns
The newly created tree item ID.

Definition at line 945 of file rule_editor_dialog_base.cpp.

References RULE_TREE_NODE::m_nodeId, RULE_TREE_NODE::m_nodeName, and m_ruleTreeCtrl.

Referenced by AppendNewRuleTreeItem(), and populateRuleTreeCtrl().

◆ bds()

BOARD_DESIGN_SETTINGS & DIALOG_DRC_RULE_EDITOR::bds ( )
inlineprotected

Definition at line 226 of file dialog_drc_rule_editor.h.

References m_currentBoard.

◆ BeginPhase()

void PROGRESS_REPORTER_BASE::BeginPhase ( int aPhase)
overridevirtualinherited

Initialize the aPhase virtual zone of the dialog progress bar.

Implements PROGRESS_REPORTER.

Definition at line 43 of file progress_reporter_base.cpp.

References m_phase, and m_progress.

◆ buildElectricalRuleTreeNodes()

◆ buildFootprintsRuleTreeNodes()

std::vector< RULE_TREE_NODE > DIALOG_DRC_RULE_EDITOR::buildFootprintsRuleTreeNodes ( int & aParentId)
private

◆ buildHighspeedDesignRuleTreeNodes()

std::vector< RULE_TREE_NODE > DIALOG_DRC_RULE_EDITOR::buildHighspeedDesignRuleTreeNodes ( int & aParentId)
private

◆ buildManufacturabilityRuleTreeNodes()

◆ buildRuleNodeFromKicadDrc()

RULE_TREE_NODE DIALOG_DRC_RULE_EDITOR::buildRuleNodeFromKicadDrc ( const wxString & aName,
const wxString & aCode,
const std::optional< int > & aParentId = std::nullopt )
private

Build a rule tree node from a constraint keyword loaded from a .kicad_drc file.

Definition at line 1072 of file dialog_drc_rule_editor.cpp.

References buildRuleTreeNodeData(), CONSTRAINT, DRC_RULE_EDITOR_UTILS::ConstraintFromKicadDrc(), DRC_RULE_EDITOR_UTILS::GetConstraintTypeFromCode(), and RULE_TREE_NODE::m_nodeData.

◆ buildRuleTreeNode()

◆ buildRuleTreeNodeData()

RULE_TREE_NODE DIALOG_DRC_RULE_EDITOR::buildRuleTreeNodeData ( const std::string & aName,
const DRC_RULE_EDITOR_ITEM_TYPE & aNodeType,
const std::optional< int > & aParentId = std::nullopt,
const std::optional< DRC_RULE_EDITOR_CONSTRAINT_NAME > & aConstraintType = std::nullopt,
const std::vector< RULE_TREE_NODE > & aChildNodes = {},
const std::optional< int > & aId = std::nullopt )
private

Creates a new rule tree node with the specified parameters, generating a new ID if not provided.

Parameters
aNameThe name of the node.
aNodeTypeThe type of the node (e.g., RULE, CONSTRAINT).
aParentIdThe ID of the parent node, if any.
aConstraintTypeThe constraint type, if any.
aChildNodesList of child nodes.
idOptional ID for the node.
Returns
The newly created RULE_TREE_NODE.

Definition at line 1033 of file dialog_drc_rule_editor.cpp.

References m_nodeId, RULE_EDITOR_DATA_BASE::SetId(), and RULE_EDITOR_DATA_BASE::SetParentId().

Referenced by buildElectricalRuleTreeNodes(), buildFootprintsRuleTreeNodes(), buildHighspeedDesignRuleTreeNodes(), buildManufacturabilityRuleTreeNodes(), buildRuleNodeFromKicadDrc(), buildRuleTreeNode(), GetDefaultRuleTreeItems(), and LoadExistingRules().

◆ CleanupAfterModalSubDialog()

void DIALOG_SHIM::CleanupAfterModalSubDialog ( )
inherited

Definition at line 1378 of file dialog_shim.cpp.

References m_qmodal_parent_disabler.

◆ ClearModify()

void DIALOG_SHIM::ClearModify ( )
inherited

◆ closeRuleEntryView()

void DIALOG_DRC_RULE_EDITOR::closeRuleEntryView ( int aNodeId)
private

Closes the rule entry view and re-enables controls.

Parameters
aNodeIdThe ID of the rule node being closed.

Definition at line 893 of file dialog_drc_rule_editor.cpp.

References RULE_EDITOR_DIALOG_BASE::SetControlsEnabled().

Referenced by RuleTreeItemSelectionChanged().

◆ collectChildRuleNodes()

void DIALOG_DRC_RULE_EDITOR::collectChildRuleNodes ( int aParentId,
std::vector< RULE_TREE_NODE * > & aResult )
private

Collects all child rule nodes for a given parent node ID.

Parameters
aParentIdThe ID of the parent node.
aResultThe vector to store the child nodes.

Definition at line 1016 of file dialog_drc_rule_editor.cpp.

References collectChildRuleNodes(), RULE_EDITOR_DIALOG_BASE::getRuleTreeChildNodes(), getRuleTreeNodeInfo(), RULE_TREE_NODE::m_nodeId, RULE_TREE_NODE::m_nodeType, m_ruleTreeNodeDatas, and RULE.

Referenced by collectChildRuleNodes(), and RuleTreeItemSelectionChanged().

◆ CurrentProgress()

int PROGRESS_REPORTER_BASE::CurrentProgress ( ) const
inherited

◆ DECLARE_EVENT_TABLE()

DIALOG_SHIM::DECLARE_EVENT_TABLE ( )
privateinherited

◆ DeleteRuleTreeItem()

void RULE_EDITOR_DIALOG_BASE::DeleteRuleTreeItem ( wxTreeItemId aItemId,
const int & aNodeId )
inherited

Deletes a tree item and removes its corresponding node from history.

Parameters
aItemIdThe tree item ID to delete.
aNodeIdThe node ID to remove from history.

Definition at line 403 of file rule_editor_dialog_base.cpp.

References m_ruleTreeCtrl, and m_treeHistoryData.

Referenced by DIALOG_DRC_RULE_EDITOR::RemoveRule().

◆ deleteTreeNodeData()

bool DIALOG_DRC_RULE_EDITOR::deleteTreeNodeData ( const int & aNodeId)
private

Deletes a rule tree node by its ID.

Parameters
aNodeIdThe ID of the node to delete.
Returns
True if the node was found and deleted, false otherwise.

Definition at line 998 of file dialog_drc_rule_editor.cpp.

References m_ruleTreeNodeDatas.

Referenced by RemoveRule().

◆ doRedo()

void DIALOG_SHIM::doRedo ( )
privateinherited

◆ doUndo()

void DIALOG_SHIM::doUndo ( )
privateinherited

◆ DuplicateRule()

void DIALOG_DRC_RULE_EDITOR::DuplicateRule ( RULE_TREE_ITEM_DATA * aRuleTreeItemData)
overridevirtual

Duplicates a rule from the source tree node and appends it as a new item under the same parent.

Parameters
aRuleTreeItemDataThe data of the rule to be duplicated.

Implements RULE_EDITOR_DIALOG_BASE.

Definition at line 328 of file dialog_drc_rule_editor.cpp.

References RULE_EDITOR_DIALOG_BASE::AppendNewRuleTreeItem(), buildRuleTreeNode(), RULE_EDITOR_DATA_BASE::CopyFrom(), RULE_TREE_ITEM_DATA::GetNodeId(), RULE_TREE_ITEM_DATA::GetParentTreeItemId(), getRuleTreeNodeInfo(), and RULE_TREE_NODE::m_nodeData.

◆ Enable()

bool DIALOG_SHIM::Enable ( bool enable)
overrideinherited

◆ EndQuasiModal()

◆ filterRuleTree()

bool RULE_EDITOR_DIALOG_BASE::filterRuleTree ( const wxTreeItemId & aItem,
const wxString & aFilter )
privateinherited

Recursively filters tree items to show only those matching the filter.

Parameters
aItemThe tree item to check.
aFilterThe filter string.
Returns
True if the item matches the filter or has visible children.

Definition at line 851 of file rule_editor_dialog_base.cpp.

References filterRuleTree(), and m_ruleTreeCtrl.

Referenced by filterRuleTree(), and onFilterSearch().

◆ finishDialogSettings()

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 after all widgets have been initialized, and therefore their size fixed. If TransferDataToWindow() is used to initialize widgets, at the end of TransferDataToWindow, or better yet, at end of a wxInitDialogEvent handler.

Definition at line 293 of file dialog_shim.cpp.

Referenced by CONVERT_SETTINGS_DIALOG::CONVERT_SETTINGS_DIALOG(), DIALOG_ANNOTATE::DIALOG_ANNOTATE(), DIALOG_ASSIGN_NETCLASS::DIALOG_ASSIGN_NETCLASS(), DIALOG_BOARD_REANNOTATE::DIALOG_BOARD_REANNOTATE(), DIALOG_BOARD_SETUP::DIALOG_BOARD_SETUP(), DIALOG_BOARD_STATS_JOB::DIALOG_BOARD_STATS_JOB(), DIALOG_BOM::DIALOG_BOM(), DIALOG_BOOK_REPORTER::DIALOG_BOOK_REPORTER(), DIALOG_CHANGE_SYMBOLS::DIALOG_CHANGE_SYMBOLS(), DIALOG_CLEANUP_TRACKS_AND_VIAS::DIALOG_CLEANUP_TRACKS_AND_VIAS(), DIALOG_COPPER_ZONE::DIALOG_COPPER_ZONE(), DIALOG_DATABASE_LIB_SETTINGS::DIALOG_DATABASE_LIB_SETTINGS(), DIALOG_DIMENSION_PROPERTIES::DIALOG_DIMENSION_PROPERTIES(), DIALOG_DRAW_LAYERS_SETTINGS::DIALOG_DRAW_LAYERS_SETTINGS(), DIALOG_DRC::DIALOG_DRC(), DIALOG_EDIT_SYMBOLS_LIBID::DIALOG_EDIT_SYMBOLS_LIBID(), DIALOG_ENUM_PADS::DIALOG_ENUM_PADS(), DIALOG_ERC::DIALOG_ERC(), DIALOG_EXCHANGE_FOOTPRINTS::DIALOG_EXCHANGE_FOOTPRINTS(), DIALOG_EXECUTECOMMAND_JOB_SETTINGS::DIALOG_EXECUTECOMMAND_JOB_SETTINGS(), DIALOG_EXPORT_2581::DIALOG_EXPORT_2581(), DIALOG_EXPORT_2581::DIALOG_EXPORT_2581(), DIALOG_EXPORT_IDF3::DIALOG_EXPORT_IDF3(), DIALOG_EXPORT_NETLIST::DIALOG_EXPORT_NETLIST(), DIALOG_EXPORT_ODBPP::DIALOG_EXPORT_ODBPP(), DIALOG_EXPORT_ODBPP::DIALOG_EXPORT_ODBPP(), DIALOG_EXPORT_STEP::DIALOG_EXPORT_STEP(), DIALOG_EXPORT_VRML::DIALOG_EXPORT_VRML(), DIALOG_FOOTPRINT_CHECKER::DIALOG_FOOTPRINT_CHECKER(), DIALOG_FOOTPRINT_PROPERTIES::DIALOG_FOOTPRINT_PROPERTIES(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR(), DIALOG_FOOTPRINT_WIZARD_LIST::DIALOG_FOOTPRINT_WIZARD_LIST(), DIALOG_FP_EDIT_PAD_TABLE::DIALOG_FP_EDIT_PAD_TABLE(), DIALOG_GENCAD_EXPORT_OPTIONS::DIALOG_GENCAD_EXPORT_OPTIONS(), DIALOG_GENDRILL::DIALOG_GENDRILL(), DIALOG_GENDRILL::DIALOG_GENDRILL(), DIALOG_GIT_REPOSITORY::DIALOG_GIT_REPOSITORY(), DIALOG_GIT_SWITCH::DIALOG_GIT_SWITCH(), DIALOG_GLOBAL_EDIT_TEARDROPS::DIALOG_GLOBAL_EDIT_TEARDROPS(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS(), DIALOG_GRID_SETTINGS::DIALOG_GRID_SETTINGS(), DIALOG_GROUP_PROPERTIES::DIALOG_GROUP_PROPERTIES(), DIALOG_IBIS_PARSER_REPORTER::DIALOG_IBIS_PARSER_REPORTER(), DIALOG_IMAGE_PROPERTIES::DIALOG_IMAGE_PROPERTIES(), DIALOG_IMPORT_CHOOSE_PROJECT::DIALOG_IMPORT_CHOOSE_PROJECT(), DIALOG_IMPORT_NETLIST::DIALOG_IMPORT_NETLIST(), DIALOG_IMPORT_SYMBOL_SELECT::DIALOG_IMPORT_SYMBOL_SELECT(), DIALOG_INSPECTOR::DIALOG_INSPECTOR(), DIALOG_JOBSET_RUN_LOG::DIALOG_JOBSET_RUN_LOG(), DIALOG_JUNCTION_PROPS::DIALOG_JUNCTION_PROPS(), DIALOG_LABEL_PROPERTIES::DIALOG_LABEL_PROPERTIES(), DIALOG_LIB_FIELDS_TABLE::DIALOG_LIB_FIELDS_TABLE(), DIALOG_LIB_NEW_SYMBOL::DIALOG_LIB_NEW_SYMBOL(), DIALOG_LINE_PROPERTIES::DIALOG_LINE_PROPERTIES(), DIALOG_LIST_HOTKEYS::DIALOG_LIST_HOTKEYS(), DIALOG_MANAGE_REPOSITORIES::DIALOG_MANAGE_REPOSITORIES(), DIALOG_MAP_LAYERS::DIALOG_MAP_LAYERS(), DIALOG_MOVE_EXACT::DIALOG_MOVE_EXACT(), DIALOG_MULTICHANNEL_GENERATE_RULE_AREAS::DIALOG_MULTICHANNEL_GENERATE_RULE_AREAS(), DIALOG_MULTICHANNEL_REPEAT_LAYOUT::DIALOG_MULTICHANNEL_REPEAT_LAYOUT(), DIALOG_NON_COPPER_ZONES_EDITOR::DIALOG_NON_COPPER_ZONES_EDITOR(), DIALOG_OFFSET_ITEM::DIALOG_OFFSET_ITEM(), DIALOG_OUTSET_ITEMS::DIALOG_OUTSET_ITEMS(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), DIALOG_PASTE_SPECIAL::DIALOG_PASTE_SPECIAL(), DIALOG_PCM::DIALOG_PCM(), DIALOG_PLOT_SCHEMATIC::DIALOG_PLOT_SCHEMATIC(), DIALOG_PNS_SETTINGS::DIALOG_PNS_SETTINGS(), DIALOG_POSITION_RELATIVE::DIALOG_POSITION_RELATIVE(), DIALOG_PRINT::DIALOG_PRINT(), DIALOG_PRINT_GENERIC::DIALOG_PRINT_GENERIC(), DIALOG_PRINT_PCBNEW::DIALOG_PRINT_PCBNEW(), DIALOG_PUSH_PAD_PROPERTIES::DIALOG_PUSH_PAD_PROPERTIES(), DIALOG_REFERENCE_IMAGE_PROPERTIES::DIALOG_REFERENCE_IMAGE_PROPERTIES(), DIALOG_REGULATOR_FORM::DIALOG_REGULATOR_FORM(), DIALOG_REMOTE_SYMBOL_CONFIG::DIALOG_REMOTE_SYMBOL_CONFIG(), DIALOG_RULE_AREA_PROPERTIES::DIALOG_RULE_AREA_PROPERTIES(), DIALOG_SCH_IMPORT_SETTINGS::DIALOG_SCH_IMPORT_SETTINGS(), DIALOG_SCHEMATIC_SETUP::DIALOG_SCHEMATIC_SETUP(), DIALOG_SELECT_3DMODEL::DIALOG_SELECT_3DMODEL(), DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), DIALOG_SHEET_PIN_PROPERTIES::DIALOG_SHEET_PIN_PROPERTIES(), DIALOG_SHEET_PROPERTIES::DIALOG_SHEET_PROPERTIES(), DIALOG_SWAP_LAYERS::DIALOG_SWAP_LAYERS(), DIALOG_SYMBOL_FIELDS_TABLE::DIALOG_SYMBOL_FIELDS_TABLE(), DIALOG_SYMBOL_PROPERTIES::DIALOG_SYMBOL_PROPERTIES(), DIALOG_SYNC_SHEET_PINS::DIALOG_SYNC_SHEET_PINS(), DIALOG_TABLE_PROPERTIES::DIALOG_TABLE_PROPERTIES(), DIALOG_TABLE_PROPERTIES::DIALOG_TABLE_PROPERTIES(), DIALOG_TABLECELL_PROPERTIES::DIALOG_TABLECELL_PROPERTIES(), DIALOG_TABLECELL_PROPERTIES::DIALOG_TABLECELL_PROPERTIES(), DIALOG_TARGET_PROPERTIES::DIALOG_TARGET_PROPERTIES(), DIALOG_TEMPLATE_SELECTOR::DIALOG_TEMPLATE_SELECTOR(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TEXTBOX_PROPERTIES::DIALOG_TEXTBOX_PROPERTIES(), DIALOG_TRACK_VIA_SIZE::DIALOG_TRACK_VIA_SIZE(), DIALOG_UNUSED_PAD_LAYERS::DIALOG_UNUSED_PAD_LAYERS(), DIALOG_UPDATE_FROM_PCB::DIALOG_UPDATE_FROM_PCB(), DIALOG_UPDATE_PCB::DIALOG_UPDATE_PCB(), DIALOG_UPDATE_SYMBOL_FIELDS::DIALOG_UPDATE_SYMBOL_FIELDS(), DIALOG_USER_DEFINED_SIGNALS::DIALOG_USER_DEFINED_SIGNALS(), DIALOG_WIRE_BUS_PROPERTIES::DIALOG_WIRE_BUS_PROPERTIES(), PAGED_DIALOG::finishInitialization(), RULE_EDITOR_DIALOG_BASE::finishInitialization(), DIALOG_PASTE_SPECIAL::HideClearNets(), DIALOG_FIELD_PROPERTIES::init(), DIALOG_EDIT_LIBRARY_TABLES::InstallPanel(), NETLIST_DIALOG_ADD_GENERATOR::NETLIST_DIALOG_ADD_GENERATOR(), NETLIST_VIEW_DIALOG::NETLIST_VIEW_DIALOG(), DIALOG_SIM_COMMAND::onInitDlg(), DIALOG_BARCODE_PROPERTIES::TransferDataToWindow(), DIALOG_BOARD_STATISTICS::TransferDataToWindow(), DIALOG_COLOR_PICKER::TransferDataToWindow(), DIALOG_FOOTPRINT_ASSOCIATIONS::TransferDataToWindow(), DIALOG_PIN_PROPERTIES::TransferDataToWindow(), DIALOG_TRACK_VIA_PROPERTIES::TransferDataToWindow(), WX_MULTI_ENTRY_DIALOG::WX_MULTI_ENTRY_DIALOG(), and WX_PT_ENTRY_DIALOG::WX_PT_ENTRY_DIALOG().

◆ finishInitialization()

void RULE_EDITOR_DIALOG_BASE::finishInitialization ( )
protectedinherited

Definition at line 230 of file rule_editor_dialog_base.cpp.

References DIALOG_SHIM::finishDialogSettings().

Referenced by TransferDataToWindow().

◆ generateKey()

std::string DIALOG_SHIM::generateKey ( const wxWindow * aWin) const
privateinherited

Definition at line 490 of file dialog_shim.cpp.

References index, and makeKey().

Referenced by LoadControlState(), and SaveControlState().

◆ GetContentPanel()

wxPanel * RULE_EDITOR_DIALOG_BASE::GetContentPanel ( )
inlineinherited

Retrieves the current content panel.

Returns
A pointer to the current content panel.

Definition at line 216 of file rule_editor_dialog_base.h.

References m_contentPanel.

◆ getControlValue()

wxVariant DIALOG_SHIM::getControlValue ( wxWindow * aCtrl)
privateinherited

Definition at line 1043 of file dialog_shim.cpp.

References grid.

Referenced by recordControlChange(), and registerUndoRedoHandlers().

◆ GetCurrentlySelectedRuleTreeItemData()

RULE_TREE_ITEM_DATA * RULE_EDITOR_DIALOG_BASE::GetCurrentlySelectedRuleTreeItemData ( )
inlineinherited

Retrieves the currently selected rule tree item data.

Returns
A pointer to the currently selected rule tree item data.

Definition at line 239 of file rule_editor_dialog_base.h.

References m_selectedData.

Referenced by DIALOG_DRC_RULE_EDITOR::RemoveRule(), and DIALOG_DRC_RULE_EDITOR::saveRule().

◆ GetDefaultRuleTreeItems()

std::vector< RULE_TREE_NODE > DIALOG_DRC_RULE_EDITOR::GetDefaultRuleTreeItems ( )
overridevirtual

Pure virtual method to get the default rule tree items.

Must be implemented by derived classes.

Returns
A vector of default RULE_TREE_NODE items.

Implements RULE_EDITOR_DIALOG_BASE.

Definition at line 143 of file dialog_drc_rule_editor.cpp.

References buildElectricalRuleTreeNodes(), buildFootprintsRuleTreeNodes(), buildHighspeedDesignRuleTreeNodes(), buildManufacturabilityRuleTreeNodes(), buildRuleTreeNodeData(), CATEGORY, CONSTRAINT, CUSTOM_RULE, m_nodeId, result, and ROOT.

Referenced by DIALOG_DRC_RULE_EDITOR().

◆ GetDialog()

RULE_EDITOR_DIALOG_BASE * RULE_EDITOR_DIALOG_BASE::GetDialog ( wxWindow * aWindow)
staticinherited

Static method to retrieve the rule editor dialog instance associated with a given window.

Parameters
aWindowThe window for which the dialog is being retrieved.
Returns
A pointer to the RULE_EDITOR_DIALOG_BASE instance, or nullptr if not found.

Definition at line 300 of file rule_editor_dialog_base.cpp.

References RULE_EDITOR_DIALOG_BASE().

◆ GetPreviouslySelectedRuleTreeItemId()

wxTreeItemId RULE_EDITOR_DIALOG_BASE::GetPreviouslySelectedRuleTreeItemId ( )
inlineinherited

Retrieves the previously selected rule tree item ID.

Returns
The ID of the previously selected rule tree item.

Definition at line 246 of file rule_editor_dialog_base.h.

References m_previousId.

◆ getRuleTreeChildNodes()

void RULE_EDITOR_DIALOG_BASE::getRuleTreeChildNodes ( const std::vector< RULE_TREE_NODE > & aNodes,
int aParentId,
std::vector< RULE_TREE_NODE > & aResult )
privateinherited

Retrieves child nodes of a given parent node.

Parameters
aNodesList of all nodes.
aParentIdThe parent node ID.
aResultA vector to store child nodes.

Definition at line 958 of file rule_editor_dialog_base.cpp.

Referenced by DIALOG_DRC_RULE_EDITOR::collectChildRuleNodes(), InitRuleTreeItems(), and populateRuleTreeCtrl().

◆ GetRuleTreeCtrl()

wxTreeCtrl * RULE_EDITOR_DIALOG_BASE::GetRuleTreeCtrl ( )
inlineinherited

Gets the tree control used for displaying and managing rules.

Returns
A pointer to the wxTreeCtrl instance.

Definition at line 128 of file rule_editor_dialog_base.h.

References m_ruleTreeCtrl.

◆ getRuleTreeNodeInfo()

RULE_TREE_NODE * DIALOG_DRC_RULE_EDITOR::getRuleTreeNodeInfo ( const int & aNodeId)
private

Retrieves the rule tree node for a given ID.

Returns a pointer to the node if found, or nullptr if not.

Parameters
aNodeIdThe node ID to search for.
Returns
A pointer to the node, or nullptr if not found.

Definition at line 851 of file dialog_drc_rule_editor.cpp.

References m_ruleTreeNodeDatas.

Referenced by AddNewRule(), buildRuleTreeNode(), collectChildRuleNodes(), DuplicateRule(), isEnabled(), RemoveRule(), RuleTreeItemSelectionChanged(), and UpdateRuleTypeTreeItemData().

◆ GetType()

HOLDER_TYPE KIWAY_HOLDER::GetType ( ) const
inlineinherited

◆ GetUserUnits()

◆ HasKiway()

bool KIWAY_HOLDER::HasKiway ( ) const
inlineinherited

Safety check before asking for the Kiway reference.

Returns
true if kiway is non-null

Definition at line 65 of file kiway_holder.h.

References m_kiway.

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

◆ highlightMatchingItems()

int DIALOG_DRC_RULE_EDITOR::highlightMatchingItems ( int aNodeId)
private

Highlights board items matching the current rule condition.

Parameters
aNodeIdThe ID of the rule node (currently unused).
Returns
The number of matching items, or -1 if the condition has a syntax error.

Definition at line 899 of file dialog_drc_rule_editor.cpp.

References ASSERTION_CONSTRAINT, DRC_RULE_CONDITION::Compile(), m_drcTool, m_frame, m_reporter, m_ruleEditorPanel, PCB_GENERATOR_T, PCB_GROUP_T, PCB_NETINFO_T, ACTIONS::selectionClear, ACTIONS::selectItems, and ACTIONS::zoomFitSelection.

Referenced by RuleTreeItemSelectionChanged().

◆ horizPixelsFromDU()

int DIALOG_SHIM::horizPixelsFromDU ( int x) const
protectedinherited

Convert an integer number of dialog units to pixels, horizontally.

See SetSizeInDU or wxDialog documentation for more information.

Definition at line 311 of file dialog_shim.cpp.

Referenced by DIALOG_LIB_FIELDS_TABLE::DIALOG_LIB_FIELDS_TABLE(), and DIALOG_SYMBOL_FIELDS_TABLE::DIALOG_SYMBOL_FIELDS_TABLE().

◆ InitRuleTreeItems()

void RULE_EDITOR_DIALOG_BASE::InitRuleTreeItems ( const std::vector< RULE_TREE_NODE > & aRuleTreeNodes)
inherited

Initializes the rule tree by adding nodes, setting up the structure, and saving its state.

Parameters
aRuleTreeNodesA vector of rule tree nodes with their IDs, names, and child nodes.

Definition at line 315 of file rule_editor_dialog_base.cpp.

References getRuleTreeChildNodes(), m_defaultTreeItems, m_ruleTreeCtrl, m_treeHistoryData, populateRuleTreeCtrl(), and saveRuleTreeState().

Referenced by DIALOG_DRC_RULE_EDITOR::DIALOG_DRC_RULE_EDITOR().

◆ IsCancelled()

bool PROGRESS_REPORTER_BASE::IsCancelled ( ) const
inlineoverridevirtualinherited

Implements PROGRESS_REPORTER.

Definition at line 108 of file progress_reporter_base.h.

References m_cancelled.

◆ IsCtrl()

static bool DIALOG_SHIM::IsCtrl ( int aChar,
const wxKeyEvent & e )
inlinestaticinherited

Definition at line 127 of file dialog_shim.h.

◆ isEnabled()

bool DIALOG_DRC_RULE_EDITOR::isEnabled ( RULE_TREE_ITEM_DATA * aRuleTreeItemData,
RULE_EDITOR_TREE_CONTEXT_OPT aOption )
overridevirtual

Verifies if a context menu option should be enabled based on the rule tree item type.

Parameters
aRuleTreeItemDataThe data of the rule tree item.
aOptionThe context menu option to verify.
Returns
true if the option should be enabled, false otherwise.

Implements RULE_EDITOR_DIALOG_BASE.

Definition at line 466 of file dialog_drc_rule_editor.cpp.

References ADD_RULE, CONSTRAINT, DELETE_RULE, DUPLICATE_RULE, RULE_TREE_ITEM_DATA::GetNodeId(), getRuleTreeNodeInfo(), RULE_TREE_NODE::m_nodeType, MOVE_DOWN, MOVE_UP, and RULE.

◆ IsQuasiModal()

◆ IsShiftCtrl()

static bool DIALOG_SHIM::IsShiftCtrl ( int aChar,
const wxKeyEvent & e )
inlinestaticinherited

Definition at line 133 of file dialog_shim.h.

◆ KeepRefreshing()

bool PROGRESS_REPORTER_BASE::KeepRefreshing ( bool aWait = false)
overridevirtualinherited

Update the UI dialog.

Warning
This should only be called from the main thread.
Returns
false if the user clicked Cancel.

Implements PROGRESS_REPORTER.

Definition at line 113 of file progress_reporter_base.cpp.

References m_cancelled, m_maxProgress, m_progress, and updateUI().

Referenced by SCH_EDIT_FRAME::importFile(), and SCH_EDIT_FRAME::OpenProjectFiles().

◆ Kiway()

KIWAY & KIWAY_HOLDER::Kiway ( ) const
inlineinherited

Return 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 55 of file kiway_holder.h.

References m_kiway.

Referenced by PROJECT_TREE_ITEM::Activate(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), IMPORT_PROJ_HELPER::addLocalLibraries(), SYMBOL_EDITOR_CONTROL::AddSymbolToSchematic(), CVPCB_MAINFRAME::BuildLibrariesList(), KICAD_MANAGER_FRAME::CloseProject(), EDA_BASE_FRAME::CommonSettingsChanged(), KIWAY_PLAYER::Destroy(), DIALOG_IMPORT_SYMBOL_SELECT::DIALOG_IMPORT_SYMBOL_SELECT(), DIALOG_LIST_HOTKEYS::DIALOG_LIST_HOTKEYS(), DIALOG_RESCUE_EACH::DIALOG_RESCUE_EACH(), DIALOG_SHIM::DIALOG_SHIM(), EDA_BASE_FRAME::doAutoSave(), KICAD_MANAGER_FRAME::doReCreateMenuBar(), BOARD_EDITOR_CONTROL::EditFpInFpEditor(), SCH_EDITOR_CONTROL::EditWithSymbolEditor(), EDA_DRAW_FRAME::IsScriptingConsoleVisible(), KICAD_MANAGER_FRAME::language_change(), KIWAY_PLAYER::language_change(), DIALOG_CHANGE_SYMBOLS::launchMatchIdSymbolBrowser(), DIALOG_CHANGE_SYMBOLS::launchNewIdSymbolBrowser(), KICAD_MANAGER_FRAME::LoadProject(), PGM_SINGLE_TOP::MacOpenFile(), SIMULATOR_FRAME::onExit(), KICAD_MANAGER_FRAME::OnIdle(), EDA_3D_CANVAS::OnLeftDown(), KIGFX::WX_VIEW_CONTROLS::onMotion(), DIALOG_SYMBOL_REMAP::OnRemapSymbols(), DIALOG_FIELD_PROPERTIES::OnTextValueSelectButtonClick(), PCB_DESIGN_BLOCK_PREVIEW_WIDGET::PCB_DESIGN_BLOCK_PREVIEW_WIDGET(), Prj(), KICAD_MANAGER_FRAME::ProjectChanged(), KICAD_MANAGER_FRAME::RestoreCommitFromHistory(), KICAD_MANAGER_FRAME::RestoreLocalHistory(), SCH_INSPECTION_TOOL::RunSimulation(), CVPCB_MAINFRAME::SaveFootprintAssociation(), EDA_DRAW_FRAME::ScriptingConsoleEnableDisable(), CVPCB_MAINFRAME::SendComponentSelectionToSch(), BOARD_EDITOR_CONTROL::ShowEeschema(), CVPCB_CONTROL::ShowFootprintViewer(), showFrame(), EDA_BASE_FRAME::ShowPreferences(), SCH_EDITOR_CONTROL::SimProbe(), SCH_EDITOR_CONTROL::SimTune(), KICAD_MANAGER_FRAME::UnarchiveFiles(), DIALOG_EXCHANGE_FOOTPRINTS::ViewAndSelectFootprint(), and DIALOG_SHIM::~DIALOG_SHIM().

◆ LoadControlState()

void DIALOG_SHIM::LoadControlState ( )
inherited

Load persisted control values from the current project's local settings.

Controls may opt out by setting the boolean window property "persist" to false. Dialog geometry is stored under the special key "__geometry".

Definition at line 642 of file dialog_shim.cpp.

References generateKey(), PGM_BASE::GetCommonSettings(), getDialogKeyFromTitle(), grid, index, COMMON_SETTINGS::m_dialogControlValues, m_hash_key, m_unitBinders, Pgm(), and PROPERTY_HOLDER::SafeCast().

Referenced by onInitDialog().

◆ LoadExistingRules()

◆ moveRuleTreeItemChildrensTooOnDrag()

void RULE_EDITOR_DIALOG_BASE::moveRuleTreeItemChildrensTooOnDrag ( wxTreeItemId aSrcTreeItemId,
wxTreeItemId aDestTreeItemId )
privateinherited

Recursively moves all child nodes of a source item to a destination during drag.

Parameters
aSrcTreeItemIdSource item ID.
aDestTreeItemIdDestination item ID.

Definition at line 976 of file rule_editor_dialog_base.cpp.

References m_ruleTreeCtrl, moveRuleTreeItemChildrensTooOnDrag(), RULE_TREE_ITEM_DATA::SetParentTreeItemId(), and RULE_TREE_ITEM_DATA::SetTreeItemId().

Referenced by moveRuleTreeItemChildrensTooOnDrag(), onMoveDownRuleOptionClick(), onMoveUpRuleOptionClick(), and onRuleTreeItemLeftUp().

◆ OnButton()

void DIALOG_SHIM::OnButton ( wxCommandEvent & aEvent)
privateinherited

Properly handle the default button events when in the quasimodal mode when not calling EndQuasiModal which is possible with any dialog derived from DIALOG_SHIM.

Definition at line 1435 of file dialog_shim.cpp.

References EndQuasiModal(), ignore_unused(), and IsQuasiModal().

Referenced by DIALOG_SHIM(), and ~DIALOG_SHIM().

◆ OnCancel()

void DIALOG_DRC_RULE_EDITOR::OnCancel ( wxCommandEvent & aEvent)
overridevirtual

Implements RULE_EDITOR_DIALOG_BASE.

Definition at line 426 of file dialog_drc_rule_editor.cpp.

References m_ruleEditorPanel.

◆ OnCharHook()

◆ onChildSetFocus()

void DIALOG_SHIM::onChildSetFocus ( wxFocusEvent & aEvent)
privateinherited

Definition at line 1471 of file dialog_shim.cpp.

References m_beforeEditValues, and m_isClosing.

Referenced by SelectAllInTextCtrls(), and ~DIALOG_SHIM().

◆ onClose()

void RULE_EDITOR_DIALOG_BASE::onClose ( wxCloseEvent & aEvt)
privateinherited

◆ OnCloseWindow()

void DIALOG_SHIM::OnCloseWindow ( wxCloseEvent & aEvent)
privateinherited

Properly handle the wxCloseEvent when in the quasimodal mode when not calling EndQuasiModal which is possible with any dialog derived from DIALOG_SHIM.

Definition at line 1417 of file dialog_shim.cpp.

References APP_MONITOR::AddNavigationBreadcrumb(), EndQuasiModal(), IsQuasiModal(), and SaveControlState().

Referenced by DIALOG_SHIM(), and ~DIALOG_SHIM().

◆ onCommandEvent()

void DIALOG_SHIM::onCommandEvent ( wxCommandEvent & aEvent)
privateinherited

Definition at line 983 of file dialog_shim.cpp.

References m_handlingUndoRedo, and recordControlChange().

Referenced by registerUndoRedoHandlers(), and ~DIALOG_SHIM().

◆ onDataViewListChanged()

void DIALOG_SHIM::onDataViewListChanged ( wxDataViewEvent & aEvent)
privateinherited

Definition at line 1035 of file dialog_shim.cpp.

References m_handlingUndoRedo, and recordControlChange().

Referenced by registerUndoRedoHandlers(), and ~DIALOG_SHIM().

◆ onDeleteRuleOptionClick()

void RULE_EDITOR_DIALOG_BASE::onDeleteRuleOptionClick ( wxCommandEvent & aEvent)
privateinherited

Deletes the selected rule when "Delete Rule" is clicked.

Parameters
aEventThe command event triggered by the click.

Definition at line 543 of file rule_editor_dialog_base.cpp.

References m_selectedData, and RemoveRule().

Referenced by onRuleTreeItemRightClick(), RULE_EDITOR_DIALOG_BASE(), and ~RULE_EDITOR_DIALOG_BASE().

◆ onDuplicateRuleOptionClick()

void RULE_EDITOR_DIALOG_BASE::onDuplicateRuleOptionClick ( wxCommandEvent & aEvent)
privateinherited

Duplicates the selected rule when "Duplicate Rule" is clicked.

Parameters
aEventThe command event triggered by the click.

Definition at line 537 of file rule_editor_dialog_base.cpp.

References DuplicateRule(), and m_selectedData.

Referenced by onRuleTreeItemRightClick(), RULE_EDITOR_DIALOG_BASE(), and ~RULE_EDITOR_DIALOG_BASE().

◆ onFilterSearch()

void RULE_EDITOR_DIALOG_BASE::onFilterSearch ( wxCommandEvent & aEvent)
privateinherited

Applies filter to the rule tree based on the search string.

Parameters
aEventThe command event containing the filter string.

Definition at line 834 of file rule_editor_dialog_base.cpp.

References filterRuleTree(), m_defaultTreeItems, m_ruleTreeCtrl, and restoreRuleTree().

Referenced by RULE_EDITOR_DIALOG_BASE(), and ~RULE_EDITOR_DIALOG_BASE().

◆ onGridCellChanged()

void DIALOG_SHIM::onGridCellChanged ( wxGridEvent & aEvent)
privateinherited

Definition at line 1019 of file dialog_shim.cpp.

References m_handlingUndoRedo, and recordControlChange().

Referenced by registerUndoRedoHandlers(), and ~DIALOG_SHIM().

◆ onInitDialog()

void DIALOG_SHIM::onInitDialog ( wxInitDialogEvent & aEvent)
privateinherited

Definition at line 286 of file dialog_shim.cpp.

References LoadControlState().

Referenced by DIALOG_SHIM(), and ~DIALOG_SHIM().

◆ OnModify()

void DIALOG_SHIM::OnModify ( )
inherited

Definition at line 1277 of file dialog_shim.cpp.

Referenced by DIALOG_LIB_SYMBOL_PROPERTIES::OnAddBodyStyle(), DIALOG_FOOTPRINT_PROPERTIES::OnAddField(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::OnAddField(), DIALOG_LIB_FIELDS_TABLE::OnAddField(), DIALOG_LIB_SYMBOL_PROPERTIES::OnAddField(), DIALOG_SYMBOL_FIELDS_TABLE::OnAddField(), DIALOG_SYMBOL_PROPERTIES::OnAddField(), DIALOG_LIB_SYMBOL_PROPERTIES::OnAddFootprintFilter(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::onAddGroup(), DIALOG_LIB_SYMBOL_PROPERTIES::OnAddJumperGroup(), DIALOG_LIB_SYMBOL_PROPERTIES::OnBodyStyleMoveDown(), DIALOG_LIB_SYMBOL_PROPERTIES::OnBodyStyleMoveUp(), DIALOG_FOOTPRINT_PROPERTIES::OnCheckBox(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::OnCheckBox(), DIALOG_LIB_SYMBOL_PROPERTIES::OnCheckBox(), DIALOG_SYMBOL_PROPERTIES::OnCheckBox(), DIALOG_FOOTPRINT_PROPERTIES::OnChoice(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::OnChoice(), DIALOG_FOOTPRINT_PROPERTIES::OnCombobox(), DIALOG_LIB_SYMBOL_PROPERTIES::OnCombobox(), DIALOG_PAD_PROPERTIES::onCornerRadiusChange(), DIALOG_PAD_PROPERTIES::onCornerSizePercentChange(), DIALOG_LIB_SYMBOL_PROPERTIES::OnDeleteBodyStyle(), DIALOG_FOOTPRINT_PROPERTIES::OnDeleteField(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::OnDeleteField(), DIALOG_LIB_SYMBOL_PROPERTIES::OnDeleteField(), DIALOG_SYMBOL_PROPERTIES::OnDeleteField(), DIALOG_PAD_PROPERTIES::OnDrillShapeSelected(), DIALOG_LIB_SYMBOL_PROPERTIES::OnEditFootprintFilter(), DIALOG_LIB_SYMBOL_PROPERTIES::OnEditSpiceModel(), DIALOG_SYMBOL_PROPERTIES::OnEditSpiceModel(), DIALOG_LIB_SYMBOL_PROPERTIES::OnGridCellChanged(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::onLayerGridRowAddUserLayer(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::onLayerGridRowDelete(), DIALOG_PAD_PROPERTIES::onModify(), DIALOG_PAD_PROPERTIES::onModify(), DIALOG_LIB_SYMBOL_PROPERTIES::OnMoveDown(), DIALOG_SYMBOL_PROPERTIES::OnMoveDown(), DIALOG_LIB_SYMBOL_PROPERTIES::OnMoveUp(), DIALOG_SYMBOL_PROPERTIES::OnMoveUp(), DIALOG_PAD_PROPERTIES::OnPadShapeSelection(), DIALOG_SYMBOL_PROPERTIES::OnPinTableCellEdited(), DIALOG_LIB_SYMBOL_PROPERTIES::onPowerCheckBox(), DIALOG_LIB_FIELDS_TABLE::OnRemoveField(), DIALOG_SYMBOL_FIELDS_TABLE::OnRemoveField(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::onRemoveGroup(), DIALOG_LIB_SYMBOL_PROPERTIES::OnRemoveJumperGroup(), DIALOG_LIB_FIELDS_TABLE::OnRenameField(), DIALOG_SYMBOL_FIELDS_TABLE::OnRenameField(), DIALOG_PAD_PROPERTIES::OnSetCopperLayers(), DIALOG_PAD_PROPERTIES::OnSetLayers(), DIALOG_LIB_SYMBOL_PROPERTIES::OnSymbolNameText(), DIALOG_LIB_FIELDS_TABLE::OnTableValueChanged(), DIALOG_FOOTPRINT_PROPERTIES::OnText(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::OnText(), DIALOG_LIB_SYMBOL_PROPERTIES::OnText(), DIALOG_BARCODE_PROPERTIES::OnTextValueChanged(), DIALOG_SYMBOL_PROPERTIES::OnUnitChoice(), DIALOG_LIB_SYMBOL_PROPERTIES::OnUnitSpinCtrl(), DIALOG_LIB_SYMBOL_PROPERTIES::OnUnitSpinCtrlEnter(), DIALOG_LIB_SYMBOL_PROPERTIES::OnUnitSpinCtrlKillFocus(), DIALOG_BARCODE_PROPERTIES::OnValuesChanged(), DIALOG_PAD_PROPERTIES::OnValuesChanged(), DIALOG_LIB_FIELDS_TABLE::OnViewControlsCellChanged(), DIALOG_SYMBOL_FIELDS_TABLE::OnViewControlsCellChanged(), DIALOG_PAD_PROPERTIES::PadOrientEvent(), DIALOG_PAD_PROPERTIES::PadTypeSelected(), DIALOG_LIB_FIELDS_TABLE::ShowHideColumn(), and DIALOG_SYMBOL_FIELDS_TABLE::ShowHideColumn().

◆ OnMove()

void DIALOG_SHIM::OnMove ( wxMoveEvent & aEvent)
privateinherited

◆ onMoveDownRuleOptionClick()

void RULE_EDITOR_DIALOG_BASE::onMoveDownRuleOptionClick ( wxCommandEvent & aEvent)
privateinherited

Moves a rule item down in the tree when "Move Down" is clicked.

Parameters
aEventThe command event triggered by the click.

Definition at line 610 of file rule_editor_dialog_base.cpp.

References RULE_TREE_ITEM_DATA::GetNodeId(), m_enableMoveDown, m_ruleTreeCtrl, moveRuleTreeItemChildrensTooOnDrag(), next(), saveRuleTreeState(), and RULE_TREE_ITEM_DATA::SetTreeItemId().

Referenced by onRuleTreeItemRightClick(), RULE_EDITOR_DIALOG_BASE(), and ~RULE_EDITOR_DIALOG_BASE().

◆ onMoveUpRuleOptionClick()

void RULE_EDITOR_DIALOG_BASE::onMoveUpRuleOptionClick ( wxCommandEvent & aEvent)
privateinherited

Moves a rule item up in the tree when "Move Up" is clicked.

Parameters
aEventThe command event triggered by the click.

Definition at line 549 of file rule_editor_dialog_base.cpp.

References RULE_TREE_ITEM_DATA::GetNodeId(), m_enableMoveUp, m_ruleTreeCtrl, moveRuleTreeItemChildrensTooOnDrag(), saveRuleTreeState(), and RULE_TREE_ITEM_DATA::SetTreeItemId().

Referenced by onRuleTreeItemRightClick(), RULE_EDITOR_DIALOG_BASE(), and ~RULE_EDITOR_DIALOG_BASE().

◆ onNewRuleOptionClick()

void RULE_EDITOR_DIALOG_BASE::onNewRuleOptionClick ( wxCommandEvent & aEvent)
privateinherited

Creates a new rule when the "New Rule" option is clicked.

Parameters
aEventThe command event triggered by the click.

Definition at line 531 of file rule_editor_dialog_base.cpp.

References AddNewRule(), and m_selectedData.

Referenced by onRuleTreeItemRightClick(), RULE_EDITOR_DIALOG_BASE(), and ~RULE_EDITOR_DIALOG_BASE().

◆ OnPaint()

void DIALOG_SHIM::OnPaint ( wxPaintEvent & event)
inherited

◆ onPropertyGridChanged()

void DIALOG_SHIM::onPropertyGridChanged ( wxPropertyGridEvent & aEvent)
privateinherited

Definition at line 1027 of file dialog_shim.cpp.

References m_handlingUndoRedo, and recordControlChange().

Referenced by registerUndoRedoHandlers(), and ~DIALOG_SHIM().

◆ onResize()

void RULE_EDITOR_DIALOG_BASE::onResize ( wxSizeEvent & event)
privateinherited

◆ onRuleTreeItemActivated()

void RULE_EDITOR_DIALOG_BASE::onRuleTreeItemActivated ( wxTreeEvent & aEvent)
privateinherited

Handles double-click activation of a tree item.

Creates a new rule of the activated type when appropriate.

Definition at line 518 of file rule_editor_dialog_base.cpp.

References ADD_RULE, AddNewRule(), isEnabled(), and m_ruleTreeCtrl.

Referenced by RULE_EDITOR_DIALOG_BASE(), and ~RULE_EDITOR_DIALOG_BASE().

◆ onRuleTreeItemLeftDown()

void RULE_EDITOR_DIALOG_BASE::onRuleTreeItemLeftDown ( wxMouseEvent & aEvent)
privateinherited

Initiates drag operation for a tree item on mouse down.

Parameters
aEventThe mouse down event.

Definition at line 663 of file rule_editor_dialog_base.cpp.

References m_draggedItem, m_dragImage, m_isDragging, m_ruleTreeCtrl, and text.

Referenced by RULE_EDITOR_DIALOG_BASE(), and ~RULE_EDITOR_DIALOG_BASE().

◆ onRuleTreeItemLeftUp()

void RULE_EDITOR_DIALOG_BASE::onRuleTreeItemLeftUp ( wxMouseEvent & aEvent)
privateinherited

Completes the drag operation on mouse release.

Parameters
aEventThe mouse release event.

Definition at line 727 of file rule_editor_dialog_base.cpp.

References RULE_TREE_ITEM_DATA::GetNodeId(), m_draggedItem, m_dragImage, m_isDragging, m_ruleTreeCtrl, moveRuleTreeItemChildrensTooOnDrag(), saveRuleTreeState(), and RULE_TREE_ITEM_DATA::SetTreeItemId().

Referenced by RULE_EDITOR_DIALOG_BASE(), and ~RULE_EDITOR_DIALOG_BASE().

◆ onRuleTreeItemMouseMotion()

void RULE_EDITOR_DIALOG_BASE::onRuleTreeItemMouseMotion ( wxMouseEvent & aEvent)
privateinherited

Handles drag motion to move the item along with the cursor.

Parameters
aEventThe mouse motion event during drag.

Definition at line 699 of file rule_editor_dialog_base.cpp.

References m_draggedItem, m_dragImage, m_isDragging, and m_ruleTreeCtrl.

Referenced by RULE_EDITOR_DIALOG_BASE(), and ~RULE_EDITOR_DIALOG_BASE().

◆ onRuleTreeItemRightClick()

void RULE_EDITOR_DIALOG_BASE::onRuleTreeItemRightClick ( wxTreeEvent & aEvent)
privateinherited

◆ onRuleTreeItemSelectionChanged()

void RULE_EDITOR_DIALOG_BASE::onRuleTreeItemSelectionChanged ( wxTreeEvent & aEvent)
privateinherited

Updates action buttons based on the selected tree item.

Parameters
aEventThe selection change event.

Definition at line 489 of file rule_editor_dialog_base.cpp.

References RULE_TREE_ITEM_DATA::GetNodeId(), m_previousId, m_ruleTreeCtrl, m_selectedData, RuleTreeItemSelectionChanged(), and updateRuleTreeActionButtonsState().

Referenced by RULE_EDITOR_DIALOG_BASE(), and ~RULE_EDITOR_DIALOG_BASE().

◆ OnSave()

void DIALOG_DRC_RULE_EDITOR::OnSave ( wxCommandEvent & aEvent)
overridevirtual

Implements RULE_EDITOR_DIALOG_BASE.

Definition at line 419 of file dialog_drc_rule_editor.cpp.

References m_ruleEditorPanel.

◆ OnSize()

void DIALOG_SHIM::OnSize ( wxSizeEvent & aEvent)
privateinherited

Definition at line 444 of file dialog_shim.cpp.

References m_userResized.

Referenced by DIALOG_SHIM(), and ~DIALOG_SHIM().

◆ onSpinDoubleEvent()

void DIALOG_SHIM::onSpinDoubleEvent ( wxSpinDoubleEvent & aEvent)
privateinherited

Definition at line 1001 of file dialog_shim.cpp.

References m_handlingUndoRedo, and recordControlChange().

Referenced by registerUndoRedoHandlers(), and ~DIALOG_SHIM().

◆ onSpinEvent()

void DIALOG_SHIM::onSpinEvent ( wxSpinEvent & aEvent)
privateinherited

Definition at line 992 of file dialog_shim.cpp.

References m_handlingUndoRedo, and recordControlChange().

Referenced by registerUndoRedoHandlers(), and ~DIALOG_SHIM().

◆ onStyledTextChanged()

void DIALOG_SHIM::onStyledTextChanged ( wxStyledTextEvent & aEvent)
privateinherited

Definition at line 1010 of file dialog_shim.cpp.

References m_handlingUndoRedo, and recordControlChange().

Referenced by registerUndoRedoHandlers(), and ~DIALOG_SHIM().

◆ OptOut()

◆ populateRuleTreeCtrl()

void RULE_EDITOR_DIALOG_BASE::populateRuleTreeCtrl ( const std::vector< RULE_TREE_NODE > & aRuleTreeNodes,
const RULE_TREE_NODE & aRuleTreeNode,
wxTreeItemId aParentTreeItemId )
privateinherited

Populates the rule tree with nodes and their children.

Parameters
aRuleTreeNodesAll rule tree nodes.
aRuleTreeNodeCurrent node to add.
aParentTreeItemIdParent item ID for the current node.

Definition at line 410 of file rule_editor_dialog_base.cpp.

References appendRuleTreeItem(), getRuleTreeChildNodes(), RULE_TREE_NODE::m_nodeId, m_ruleTreeCtrl, and populateRuleTreeCtrl().

Referenced by InitRuleTreeItems(), and populateRuleTreeCtrl().

◆ PrepareForModalSubDialog()

void DIALOG_SHIM::PrepareForModalSubDialog ( )
inherited

Definition at line 1371 of file dialog_shim.cpp.

References m_qmodal_parent_disabler.

◆ Prj()

PROJECT & KIWAY_HOLDER::Prj ( ) const
inherited

Return a reference to the PROJECT associated with this KIWAY.

Definition at line 36 of file kiway_holder.cpp.

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

Referenced by DESIGN_BLOCK_TREE_MODEL_ADAPTER::AddLibraries(), FP_TREE_MODEL_ADAPTER::AddLibraries(), SYMBOL_TREE_MODEL_ADAPTER::AddLibraries(), AskSaveBoardFileName(), DIALOG_SYMBOL_REMAP::backupProject(), CVPCB_MAINFRAME::buildEquivalenceList(), CVPCB_MAINFRAME::BuildLibrariesList(), PCB_BASE_FRAME::canCloseWindow(), SIMULATOR_FRAME::canCloseWindow(), KICAD_MANAGER_FRAME::CloseProject(), EDA_BASE_FRAME::CommonSettingsChanged(), DIALOG_GEN_FOOTPRINT_POSITION::CreateAsciiFiles(), DIALOG_GEN_FOOTPRINT_POSITION::CreateGerberFiles(), PCB_BASE_FRAME::CreateNewFootprint(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), DIALOG_ANNOTATE::DIALOG_ANNOTATE(), DIALOG_BOARD_REANNOTATE::DIALOG_BOARD_REANNOTATE(), DIALOG_BOARD_SETUP::DIALOG_BOARD_SETUP(), DIALOG_BOARD_STATISTICS::DIALOG_BOARD_STATISTICS(), DIALOG_CHANGE_SYMBOLS::DIALOG_CHANGE_SYMBOLS(), DIALOG_CONFIG_EQUFILES::DIALOG_CONFIG_EQUFILES(), DIALOG_DRC_RULE_EDITOR::DIALOG_DRC_RULE_EDITOR(), DIALOG_EXCHANGE_FOOTPRINTS::DIALOG_EXCHANGE_FOOTPRINTS(), DIALOG_GEN_FOOTPRINT_POSITION::DIALOG_GEN_FOOTPRINT_POSITION(), DIALOG_IBIS_PARSER_REPORTER::DIALOG_IBIS_PARSER_REPORTER(), DIALOG_IMPORT_NETLIST::DIALOG_IMPORT_NETLIST(), DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS(), DIALOG_PLOT::DIALOG_PLOT(), DIALOG_PLOT_SCHEMATIC::DIALOG_PLOT_SCHEMATIC(), DIALOG_SCHEMATIC_SETUP::DIALOG_SCHEMATIC_SETUP(), DIALOG_SIM_MODEL< T >::DIALOG_SIM_MODEL(), DIALOG_SYMBOL_FIELDS_TABLE::DIALOG_SYMBOL_FIELDS_TABLE(), DIALOG_SYMBOL_REMAP::DIALOG_SYMBOL_REMAP(), DIALOG_UPDATE_FROM_PCB::DIALOG_UPDATE_FROM_PCB(), DIALOG_UPDATE_PCB::DIALOG_UPDATE_PCB(), FOOTPRINT_PREVIEW_PANEL::DisplayFootprint(), CVPCB_MAINFRAME::DisplayStatus(), EDA_BASE_FRAME::doAutoSave(), KICAD_MANAGER_FRAME::doReCreateMenuBar(), DIALOG_GENDRILL::genDrillAndMapFiles(), DIALOG_TABLE_PROPERTIES::getContextualTextVars(), DIALOG_TABLECELL_PROPERTIES::getContextualTextVars(), DIALOG_TEXT_PROPERTIES::getContextualTextVars(), EDA_3D_VIEWER_FRAME::getExportFileName(), PCB_BASE_FRAME::GetLibraryItemsForListDialog(), SCH_BASE_FRAME::GetLibraryItemsForListDialog(), DIALOG_SYMBOL_REMAP::getLibsNotInGlobalSymbolLibTable(), SCH_BASE_FRAME::GetLibSymbol(), DIALOG_PLOT_SCHEMATIC::getOutputPath(), KICAD_MANAGER_FRAME::GetProjectFileName(), API_HANDLER_PCB::handleRevertDocument(), FIELDS_GRID_TABLE::initGrid(), PCB_BASE_FRAME::loadFootprint(), CVPCB_MAINFRAME::LoadFootprintFiles(), KICAD_MANAGER_FRAME::LoadProject(), SIMULATOR_FRAME::LoadSettings(), SIMULATOR_FRAME::LoadSimulator(), EDA_BASE_FRAME::LoadWindowState(), EDA_3D_VIEWER_FRAME::NewDisplay(), DIALOG_SIM_MODEL< T >::onBrowseButtonClick(), DIALOG_EXPORT_2581::onBrowseClicked(), DIALOG_EXPORT_ODBPP::onBrowseClicked(), DIALOG_EXPORT_STEP::onBrowseClicked(), DIALOG_GENCAD_EXPORT_OPTIONS::onBrowseClicked(), DIALOG_REMOTE_SYMBOL_CONFIG::onBrowseDestination(), DIALOG_IMPORT_NETLIST::onBrowseNetlistFiles(), DIALOG_EDIT_SYMBOLS_LIBID::onClickOrphansButton(), DIALOG_SYMBOL_FIELDS_TABLE::OnExport(), DIALOG_EXPORT_STEP::onExportButton(), PCB_BASE_FRAME::OnFpChangeDebounceTimer(), DIALOG_GENDRILL::onGenReportFile(), KICAD_MANAGER_FRAME::OnIdle(), DIALOG_CONFIG_EQUFILES::OnOkClick(), KICAD_MANAGER_FRAME::OnOpenFileInTextEditor(), DIALOG_PLOT::onOpenOutputDirectory(), DIALOG_GEN_FOOTPRINT_POSITION::onOutputDirectoryBrowseClicked(), DIALOG_GENDRILL::onOutputDirectoryBrowseClicked(), DIALOG_PLOT::onOutputDirectoryBrowseClicked(), DIALOG_PLOT_SCHEMATIC::onOutputDirectoryBrowseClicked(), DIALOG_SYMBOL_FIELDS_TABLE::OnOutputFileBrowseClicked(), DIALOG_BOARD_SETUP::onPageChanged(), DIALOG_SCHEMATIC_SETUP::onPageChanged(), DIALOG_SYMBOL_REMAP::OnRemapSymbols(), DIALOG_DRC::OnSaveReport(), DIALOG_ERC::OnSaveReport(), SCH_BASE_FRAME::OnSymChange(), PANEL_FOOTPRINT_CHOOSER::PANEL_FOOTPRINT_CHOOSER(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), EDA_DRAW_FRAME::PrintDrawingSheet(), KICAD_MANAGER_FRAME::PrintPrjInfo(), KICAD_MANAGER_FRAME::ProjectChanged(), CVPCB_MAINFRAME::readNetListAndFpFiles(), EDA_3D_VIEWER_FRAME::ReloadRequest(), SIMULATOR_FRAME::ReloadSimulator(), DIALOG_SYMBOL_REMAP::remapSymbolToLibTable(), KICAD_MANAGER_FRAME::RestoreCommitFromHistory(), KICAD_MANAGER_FRAME::RestoreLocalHistory(), SAVE_AS_DIALOG::SAVE_AS_DIALOG(), KICAD_MANAGER_FRAME::SaveOpenJobSetsToLocalSettings(), DIALOG_BOARD_STATISTICS::saveReportClicked(), EDA_BASE_FRAME::SaveSettings(), SIMULATOR_FRAME::SaveSettings(), SCH_BASE_FRAME::SelectLibrary(), PCB_BASE_FRAME::setFPWatcher(), GERBVIEW_FRAME::SetPageSettings(), SCH_BASE_FRAME::setSymWatcher(), DIALOG_LIB_FIELDS_TABLE::SetupColumnProperties(), DIALOG_SYMBOL_FIELDS_TABLE::SetupColumnProperties(), BOARD_EDITOR_CONTROL::ShowEeschema(), KICAD_MANAGER_FRAME::ToggleLocalHistory(), DIALOG_EDIT_SYMBOLS_LIBID::TransferDataFromWindow(), DIALOG_EXPORT_2581::TransferDataFromWindow(), DIALOG_EXPORT_NETLIST::TransferDataFromWindow(), DIALOG_SIM_MODEL< T >::TransferDataFromWindow(), DIALOG_EXPORT_2581::TransferDataToWindow(), KICAD_MANAGER_FRAME::UnarchiveFiles(), DIALOG_PAGES_SETTINGS::UpdateDrawingSheetExample(), SIMULATOR_FRAME::UpdateTitle(), DIALOG_FOOTPRINT_PROPERTIES::~DIALOG_FOOTPRINT_PROPERTIES(), and EDA_3D_VIEWER_FRAME::~EDA_3D_VIEWER_FRAME().

◆ recordControlChange()

void DIALOG_SHIM::recordControlChange ( wxWindow * aCtrl)
privateinherited

◆ registerUndoRedoHandlers()

void DIALOG_SHIM::registerUndoRedoHandlers ( wxWindowList & aChildren)
privateinherited

◆ RegisterUnitBinder()

void DIALOG_SHIM::RegisterUnitBinder ( UNIT_BINDER * aUnitBinder,
wxWindow * aWindow )
inherited

Register a UNIT_BINDER so that it can handle units in control-state save/restore.

Parameters
aUnitBinder
aWindowthe control window

Definition at line 809 of file dialog_shim.cpp.

References m_unitBinders.

◆ RemoveRule()

void DIALOG_DRC_RULE_EDITOR::RemoveRule ( int aNodeId)
overridevirtual

◆ Report()

void PROGRESS_REPORTER_BASE::Report ( const wxString & aMessage)
overridevirtualinherited

Display aMessage in the progress bar dialog.

Implements PROGRESS_REPORTER.

Reimplemented in BACKGROUND_JOB_REPORTER, DIALOG_ERC, and JOBS_PROGRESS_REPORTER.

Definition at line 64 of file progress_reporter_base.cpp.

References m_messageChanged, m_mutex, and m_rptMessage.

Referenced by AdvancePhase(), SCH_EDIT_FRAME::importFile(), and SCH_EDIT_FRAME::OpenProjectFiles().

◆ resetSize()

void DIALOG_SHIM::resetSize ( )
protectedinherited

Clear the existing dialog size and position.

This will cause the dialog size to be clear so the next time the dialog is shown the sizers will layout the dialog accordingly. This useful when there are dialog windows that size changes due to layout dependency hidden controls.

Definition at line 428 of file dialog_shim.cpp.

References getDialogKeyFromTitle(), m_hash_key, and Pgm().

Referenced by DIALOG_PAD_PROPERTIES::updatePadSizeControls().

◆ restoreRuleTree()

void RULE_EDITOR_DIALOG_BASE::restoreRuleTree ( const wxTreeItemId & aParent,
const int & aNodeId )
privateinherited

Restores a tree item from history and appends it under a parent.

Parameters
aParentThe parent item to append to.
aNodeIdThe node ID to restore.

Definition at line 909 of file rule_editor_dialog_base.cpp.

References m_ruleTreeCtrl, m_treeHistoryData, and restoreRuleTree().

Referenced by onFilterSearch(), and restoreRuleTree().

◆ RuleTreeItemSelectionChanged()

void DIALOG_DRC_RULE_EDITOR::RuleTreeItemSelectionChanged ( RULE_TREE_ITEM_DATA * aCurrentRuleTreeItemData)
overridevirtual

◆ SaveControlState()

void DIALOG_SHIM::SaveControlState ( )
inherited

Save control values and geometry to the current project's local settings.

Definition at line 532 of file dialog_shim.cpp.

References generateKey(), PGM_BASE::GetCommonSettings(), getDialogKeyFromTitle(), grid, index, COMMON_SETTINGS::m_dialogControlValues, m_hash_key, m_unitBinders, Pgm(), and PROPERTY_HOLDER::SafeCast().

Referenced by OnCloseWindow(), and Show().

◆ saveRule()

void DIALOG_DRC_RULE_EDITOR::saveRule ( int aNodeId)
private

Saves the rule after validating the rule editor panel.

Displays an error message if validation fails, otherwise updates the rule tree data.

Parameters
aNodeIdThe ID of the rule node to save.

Definition at line 868 of file dialog_drc_rule_editor.cpp.

References DisplayErrorMessage(), RULE_EDITOR_DIALOG_BASE::GetCurrentlySelectedRuleTreeItemData(), m_ruleEditorPanel, RULE_EDITOR_DIALOG_BASE::m_ruleTreeCtrl, SaveRulesToFile(), RULE_EDITOR_DIALOG_BASE::SetControlsEnabled(), and UpdateRuleTypeTreeItemData().

Referenced by RuleTreeItemSelectionChanged().

◆ SaveRulesToFile()

◆ saveRuleTreeState()

void RULE_EDITOR_DIALOG_BASE::saveRuleTreeState ( const wxTreeItemId & aItem,
const int & aNodeId = 0 )
privateinherited

Saves the state of a tree item to history.

Parameters
aItemThe item to save.
aNodeIdThe node ID (optional).

Definition at line 884 of file rule_editor_dialog_base.cpp.

References RULE_TREE_ITEM_DATA::GetNodeId(), m_ruleTreeCtrl, m_treeHistoryData, and saveRuleTreeState().

Referenced by InitRuleTreeItems(), onMoveDownRuleOptionClick(), onMoveUpRuleOptionClick(), onRuleTreeItemLeftUp(), and saveRuleTreeState().

◆ SelectAllInTextCtrls()

void DIALOG_SHIM::SelectAllInTextCtrls ( wxWindowList & children)
inherited

◆ SetContentPanel()

void RULE_EDITOR_DIALOG_BASE::SetContentPanel ( wxPanel * aContentPanel)
inherited

Replaces the current content panel with a new one based on the selected constraint type.

Parameters
aContentPanelThe new content panel to replace the existing one.

Definition at line 344 of file rule_editor_dialog_base.cpp.

References m_contentPanel, m_defaultSashPosition, m_splitter, and Refresh().

Referenced by DIALOG_DRC_RULE_EDITOR::RuleTreeItemSelectionChanged().

◆ SetControlsEnabled()

void RULE_EDITOR_DIALOG_BASE::SetControlsEnabled ( bool aEnable)
inherited

Enables or disables controls within the rule editor dialog.

Parameters
aEnabletrue to enable the controls, false to disable them.

Definition at line 391 of file rule_editor_dialog_base.cpp.

References _, m_cancelRuleButton, m_filterSearch, m_ruleTreeCtrl, m_selectedData, and updateRuleTreeActionButtonsState().

Referenced by DIALOG_DRC_RULE_EDITOR::closeRuleEntryView(), DIALOG_DRC_RULE_EDITOR::RemoveRule(), and DIALOG_DRC_RULE_EDITOR::saveRule().

◆ setControlValue()

void DIALOG_SHIM::setControlValue ( wxWindow * aCtrl,
const wxVariant & aValue )
privateinherited

Definition at line 1133 of file dialog_shim.cpp.

References grid.

Referenced by doRedo(), and doUndo().

◆ SetCurrentProgress()

void PROGRESS_REPORTER_BASE::SetCurrentProgress ( double aProgress)
overridevirtualinherited

◆ SetInitialFocus()

void DIALOG_SHIM::SetInitialFocus ( wxWindow * aWindow)
inlineinherited

Sets the window (usually a wxTextCtrl) that should be focused when the dialog is shown.

Definition at line 82 of file dialog_shim.h.

References m_initialFocusTarget.

Referenced by DIALOG_BOM::DIALOG_BOM(), DIALOG_CONFIGURE_PATHS::DIALOG_CONFIGURE_PATHS(), DIALOG_ENUM_PADS::DIALOG_ENUM_PADS(), DIALOG_FIND::DIALOG_FIND(), DIALOG_FOOTPRINT_PROPERTIES::DIALOG_FOOTPRINT_PROPERTIES(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR(), DIALOG_GET_FOOTPRINT_BY_NAME::DIALOG_GET_FOOTPRINT_BY_NAME(), DIALOG_GRID_SETTINGS::DIALOG_GRID_SETTINGS(), DIALOG_GROUP_PROPERTIES::DIALOG_GROUP_PROPERTIES(), DIALOG_IMPORT_GFX_SCH::DIALOG_IMPORT_GFX_SCH(), DIALOG_IMPORT_GRAPHICS::DIALOG_IMPORT_GRAPHICS(), DIALOG_IMPORT_SYMBOL_SELECT::DIALOG_IMPORT_SYMBOL_SELECT(), DIALOG_JUNCTION_PROPS::DIALOG_JUNCTION_PROPS(), DIALOG_LABEL_PROPERTIES::DIALOG_LABEL_PROPERTIES(), DIALOG_LIB_FIELDS_TABLE::DIALOG_LIB_FIELDS_TABLE(), DIALOG_LINE_PROPERTIES::DIALOG_LINE_PROPERTIES(), DIALOG_OFFSET_ITEM::DIALOG_OFFSET_ITEM(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), DIALOG_PIN_PROPERTIES::DIALOG_PIN_PROPERTIES(), DIALOG_PLUGIN_OPTIONS::DIALOG_PLUGIN_OPTIONS(), DIALOG_POSITION_RELATIVE::DIALOG_POSITION_RELATIVE(), DIALOG_REMOTE_SYMBOL_CONFIG::DIALOG_REMOTE_SYMBOL_CONFIG(), DIALOG_SCH_FIND::DIALOG_SCH_FIND(), DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), DIALOG_SHEET_PIN_PROPERTIES::DIALOG_SHEET_PIN_PROPERTIES(), DIALOG_SYMBOL_CHOOSER::DIALOG_SYMBOL_CHOOSER(), DIALOG_SYMBOL_FIELDS_TABLE::DIALOG_SYMBOL_FIELDS_TABLE(), DIALOG_TABLECELL_PROPERTIES::DIALOG_TABLECELL_PROPERTIES(), DIALOG_TABLECELL_PROPERTIES::DIALOG_TABLECELL_PROPERTIES(), DIALOG_TARGET_PROPERTIES::DIALOG_TARGET_PROPERTIES(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TEXTBOX_PROPERTIES::DIALOG_TEXTBOX_PROPERTIES(), DIALOG_TUNING_PATTERN_PROPERTIES::DIALOG_TUNING_PATTERN_PROPERTIES(), DIALOG_WIRE_BUS_PROPERTIES::DIALOG_WIRE_BUS_PROPERTIES(), EDA_VIEW_SWITCHER::EDA_VIEW_SWITCHER(), HK_PROMPT_DIALOG::HK_PROMPT_DIALOG(), SCH_EDITOR_CONTROL::IncrementAnnotations(), DIALOG_FIELD_PROPERTIES::init(), DIALOG_EXCHANGE_FOOTPRINTS::OnMatchAllClicked(), DIALOG_EXCHANGE_FOOTPRINTS::OnMatchIDClicked(), DIALOG_EXCHANGE_FOOTPRINTS::OnMatchRefClicked(), DIALOG_EXCHANGE_FOOTPRINTS::OnMatchSelectedClicked(), DIALOG_EXCHANGE_FOOTPRINTS::OnMatchValueClicked(), DIALOG_LABEL_PROPERTIES::onMultiLabelCheck(), SAVE_AS_DIALOG::SAVE_AS_DIALOG(), SAVE_SYMBOL_AS_DIALOG::SAVE_SYMBOL_AS_DIALOG(), DIALOG_NON_COPPER_ZONES_EDITOR::TransferDataToWindow(), DIALOG_RULE_AREA_PROPERTIES::TransferDataToWindow(), DIALOG_TRACK_VIA_PROPERTIES::TransferDataToWindow(), WX_PT_ENTRY_DIALOG::WX_PT_ENTRY_DIALOG(), WX_TEXT_ENTRY_DIALOG::WX_TEXT_ENTRY_DIALOG(), and WX_UNIT_ENTRY_DIALOG::WX_UNIT_ENTRY_DIALOG().

◆ SetKiway()

void KIWAY_HOLDER::SetKiway ( wxWindow * aDest,
KIWAY * aKiway )
inherited

It is only used for debugging, since "this" is not a wxWindow*.

"this" is a KIWAY_HOLDER mix-in.

Parameters
aDestis the recipient of aKiway pointer.
aKiwayis often from a parent window or from KIFACE::CreateKiWindow().

Definition at line 43 of file kiway_holder.cpp.

References ignore_unused(), m_kiway, and name.

Referenced by DIALOG_SHIM::DIALOG_SHIM(), InvokePcbLibTableEditor(), and InvokeSchEditSymbolLibTable().

◆ SetMaxProgress()

void PROGRESS_REPORTER_BASE::SetMaxProgress ( int aMaxProgress)
overridevirtualinherited

Fix the value that gives the 100 percent progress bar length (inside the current virtual zone).

Implements PROGRESS_REPORTER.

Definition at line 73 of file progress_reporter_base.cpp.

References m_maxProgress.

◆ SetModified()

void RULE_EDITOR_DIALOG_BASE::SetModified ( )
inlineinherited

Marks the dialog as modified, typically used to indicate unsaved changes.

Definition at line 133 of file rule_editor_dialog_base.h.

◆ SetNumPhases()

void PROGRESS_REPORTER_BASE::SetNumPhases ( int aNumPhases)
overridevirtualinherited

Set the number of phases.

Implements PROGRESS_REPORTER.

Definition at line 92 of file progress_reporter_base.cpp.

References m_numPhases.

Referenced by DIALOG_PCM_PROGRESS::OnCancelClicked(), and BACKGROUND_JOB_REPORTER::SetNumPhases().

◆ SetPosition()

void DIALOG_SHIM::SetPosition ( const wxPoint & aNewPosition)
inherited

Force the position of the dialog to a new position.

Parameters
aNewPositionis the new forced position

Definition at line 331 of file dialog_shim.cpp.

Referenced by PCB_BASE_FRAME::SelectOneLayer().

◆ setSizeInDU()

void DIALOG_SHIM::setSizeInDU ( int x,
int y )
protectedinherited

Set the dialog to the given dimensions in "dialog units".

These are units equivalent to 4* the average character width and 8* the average character height, allowing a dialog to be sized in a way that scales it with the system font.

Definition at line 304 of file dialog_shim.cpp.

Referenced by HTML_MESSAGE_BOX::HTML_MESSAGE_BOX(), and HTML_MESSAGE_BOX::SetDialogSizeInDU().

◆ SetTitle()

void PROGRESS_REPORTER_BASE::SetTitle ( const wxString & aTitle)
inlineoverridevirtualinherited

Change the title displayed on the window caption.

Has meaning only for some reporters. Does nothing for others.

Warning
This should only be called from the main thread.

Implements PROGRESS_REPORTER.

Reimplemented in WX_PROGRESS_REPORTER.

Definition at line 106 of file progress_reporter_base.h.

◆ SetupStandardButtons()

void DIALOG_SHIM::SetupStandardButtons ( std::map< int, wxString > aLabels = {})
inherited

Definition at line 1712 of file dialog_shim.cpp.

References recursiveDescent().

Referenced by CONVERT_SETTINGS_DIALOG::CONVERT_SETTINGS_DIALOG(), DIALOG_ANNOTATE::DIALOG_ANNOTATE(), DIALOG_ASSIGN_NETCLASS::DIALOG_ASSIGN_NETCLASS(), DIALOG_BOARD_REANNOTATE::DIALOG_BOARD_REANNOTATE(), DIALOG_BOARD_STATS_JOB::DIALOG_BOARD_STATS_JOB(), DIALOG_BOM::DIALOG_BOM(), DIALOG_BOOK_REPORTER::DIALOG_BOOK_REPORTER(), DIALOG_CHANGE_SYMBOLS::DIALOG_CHANGE_SYMBOLS(), DIALOG_CLEANUP_GRAPHICS::DIALOG_CLEANUP_GRAPHICS(), DIALOG_COLOR_PICKER::DIALOG_COLOR_PICKER(), DIALOG_CONFIG_EQUFILES::DIALOG_CONFIG_EQUFILES(), DIALOG_CONFIGURE_PATHS::DIALOG_CONFIGURE_PATHS(), DIALOG_COPPER_ZONE::DIALOG_COPPER_ZONE(), DIALOG_COPYFILES_JOB_SETTINGS::DIALOG_COPYFILES_JOB_SETTINGS(), DIALOG_CREATE_ARRAY::DIALOG_CREATE_ARRAY(), DIALOG_DATABASE_LIB_SETTINGS::DIALOG_DATABASE_LIB_SETTINGS(), DIALOG_DESIGN_BLOCK_PROPERTIES::DIALOG_DESIGN_BLOCK_PROPERTIES(), DIALOG_DESTINATION::DIALOG_DESTINATION(), DIALOG_DIELECTRIC_MATERIAL::DIALOG_DIELECTRIC_MATERIAL(), DIALOG_DIMENSION_PROPERTIES::DIALOG_DIMENSION_PROPERTIES(), DIALOG_DRAW_LAYERS_SETTINGS::DIALOG_DRAW_LAYERS_SETTINGS(), DIALOG_DRC::DIALOG_DRC(), DIALOG_ERC::DIALOG_ERC(), DIALOG_EXCHANGE_FOOTPRINTS::DIALOG_EXCHANGE_FOOTPRINTS(), DIALOG_EXECUTECOMMAND_JOB_SETTINGS::DIALOG_EXECUTECOMMAND_JOB_SETTINGS(), DIALOG_EXPORT_2581::DIALOG_EXPORT_2581(), DIALOG_EXPORT_2581::DIALOG_EXPORT_2581(), DIALOG_EXPORT_IDF3::DIALOG_EXPORT_IDF3(), DIALOG_EXPORT_NETLIST::DIALOG_EXPORT_NETLIST(), DIALOG_EXPORT_ODBPP::DIALOG_EXPORT_ODBPP(), DIALOG_EXPORT_ODBPP::DIALOG_EXPORT_ODBPP(), DIALOG_EXPORT_STEP::DIALOG_EXPORT_STEP(), DIALOG_EXPORT_VRML::DIALOG_EXPORT_VRML(), DIALOG_FILTER_SELECTION::DIALOG_FILTER_SELECTION(), DIALOG_FOOTPRINT_CHECKER::DIALOG_FOOTPRINT_CHECKER(), DIALOG_FOOTPRINT_PROPERTIES::DIALOG_FOOTPRINT_PROPERTIES(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR(), DIALOG_FOOTPRINT_WIZARD_LIST::DIALOG_FOOTPRINT_WIZARD_LIST(), DIALOG_FP_EDIT_PAD_TABLE::DIALOG_FP_EDIT_PAD_TABLE(), DIALOG_GEN_FOOTPRINT_POSITION::DIALOG_GEN_FOOTPRINT_POSITION(), DIALOG_GEN_FOOTPRINT_POSITION::DIALOG_GEN_FOOTPRINT_POSITION(), DIALOG_GENDRILL::DIALOG_GENDRILL(), DIALOG_GENDRILL::DIALOG_GENDRILL(), DIALOG_GENERATE_DATABASE_CONNECTION::DIALOG_GENERATE_DATABASE_CONNECTION(), DIALOG_GET_FOOTPRINT_BY_NAME::DIALOG_GET_FOOTPRINT_BY_NAME(), DIALOG_GIT_COMMIT::DIALOG_GIT_COMMIT(), DIALOG_GIT_REPOSITORY::DIALOG_GIT_REPOSITORY(), DIALOG_GLOBAL_DELETION::DIALOG_GLOBAL_DELETION(), DIALOG_GLOBAL_EDIT_TEARDROPS::DIALOG_GLOBAL_EDIT_TEARDROPS(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS(), DIALOG_GRID_SETTINGS::DIALOG_GRID_SETTINGS(), DIALOG_GROUP_PROPERTIES::DIALOG_GROUP_PROPERTIES(), DIALOG_IBIS_PARSER_REPORTER::DIALOG_IBIS_PARSER_REPORTER(), DIALOG_IMAGE_PROPERTIES::DIALOG_IMAGE_PROPERTIES(), DIALOG_IMPORT_CHOOSE_PROJECT::DIALOG_IMPORT_CHOOSE_PROJECT(), DIALOG_IMPORT_GFX_SCH::DIALOG_IMPORT_GFX_SCH(), DIALOG_IMPORT_GRAPHICS::DIALOG_IMPORT_GRAPHICS(), DIALOG_IMPORT_NETLIST::DIALOG_IMPORT_NETLIST(), DIALOG_IMPORT_SETTINGS::DIALOG_IMPORT_SETTINGS(), DIALOG_IMPORT_SYMBOL_SELECT::DIALOG_IMPORT_SYMBOL_SELECT(), DIALOG_JOBSET_RUN_LOG::DIALOG_JOBSET_RUN_LOG(), DIALOG_JUNCTION_PROPS::DIALOG_JUNCTION_PROPS(), DIALOG_LABEL_PROPERTIES::DIALOG_LABEL_PROPERTIES(), DIALOG_LIB_EDIT_PIN_TABLE::DIALOG_LIB_EDIT_PIN_TABLE(), DIALOG_LIB_FIELDS_TABLE::DIALOG_LIB_FIELDS_TABLE(), DIALOG_LIB_NEW_SYMBOL::DIALOG_LIB_NEW_SYMBOL(), DIALOG_LINE_PROPERTIES::DIALOG_LINE_PROPERTIES(), DIALOG_MAP_LAYERS::DIALOG_MAP_LAYERS(), DIALOG_MOVE_EXACT::DIALOG_MOVE_EXACT(), DIALOG_MULTICHANNEL_GENERATE_RULE_AREAS::DIALOG_MULTICHANNEL_GENERATE_RULE_AREAS(), DIALOG_MULTICHANNEL_REPEAT_LAYOUT::DIALOG_MULTICHANNEL_REPEAT_LAYOUT(), DIALOG_NON_COPPER_ZONES_EDITOR::DIALOG_NON_COPPER_ZONES_EDITOR(), DIALOG_OFFSET_ITEM::DIALOG_OFFSET_ITEM(), DIALOG_OUTSET_ITEMS::DIALOG_OUTSET_ITEMS(), DIALOG_PAD_PROPERTIES::DIALOG_PAD_PROPERTIES(), DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS(), DIALOG_PCM::DIALOG_PCM(), DIALOG_PIN_PROPERTIES::DIALOG_PIN_PROPERTIES(), DIALOG_PLOT::DIALOG_PLOT(), DIALOG_PLOT_SCHEMATIC::DIALOG_PLOT_SCHEMATIC(), DIALOG_PLUGIN_OPTIONS::DIALOG_PLUGIN_OPTIONS(), DIALOG_PNS_DIFF_PAIR_DIMENSIONS::DIALOG_PNS_DIFF_PAIR_DIMENSIONS(), DIALOG_PNS_SETTINGS::DIALOG_PNS_SETTINGS(), DIALOG_POSITION_RELATIVE::DIALOG_POSITION_RELATIVE(), DIALOG_PRINT::DIALOG_PRINT(), DIALOG_PRINT_GENERIC::DIALOG_PRINT_GENERIC(), DIALOG_PUSH_PAD_PROPERTIES::DIALOG_PUSH_PAD_PROPERTIES(), DIALOG_RC_JOB::DIALOG_RC_JOB(), DIALOG_REFERENCE_IMAGE_PROPERTIES::DIALOG_REFERENCE_IMAGE_PROPERTIES(), DIALOG_REGULATOR_FORM::DIALOG_REGULATOR_FORM(), DIALOG_REMOTE_SYMBOL_CONFIG::DIALOG_REMOTE_SYMBOL_CONFIG(), DIALOG_RENDER_JOB::DIALOG_RENDER_JOB(), DIALOG_RESCUE_EACH::DIALOG_RESCUE_EACH(), DIALOG_RULE_AREA_PROPERTIES::DIALOG_RULE_AREA_PROPERTIES(), DIALOG_SCH_IMPORT_SETTINGS::DIALOG_SCH_IMPORT_SETTINGS(), DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), DIALOG_SHEET_PIN_PROPERTIES::DIALOG_SHEET_PIN_PROPERTIES(), DIALOG_SHEET_PROPERTIES::DIALOG_SHEET_PROPERTIES(), DIALOG_SIM_COMMAND::DIALOG_SIM_COMMAND(), DIALOG_SWAP_LAYERS::DIALOG_SWAP_LAYERS(), DIALOG_SYMBOL_CHOOSER::DIALOG_SYMBOL_CHOOSER(), DIALOG_SYMBOL_FIELDS_TABLE::DIALOG_SYMBOL_FIELDS_TABLE(), DIALOG_SYMBOL_PROPERTIES::DIALOG_SYMBOL_PROPERTIES(), DIALOG_TABLE_PROPERTIES::DIALOG_TABLE_PROPERTIES(), DIALOG_TABLE_PROPERTIES::DIALOG_TABLE_PROPERTIES(), DIALOG_TABLECELL_PROPERTIES::DIALOG_TABLECELL_PROPERTIES(), DIALOG_TABLECELL_PROPERTIES::DIALOG_TABLECELL_PROPERTIES(), DIALOG_TARGET_PROPERTIES::DIALOG_TARGET_PROPERTIES(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TEXTBOX_PROPERTIES::DIALOG_TEXTBOX_PROPERTIES(), DIALOG_TRACK_VIA_PROPERTIES::DIALOG_TRACK_VIA_PROPERTIES(), DIALOG_TRACK_VIA_SIZE::DIALOG_TRACK_VIA_SIZE(), DIALOG_TUNING_PATTERN_PROPERTIES::DIALOG_TUNING_PATTERN_PROPERTIES(), DIALOG_UNUSED_PAD_LAYERS::DIALOG_UNUSED_PAD_LAYERS(), DIALOG_UPDATE_FROM_PCB::DIALOG_UPDATE_FROM_PCB(), DIALOG_UPDATE_PCB::DIALOG_UPDATE_PCB(), DIALOG_UPDATE_SYMBOL_FIELDS::DIALOG_UPDATE_SYMBOL_FIELDS(), DIALOG_USER_DEFINED_SIGNALS::DIALOG_USER_DEFINED_SIGNALS(), DIALOG_WIRE_BUS_PROPERTIES::DIALOG_WIRE_BUS_PROPERTIES(), EDA_LIST_DIALOG::EDA_LIST_DIALOG(), EDA_REORDERABLE_LIST_DIALOG::EDA_REORDERABLE_LIST_DIALOG(), HTML_MESSAGE_BOX::HTML_MESSAGE_BOX(), DIALOG_FIELD_PROPERTIES::init(), DIALOG_EDIT_LIBRARY_TABLES::InstallPanel(), NETLIST_DIALOG_ADD_GENERATOR::NETLIST_DIALOG_ADD_GENERATOR(), PAGED_DIALOG::PAGED_DIALOG(), SAVE_AS_DIALOG::SAVE_AS_DIALOG(), SAVE_SYMBOL_AS_DIALOG::SAVE_SYMBOL_AS_DIALOG(), DIALOG_CLEANUP_TRACKS_AND_VIAS::setupOKButtonLabel(), WX_MULTI_ENTRY_DIALOG::WX_MULTI_ENTRY_DIALOG(), WX_PT_ENTRY_DIALOG::WX_PT_ENTRY_DIALOG(), WX_TEXT_ENTRY_DIALOG::WX_TEXT_ENTRY_DIALOG(), and WX_UNIT_ENTRY_DIALOG::WX_UNIT_ENTRY_DIALOG().

◆ Show()

◆ ShowModal()

int DIALOG_SHIM::ShowModal ( )
overrideinherited

Definition at line 1290 of file dialog_shim.cpp.

References KIPLATFORM::UI::ReparentModal().

Referenced by PANEL_SETUP_LAYERS::addUserDefinedLayer(), MULTICHANNEL_TOOL::AutogenerateRuleAreas(), GRID_CELL_COLOR_SELECTOR::BeginEdit(), SCH_INSPECTION_TOOL::CheckSymbol(), FOOTPRINT_EDITOR_CONTROL::CleanupGraphics(), GLOBAL_EDIT_TOOL::CleanupGraphics(), GLOBAL_EDIT_TOOL::CleanupTracksAndVias(), COMMON_CONTROL::ConfigurePaths(), DIALOG_PLOT::CreateDrillFile(), CONVERT_TOOL::CreateLines(), SYMBOL_EDIT_FRAME::CreateNewSymbol(), MICROWAVE_TOOL::createPolygonShape(), CONVERT_TOOL::CreatePolys(), ROUTER_TOOL::CustomTrackWidthDialog(), FOOTPRINT_LIST::DisplayErrors(), PANEL_DESIGN_BLOCK_CHOOSER::displayErrors(), DisplayHotkeyList(), CURSORS_GRID_TRICKS::doPopupSelection(), LIB_FIELDS_EDITOR_GRID_TRICKS::doPopupSelection(), MEASUREMENTS_GRID_TRICKS::doPopupSelection(), SIGNALS_GRID_TRICKS::doPopupSelection(), ROUTER_TOOL::DpDimensionsDialog(), DRAWING_TOOL::DrawBarcode(), SIMULATOR_FRAME::EditAnalysis(), DESIGN_BLOCK_PANE::EditDesignBlockProperties(), SYMBOL_EDITOR_PIN_TOOL::EditPinProperties(), SCH_EDIT_TOOL::EditProperties(), SYMBOL_EDITOR_EDIT_TOOL::editShapeProperties(), SCH_EDIT_FRAME::EditSheetProperties(), FOOTPRINT_EDITOR_CONTROL::EditTextAndGraphics(), GLOBAL_EDIT_TOOL::EditTextAndGraphics(), SYMBOL_EDITOR_EDIT_TOOL::editTextBoxProperties(), SYMBOL_EDITOR_EDIT_TOOL::editTextProperties(), EESCHEMA_JOBS_HANDLER::EESCHEMA_JOBS_HANDLER(), VIA_SIZE_MENU::eventHandler(), BOARD_EDITOR_CONTROL::ExportGenCAD(), BOARD_EDITOR_CONTROL::ExportIDF(), EDA_3D_CONTROLLER::ExportImage(), BOARD_EDITOR_CONTROL::ExportSTEP(), GERBVIEW_CONTROL::ExportToPcbnew(), BOARD_EDITOR_CONTROL::ExportVRML(), EDIT_TOOL::FilletTracks(), PCB_SELECTION_TOOL::filterSelection(), BOARD_EDITOR_CONTROL::GenerateDrillFiles(), BOARD_EDITOR_CONTROL::GenerateODBPPFiles(), BOARD_EDITOR_CONTROL::GeneratePosFile(), BOARD_EDITOR_CONTROL::GenIPC2581File(), GetChamferParams(), GetDogboneParams(), GetFootprintFromBoardByReference(), COLOR_SWATCH::GetNewSwatchColor(), GetRadiusParams(), GetSequentialPadNumberingParams(), GLOBAL_EDIT_TOOL::GlobalDeletions(), SCH_EDIT_TOOL::GlobalEdit(), COMMON_TOOLS::GridOrigin(), EDIT_TOOL::HealShapes(), SCH_EDIT_FRAME::importFile(), SCH_DRAWING_TOOLS::ImportGraphics(), SYMBOL_EDITOR_DRAWING_TOOLS::ImportGraphics(), SYMBOL_EDIT_FRAME::ImportSymbol(), SCH_EDITOR_CONTROL::IncrementAnnotations(), PCB_EDIT_FRAME::InstallNetlistFrame(), POSITION_RELATIVE_TOOL::InteractiveOffset(), InvokeCopperZonesEditor(), InvokeDialogNetList(), InvokeEditDesignBlockLibTable(), InvokePcbLibTableEditor(), InvokeRuleAreaEditor(), InvokeSchEditSymbolLibTable(), PROJECT_SCH::LegacySchLibs(), GERBVIEW_FRAME::LoadGerberJobFile(), GERBVIEW_FRAME::LoadListOfGerberAndDrillFiles(), GERBVIEW_FRAME::LoadZipArchiveFile(), SCH_EDIT_FRAME::ModalAnnotate(), EDIT_TOOL::MoveExact(), PCB_POINT_EDITOR::movePoint(), SIMULATOR_CONTROL::NewAnalysisTab(), KICAD_MANAGER_CONTROL::NewFromRepository(), KICAD_MANAGER_CONTROL::NewProject(), PANEL_JOBSET::OnAddDestinationClick(), PANEL_SETUP_BOARD_STACKUP::onAddDielectricLayer(), DIALOG_LIB_SYMBOL_PROPERTIES::OnAddFootprintFilter(), DIALOG_EXPORT_NETLIST::OnAddGenerator(), PANEL_GRID_SETTINGS::OnAddGrid(), PCB_NET_INSPECTOR_PANEL::onAddGroup(), PANEL_JOBSET::OnAddJobClick(), PCB_NET_INSPECTOR_PANEL::onAddNet(), PANEL_REGULATOR::OnAddRegulator(), DIALOG_BOARD_SETUP::onAuxiliaryAction(), DIALOG_SCHEMATIC_SETUP::onAuxiliaryAction(), DIALOG_SYMBOL_FIELDS_TABLE::onBomFmtPresetChanged(), DIALOG_SYMBOL_FIELDS_TABLE::onBomPresetChanged(), PANEL_SETUP_BOARD_STACKUP::onColorSelected(), PANEL_REMOTE_SYMBOL::onConfigure(), DIALOG_DRC::OnDRCItemRClick(), DIALOG_LIB_SYMBOL_PROPERTIES::OnEditFootprintFilter(), PANEL_GRID_SETTINGS::onEditGrid(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), PCB_EDIT_FRAME::OnEditItemRequest(), PANEL_REGULATOR::OnEditRegulator(), DIALOG_LIB_SYMBOL_PROPERTIES::OnEditSpiceModel(), DIALOG_SYMBOL_PROPERTIES::OnEditSpiceModel(), DIALOG_ERC::OnERCItemRClick(), DIALOG_EXPORT_STEP::onExportButton(), PROJECT_TREE_PANE::onGitCommit(), PROJECT_TREE_PANE::onGitInitializeProject(), PROJECT_TREE_PANE::onGitSwitchBranch(), LIB_TREE::onHeaderContextMenu(), PROPERTIES_FRAME::onHelp(), PANEL_DESTINATION::OnLastStatusClick(), APPEARANCE_CONTROLS::onLayerPresetChanged(), APPEARANCE_CONTROLS_3D::onLayerPresetChanged(), KISTATUSBAR::onLoadWarningsIconClick(), PANEL_SCH_DATA_SOURCES::OnManageDataSources(), DIALOG_PCM::OnManageRepositoriesClicked(), PANEL_SETUP_BOARD_STACKUP::onMaterialChange(), PANEL_FP_LIB_TABLE::onMigrateLibraries(), PANEL_DESTINATION::OnProperties(), PANEL_SETUP_BOARD_STACKUP::onRemoveDielectricLayer(), PCB_NET_INSPECTOR_PANEL::onRenameSelectedNet(), PANEL_PCBNEW_ACTION_PLUGINS::OnShowErrorsButtonClick(), DIALOG_FOOTPRINT_WIZARD_LIST::onShowTrace(), APPEARANCE_CONTROLS::onViewportChanged(), APPEARANCE_CONTROLS_3D::onViewportChanged(), PANEL_JOBSET::OpenJobOptionsForListItem(), DESIGN_BLOCK_GRID_TRICKS::optionsEditor(), FP_GRID_TRICKS::optionsEditor(), SYMBOL_GRID_TRICKS::optionsEditor(), CONVERT_TOOL::OutsetItems(), DIALOG_PAD_PROPERTIES::padValuesOK(), BOARD_EDITOR_CONTROL::PageSettings(), PL_EDITOR_CONTROL::PageSetup(), SCH_EDITOR_CONTROL::PageSetup(), PCB_CONTROL::Paste(), SCH_EDITOR_CONTROL::Paste(), PCBNEW_JOBS_HANDLER::PCBNEW_JOBS_HANDLER(), SCH_BASE_FRAME::PickSymbolFromLibrary(), SYMBOL_EDITOR_EDIT_TOOL::PinTable(), DRAWING_TOOL::PlaceImportedGraphics(), DRAWING_TOOL::PlaceTuningPattern(), SCH_EDITOR_CONTROL::Plot(), GERBVIEW_CONTROL::Print(), PCB_CONTROL::Print(), SCH_EDITOR_CONTROL::Print(), HK_PROMPT_DIALOG::PromptForKey(), SCH_EDIT_TOOL::Properties(), PAD_TOOL::pushPadSettings(), GERBVIEW_FRAME::Read_EXCELLON_File(), GERBVIEW_FRAME::Read_GERBER_File(), CVPCB_MAINFRAME::readNetListAndFpFiles(), GLOBAL_EDIT_TOOL::RemoveUnusedPads(), MULTICHANNEL_TOOL::repeatLayout(), DIALOG_IMPORT_CHOOSE_PROJECT::RunModal(), DIALOG_MAP_LAYERS::RunModal(), PCB_EDIT_FRAME::SaveBoardAsDesignBlock(), FOOTPRINT_EDIT_FRAME::SaveFootprintAs(), PCB_EDIT_FRAME::SaveSelectionAsDesignBlock(), SCH_EDIT_FRAME::SaveSelectionAsDesignBlock(), SCH_EDIT_FRAME::SaveSheetAsDesignBlock(), SYMBOL_EDIT_FRAME::saveSymbolCopyAs(), ROUTER_TOOL::SelectCopperLayerPair(), FOOTPRINT_EDIT_FRAME::SelectFootprintFromBoard(), FOOTPRINT_WIZARD_FRAME::SelectFootprintWizard(), PCB_BASE_EDIT_FRAME::SelectLibrary(), SCH_BASE_FRAME::SelectLibrary(), PCB_BASE_FRAME::SelectOneLayer(), GERBVIEW_FRAME::SelectPCBLayer(), GERBVIEW_FRAME::SetLayerDrawPrms(), ROUTER_TOOL::SettingsDialog(), PCB_BASE_EDIT_FRAME::ShowBarcodePropertiesDialog(), BOARD_INSPECTION_TOOL::ShowBoardStatistics(), SYMBOL_LIBRARY_ADAPTER::ShowConfigurationDialog(), PL_EDITOR_FRAME::ShowDesignInspector(), CVPCB_CONTROL::ShowEquFileTable(), BOARD_INSPECTION_TOOL::ShowFootprintLinks(), SYMBOL_EDITOR_CONTROL::ShowLibraryTable(), SIMULATOR_CONTROL::ShowNetlist(), KICAD_MANAGER_CONTROL::ShowPluginManager(), EDA_BASE_FRAME::ShowPreferences(), PCB_TUNING_PATTERN::ShowPropertiesDialog(), BOARD_REANNOTATE_TOOL::ShowReannotateDialog(), PCB_BASE_EDIT_FRAME::ShowReferenceImagePropertiesDialog(), PCB_EDIT_FRAME::ShowTargetOptionsDialog(), EDIT_TOOL::SimplifyPolygons(), SCH_DRAWING_TOOLS::SingleClickPlace(), GLOBAL_EDIT_TOOL::SwapLayers(), DIALOG_IMPORT_GFX_SCH::TransferDataFromWindow(), DIALOG_IMPORT_GRAPHICS::TransferDataFromWindow(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), EDA_3D_VIEWER_FRAME::TryBefore(), PCB_BASE_EDIT_FRAME::TryBefore(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), SCH_EDIT_FRAME::UpdateDesignBlockFromSheet(), SCH_EDITOR_CONTROL::UpdateFromPCB(), BOARD_EDITOR_CONTROL::UpdatePCBFromSchematic(), SYMBOL_EDITOR_EDIT_TOOL::UpdateSymbolFields(), DIALOG_SHAPE_PROPERTIES::Validate(), and PANEL_PREVIEW_3D_MODEL::View3DSettings().

◆ ShowQuasiModal()

int DIALOG_SHIM::ShowQuasiModal ( )
inherited

Definition at line 1328 of file dialog_shim.cpp.

References m_qmodal_loop, m_qmodal_parent_disabler, m_qmodal_showing, KIPLATFORM::UI::ReparentModal(), and Show().

Referenced by PANEL_FP_PROPERTIES_3D_MODEL::Cfg3DPath(), DIALOG_SELECT_3DMODEL::Cfg3DPaths(), SCH_EDIT_TOOL::ChangeSymbols(), MICROWAVE_TOOL::createFootprint(), MICROWAVE_TOOL::createMicrowaveInductor(), SCH_DRAWING_TOOLS::createNewLabel(), SCH_DRAWING_TOOLS::createNewText(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), SCH_DRAWING_TOOLS::DrawShape(), DRAWING_TOOL::DrawTable(), SCH_DRAWING_TOOLS::DrawTable(), SYMBOL_EDITOR_EDIT_TOOL::editFieldProperties(), SCH_EDIT_TOOL::editFieldText(), FOOTPRINT_EDIT_FRAME::editFootprintProperties(), FOOTPRINT_EDITOR_CONTROL::editFootprintPropertiesFromLibrary(), SCH_EDIT_TOOL::EditProperties(), SYMBOL_EDITOR_EDIT_TOOL::editSymbolProperties(), SYMBOL_EDITOR_EDIT_TOOL::editSymbolPropertiesFromLibrary(), PCB_EDIT_TABLE_TOOL::EditTable(), SCH_EDIT_TABLE_TOOL::EditTable(), GLOBAL_EDIT_TOOL::EditTeardrops(), GLOBAL_EDIT_TOOL::EditTracksAndVias(), SIMULATOR_CONTROL::EditUserDefinedSignals(), GLOBAL_EDIT_TOOL::ExchangeFootprints(), DRC_TOOL::FixDRCError(), SCH_EDIT_TOOL::FixERCError(), BOARD_EDITOR_CONTROL::GenerateGerbers(), InvokeDialogCreateBOM(), InvokeDialogEditSymbolsLibId(), InvokeDialogRescueEach(), InvokeNonCopperZonesEditor(), PANEL_FP_PROPERTIES_3D_MODEL::OnAdd3DModel(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), PCB_EDIT_FRAME::OnEditItemRequest(), PANEL_JOBSET::OpenJobOptionsForListItem(), SCH_EDIT_FRAME::OpenProjectFiles(), PAD_TOOL::PadTable(), DRAWING_TOOL::PlaceText(), BOARD_EDITOR_CONTROL::Plot(), EDIT_TOOL::Properties(), SCH_EDIT_TOOL::Properties(), SCH_EDITOR_CONTROL::RemapSymbols(), PCB_EDIT_FRAME::ShowBoardSetupDialog(), PCB_EDIT_FRAME::ShowExchangeFootprintsDialog(), PCB_EDIT_FRAME::ShowFootprintPropertiesDialog(), PCB_BASE_EDIT_FRAME::ShowGraphicItemPropertiesDialog(), PCB_BASE_FRAME::ShowPadPropertiesDialog(), SCH_EDIT_FRAME::ShowSchematicSetupDialog(), PCB_BASE_EDIT_FRAME::ShowTextBoxPropertiesDialog(), PCB_BASE_EDIT_FRAME::ShowTextPropertiesDialog(), and GLOBAL_EDIT_TOOL::ZonesManager().

◆ TearDownQuasiModal()

virtual void DIALOG_SHIM::TearDownQuasiModal ( )
inlineprotectedvirtualinherited

Override this method to perform dialog tear down actions not suitable for object dtor.

Warning
This only gets called for dialogs that are shown in the quasimodal mode. If you need to perform tear down actions in modal or modeless dialogs, create a close window event handler.

Definition at line 215 of file dialog_shim.h.

Referenced by EndQuasiModal().

◆ TransferDataFromWindow()

bool DIALOG_DRC_RULE_EDITOR::TransferDataFromWindow ( )
override

◆ TransferDataToWindow()

bool DIALOG_DRC_RULE_EDITOR::TransferDataToWindow ( )
override

◆ UpdateData()

void DIALOG_DRC_RULE_EDITOR::UpdateData ( )

Definition at line 1099 of file dialog_drc_rule_editor.cpp.

References m_markersProvider, m_markersTreeModel, and m_severities.

◆ updateRuleTreeActionButtonsState()

◆ updateRuleTreeItemMoveOptionState()

void RULE_EDITOR_DIALOG_BASE::updateRuleTreeItemMoveOptionState ( )
privateinherited

Updates the state of move options (up/down) for the selected item.

Definition at line 1002 of file rule_editor_dialog_base.cpp.

References isEnabled(), m_enableMoveDown, m_enableMoveUp, m_ruleTreeCtrl, MOVE_DOWN, MOVE_UP, and next().

Referenced by updateRuleTreeActionButtonsState().

◆ UpdateRuleTreeItemText()

void RULE_EDITOR_DIALOG_BASE::UpdateRuleTreeItemText ( wxTreeItemId aItemId,
wxString aItemText )
inherited

Updates the text of a specified rule tree item.

Parameters
aItemIdThe ID of the tree item to update.
aItemTextThe new text to set for the tree item.

Definition at line 385 of file rule_editor_dialog_base.cpp.

References m_ruleTreeCtrl.

Referenced by DIALOG_DRC_RULE_EDITOR::UpdateRuleTypeTreeItemData().

◆ UpdateRuleTypeTreeItemData()

void DIALOG_DRC_RULE_EDITOR::UpdateRuleTypeTreeItemData ( RULE_TREE_ITEM_DATA * aCurrentRuleTreeItemData)
overridevirtual

Updates the rule tree item data by transferring data from the rule editor panel and updating the item text.

Parameters
aRuleTreeItemDataThe data of the rule tree item to be updated.

Implements RULE_EDITOR_DIALOG_BASE.

Definition at line 443 of file dialog_drc_rule_editor.cpp.

References RULE_TREE_ITEM_DATA::GetNodeId(), RULE_EDITOR_DATA_BASE::GetRuleName(), getRuleTreeNodeInfo(), RULE_TREE_ITEM_DATA::GetTreeItemId(), RULE_TREE_NODE::m_nodeData, RULE_TREE_NODE::m_nodeName, RULE_TREE_NODE::m_nodeType, m_ruleEditorPanel, RULE, RULE_EDITOR_DATA_BASE::SetIsNew(), and RULE_EDITOR_DIALOG_BASE::UpdateRuleTreeItemText().

Referenced by saveRule().

◆ updateUI()

bool DIALOG_DRC_RULE_EDITOR::updateUI ( )
overrideprivatevirtual

◆ validateRuleName()

bool DIALOG_DRC_RULE_EDITOR::validateRuleName ( int aNodeId,
wxString aRuleName )
private

Validates if the rule name is unique for the given node ID.

Parameters
aNodeIdThe ID of the node to exclude from the check.
aRuleNameThe rule name to validate.
Returns
True if the rule name is unique, false otherwise.

Definition at line 980 of file dialog_drc_rule_editor.cpp.

References m_ruleTreeNodeDatas.

Referenced by RuleTreeItemSelectionChanged().

◆ vertPixelsFromDU()

int DIALOG_SHIM::vertPixelsFromDU ( int y) const
protectedinherited

Convert an integer number of dialog units to pixels, vertically.

See SetSizeInDU or wxDialog documentation for more information.

Definition at line 318 of file dialog_shim.cpp.

Referenced by DIALOG_LIB_FIELDS_TABLE::DIALOG_LIB_FIELDS_TABLE(), and DIALOG_SYMBOL_FIELDS_TABLE::DIALOG_SYMBOL_FIELDS_TABLE().

Member Data Documentation

◆ m_addRuleButton

wxBitmapButton* RULE_EDITOR_DIALOG_BASE::m_addRuleButton
protectedinherited

◆ m_beforeEditValues

std::map<wxWindow*, wxString> DIALOG_SHIM::m_beforeEditValues
protectedinherited

Definition at line 285 of file dialog_shim.h.

Referenced by OnCharHook(), onChildSetFocus(), and SelectAllInTextCtrls().

◆ m_buttonsSizer

wxBoxSizer* RULE_EDITOR_DIALOG_BASE::m_buttonsSizer
protectedinherited

Definition at line 452 of file rule_editor_dialog_base.h.

◆ m_cancelled

◆ m_cancelRuleButton

wxButton* RULE_EDITOR_DIALOG_BASE::m_cancelRuleButton
protectedinherited

◆ m_childReleased

bool DIALOG_SHIM::m_childReleased
protectedinherited

Definition at line 299 of file dialog_shim.h.

Referenced by DIALOG_SHIM(), and OnMove().

◆ m_contentPanel

wxPanel* RULE_EDITOR_DIALOG_BASE::m_contentPanel
protectedinherited

◆ m_copyRuleButton

wxBitmapButton* RULE_EDITOR_DIALOG_BASE::m_copyRuleButton
protectedinherited

◆ m_currentBoard

BOARD* DIALOG_DRC_RULE_EDITOR::m_currentBoard
protected

Definition at line 228 of file dialog_drc_rule_editor.h.

Referenced by bds(), DIALOG_DRC_RULE_EDITOR(), and SaveRulesToFile().

◆ m_currentValues

std::map<wxWindow*, wxVariant> DIALOG_SHIM::m_currentValues
protectedinherited

Definition at line 297 of file dialog_shim.h.

Referenced by doRedo(), doUndo(), recordControlChange(), and registerUndoRedoHandlers().

◆ m_defaultSashPosition

int RULE_EDITOR_DIALOG_BASE::m_defaultSashPosition
privateinherited

Definition at line 468 of file rule_editor_dialog_base.h.

Referenced by RULE_EDITOR_DIALOG_BASE(), and SetContentPanel().

◆ m_defaultTreeItems

std::vector<RULE_TREE_NODE> RULE_EDITOR_DIALOG_BASE::m_defaultTreeItems
privateinherited

Definition at line 471 of file rule_editor_dialog_base.h.

Referenced by InitRuleTreeItems(), and onFilterSearch().

◆ m_deleteRuleButton

wxBitmapButton* RULE_EDITOR_DIALOG_BASE::m_deleteRuleButton
protectedinherited

◆ m_draggedItem

wxTreeItemId RULE_EDITOR_DIALOG_BASE::m_draggedItem
privateinherited

◆ m_dragImage

wxDragImage* RULE_EDITOR_DIALOG_BASE::m_dragImage
privateinherited

◆ m_drcTool

DRC_TOOL* DIALOG_DRC_RULE_EDITOR::m_drcTool
protected

Definition at line 231 of file dialog_drc_rule_editor.h.

Referenced by highlightMatchingItems().

◆ m_enableAddRule

bool RULE_EDITOR_DIALOG_BASE::m_enableAddRule
privateinherited

◆ m_enableDeleteRule

bool RULE_EDITOR_DIALOG_BASE::m_enableDeleteRule
privateinherited

◆ m_enableDuplicateRule

bool RULE_EDITOR_DIALOG_BASE::m_enableDuplicateRule
privateinherited

◆ m_enableMoveDown

bool RULE_EDITOR_DIALOG_BASE::m_enableMoveDown
privateinherited

◆ m_enableMoveUp

bool RULE_EDITOR_DIALOG_BASE::m_enableMoveUp
privateinherited

◆ m_filterSearch

wxSearchCtrl* RULE_EDITOR_DIALOG_BASE::m_filterSearch
protectedinherited

◆ m_filterText

wxTextCtrl* RULE_EDITOR_DIALOG_BASE::m_filterText
protectedinherited

Definition at line 451 of file rule_editor_dialog_base.h.

◆ m_firstPaintEvent

bool DIALOG_SHIM::m_firstPaintEvent
protectedinherited

Definition at line 266 of file dialog_shim.h.

Referenced by DIALOG_SHIM(), and OnPaint().

◆ m_frame

◆ m_groupHeaderPanel

PANEL_DRC_GROUP_HEADER* DIALOG_DRC_RULE_EDITOR::m_groupHeaderPanel
private

Definition at line 238 of file dialog_drc_rule_editor.h.

Referenced by RuleTreeItemSelectionChanged().

◆ m_handlingUndoRedo

bool DIALOG_SHIM::m_handlingUndoRedo
protectedinherited

◆ m_hash_key

std::string DIALOG_SHIM::m_hash_key
protectedinherited

Definition at line 257 of file dialog_shim.h.

Referenced by CONVERT_SETTINGS_DIALOG::CONVERT_SETTINGS_DIALOG(), DIALOG_CHANGE_SYMBOLS::DIALOG_CHANGE_SYMBOLS(), DIALOG_EXCHANGE_FOOTPRINTS::DIALOG_EXCHANGE_FOOTPRINTS(), DIALOG_EXPORT_2581::DIALOG_EXPORT_2581(), DIALOG_EXPORT_2581::DIALOG_EXPORT_2581(), DIALOG_EXPORT_NETLIST::DIALOG_EXPORT_NETLIST(), DIALOG_EXPORT_ODBPP::DIALOG_EXPORT_ODBPP(), DIALOG_EXPORT_ODBPP::DIALOG_EXPORT_ODBPP(), DIALOG_EXPORT_STEP::DIALOG_EXPORT_STEP(), DIALOG_GEN_FOOTPRINT_POSITION::DIALOG_GEN_FOOTPRINT_POSITION(), DIALOG_GEN_FOOTPRINT_POSITION::DIALOG_GEN_FOOTPRINT_POSITION(), DIALOG_GENCAD_EXPORT_OPTIONS::DIALOG_GENCAD_EXPORT_OPTIONS(), DIALOG_GENDRILL::DIALOG_GENDRILL(), DIALOG_GENDRILL::DIALOG_GENDRILL(), DIALOG_LABEL_PROPERTIES::DIALOG_LABEL_PROPERTIES(), DIALOG_MOVE_EXACT::DIALOG_MOVE_EXACT(), DIALOG_PLOT::DIALOG_PLOT(), DIALOG_PLOT_SCHEMATIC::DIALOG_PLOT_SCHEMATIC(), DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), DIALOG_SYMBOL_FIELDS_TABLE::DIALOG_SYMBOL_FIELDS_TABLE(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), DIALOG_TEXT_PROPERTIES::DIALOG_TEXT_PROPERTIES(), EDA_LIST_DIALOG::EDA_LIST_DIALOG(), EDA_REORDERABLE_LIST_DIALOG::EDA_REORDERABLE_LIST_DIALOG(), LoadControlState(), PAGED_DIALOG::PAGED_DIALOG(), resetSize(), SaveControlState(), Show(), WX_MULTI_ENTRY_DIALOG::WX_MULTI_ENTRY_DIALOG(), WX_PT_ENTRY_DIALOG::WX_PT_ENTRY_DIALOG(), WX_TEXT_ENTRY_DIALOG::WX_TEXT_ENTRY_DIALOG(), and WX_UNIT_ENTRY_DIALOG::WX_UNIT_ENTRY_DIALOG().

◆ m_infoBar

WX_INFOBAR* RULE_EDITOR_DIALOG_BASE::m_infoBar
protectedinherited

◆ m_initialFocusTarget

wxWindow* DIALOG_SHIM::m_initialFocusTarget
protectedinherited

◆ m_initialSize

wxSize DIALOG_SHIM::m_initialSize
protectedinherited

Definition at line 280 of file dialog_shim.h.

Referenced by DIALOG_SHIM(), and Show().

◆ m_isClosing

bool DIALOG_SHIM::m_isClosing
protectedinherited

Definition at line 268 of file dialog_shim.h.

Referenced by DIALOG_SHIM(), onChildSetFocus(), and ~DIALOG_SHIM().

◆ m_isDragging

bool RULE_EDITOR_DIALOG_BASE::m_isDragging
privateinherited

◆ m_kiway

KIWAY* KIWAY_HOLDER::m_kiway
privateinherited

Definition at line 86 of file kiway_holder.h.

Referenced by HasKiway(), Kiway(), KIWAY_HOLDER(), and SetKiway().

◆ m_markerDataView

wxDataViewCtrl* DIALOG_DRC_RULE_EDITOR::m_markerDataView
protected

Definition at line 232 of file dialog_drc_rule_editor.h.

Referenced by DIALOG_DRC_RULE_EDITOR().

◆ m_markersProvider

std::shared_ptr<RC_ITEMS_PROVIDER> DIALOG_DRC_RULE_EDITOR::m_markersProvider
private

Definition at line 240 of file dialog_drc_rule_editor.h.

Referenced by DIALOG_DRC_RULE_EDITOR(), and UpdateData().

◆ m_markersTreeModel

RC_TREE_MODEL* DIALOG_DRC_RULE_EDITOR::m_markersTreeModel
private

Definition at line 241 of file dialog_drc_rule_editor.h.

Referenced by DIALOG_DRC_RULE_EDITOR(), and UpdateData().

◆ m_maxProgress

◆ m_messageChanged

std::atomic_bool PROGRESS_REPORTER_BASE::m_messageChanged
protectedinherited

◆ m_moveTreeItemDownButton

wxBitmapButton* RULE_EDITOR_DIALOG_BASE::m_moveTreeItemDownButton
protectedinherited

◆ m_moveTreeItemUpButton

wxBitmapButton* RULE_EDITOR_DIALOG_BASE::m_moveTreeItemUpButton
protectedinherited

◆ m_mutex

std::mutex PROGRESS_REPORTER_BASE::m_mutex
mutableprotectedinherited

◆ m_nodeId

◆ m_numPhases

std::atomic_int PROGRESS_REPORTER_BASE::m_numPhases
protectedinherited

◆ m_parentFrame

◆ m_phase

std::atomic_int PROGRESS_REPORTER_BASE::m_phase
protectedinherited

◆ m_previousId

wxTreeItemId RULE_EDITOR_DIALOG_BASE::m_previousId
privateinherited

◆ m_progress

◆ m_qmodal_loop

wxGUIEventLoop* DIALOG_SHIM::m_qmodal_loop
protectedinherited

Definition at line 270 of file dialog_shim.h.

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

◆ m_qmodal_parent_disabler

WINDOW_DISABLER* DIALOG_SHIM::m_qmodal_parent_disabler
protectedinherited

◆ m_qmodal_showing

bool DIALOG_SHIM::m_qmodal_showing
protectedinherited

Definition at line 272 of file dialog_shim.h.

Referenced by DIALOG_SHIM(), IsQuasiModal(), and ShowQuasiModal().

◆ m_redoStack

std::vector<UNDO_STEP> DIALOG_SHIM::m_redoStack
protectedinherited

Definition at line 296 of file dialog_shim.h.

Referenced by doRedo(), doUndo(), and recordControlChange().

◆ m_reporter

REPORTER* DIALOG_DRC_RULE_EDITOR::m_reporter
protected

Definition at line 230 of file dialog_drc_rule_editor.h.

Referenced by DIALOG_DRC_RULE_EDITOR(), and highlightMatchingItems().

◆ m_rptMessage

wxString PROGRESS_REPORTER_BASE::m_rptMessage
protectedinherited

◆ m_ruleEditorPanel

◆ m_ruleTreeCtrl

◆ m_ruleTreeNodeDatas

◆ m_saveRuleButton

wxButton* RULE_EDITOR_DIALOG_BASE::m_saveRuleButton
protectedinherited

Definition at line 458 of file rule_editor_dialog_base.h.

Referenced by RULE_EDITOR_DIALOG_BASE(), and ~RULE_EDITOR_DIALOG_BASE().

◆ m_selectedData

◆ m_severities

int DIALOG_DRC_RULE_EDITOR::m_severities
private

Definition at line 242 of file dialog_drc_rule_editor.h.

Referenced by DIALOG_DRC_RULE_EDITOR(), and UpdateData().

◆ m_splitter

wxSplitterWindow* RULE_EDITOR_DIALOG_BASE::m_splitter
protectedinherited

◆ m_tabOrder

◆ m_title

wxString RULE_EDITOR_DIALOG_BASE::m_title
privateinherited

Definition at line 470 of file rule_editor_dialog_base.h.

Referenced by RULE_EDITOR_DIALOG_BASE().

◆ m_treeHistoryData

std::unordered_map<int, std::tuple<wxString, std::vector<int>, wxTreeItemId> > RULE_EDITOR_DIALOG_BASE::m_treeHistoryData
privateinherited

◆ m_type

HOLDER_TYPE KIWAY_HOLDER::m_type
privateinherited

Definition at line 87 of file kiway_holder.h.

Referenced by GetType(), and KIWAY_HOLDER().

◆ m_undoStack

std::vector<UNDO_STEP> DIALOG_SHIM::m_undoStack
protectedinherited

Definition at line 295 of file dialog_shim.h.

Referenced by doRedo(), doUndo(), and recordControlChange().

◆ m_unitBinders

std::map<wxWindow*, UNIT_BINDER*> DIALOG_SHIM::m_unitBinders
protectedinherited

Definition at line 286 of file dialog_shim.h.

Referenced by LoadControlState(), RegisterUnitBinder(), and SaveControlState().

◆ m_units

◆ m_useCalculatedSize

bool DIALOG_SHIM::m_useCalculatedSize
protectedinherited

◆ m_userPositioned

bool DIALOG_SHIM::m_userPositioned
protectedinherited

Definition at line 281 of file dialog_shim.h.

Referenced by DIALOG_SHIM(), OnMove(), and Show().

◆ m_userResized

bool DIALOG_SHIM::m_userResized
protectedinherited

Definition at line 282 of file dialog_shim.h.

Referenced by DIALOG_SHIM(), OnSize(), and Show().


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