| 
    KiCad PCB EDA Suite
    
   | 
 
#include <hierarchy_pane.h>
  
Public Types | |
| enum | ContextMenuAction {  EDIT_PAGE_NUMBER , EXPAND_ALL , COLLAPSE_ALL , RENAME , NEW_TOP_LEVEL_SHEET , DELETE_TOP_LEVEL_SHEET }  | 
Public Member Functions | |
| HIERARCHY_PANE (SCH_EDIT_FRAME *aParent) | |
| ~HIERARCHY_PANE () | |
| void | UpdateHierarchyTree (bool aClear=false) | 
| Update the hierarchical tree of the schematic.   | |
| void | UpdateHierarchySelection () | 
| Updates the tree's selection to match current page.   | |
| void | UpdateLabelsHierarchyTree () | 
| Update the labels of the hierarchical tree of the schematic.   | |
| std::vector< wxString > | GetCollapsedPaths () const | 
| Returns a list of sheet paths for nodes that are currently collapsed.   | |
| void | SetBorders (bool aLeft, bool aRight, bool aTop, bool aBottom) | 
| void | SetBorderColor (const KIGFX::COLOR4D &aColor) | 
Private Member Functions | |
| void | buildHierarchyTree (SCH_SHEET_PATH *aList, const wxTreeItemId &aParent) | 
| Create the hierarchical tree of the schematic.   | |
| void | onSelectSheetPath (wxTreeEvent &aEvent) | 
| Open the selected sheet and display the corresponding screen when a tree item is selected.   | |
| void | onTreeItemRightClick (wxTreeEvent &aEvent) | 
| void | onRightClick (wxTreeItemId aItem) | 
| void | onContextMenu (wxContextMenuEvent &aEvent) | 
| void | onCharHook (wxKeyEvent &aKeyStroke) | 
| void | onTreeRightClick (wxTreeEvent &event) | 
| void | onTreeEditFinished (wxTreeEvent &event) | 
| wxString | getRootString () | 
| wxString | formatPageString (const wxString &aName, const wxString &aPage) | 
| void | setIdenticalSheetsHighlighted (const SCH_SHEET_PATH &path, bool highLighted=true) | 
| When renaming the sheets in tree it is helpful to highlight the identical sheets which got renamed by renaming the current sheet.   | |
| void | renameIdenticalSheets (const SCH_SHEET_PATH &renamedSheet, const wxString newName, SCH_COMMIT *commit) | 
| Rename all sheets in a hierarchial desing which has the same source renamed sheet.   | |
| void | OnPaint (wxPaintEvent &event) | 
Private Attributes | |
| SCH_SHEET_PATH | m_list | 
| SCH_EDIT_FRAME * | m_frame | 
| HIERARCHY_TREE * | m_tree | 
| bool | m_events_bound | 
| std::set< wxString > | m_collapsedPaths | 
| bool | m_leftBorder | 
| bool | m_rightBorder | 
| bool | m_topBorder | 
| bool | m_bottomBorder | 
| KIGFX::COLOR4D | m_borderColor | 
Definition at line 71 of file hierarchy_pane.h.
| Enumerator | |
|---|---|
| EDIT_PAGE_NUMBER | |
| EXPAND_ALL | |
| COLLAPSE_ALL | |
| RENAME | |
| NEW_TOP_LEVEL_SHEET | |
| DELETE_TOP_LEVEL_SHEET | |
Definition at line 74 of file hierarchy_pane.h.
| HIERARCHY_PANE::HIERARCHY_PANE | ( | SCH_EDIT_FRAME * | aParent | ) | 
Definition at line 66 of file hierarchy_pane.cpp.
References KiBitmap(), KiBitmapBundle(), m_collapsedPaths, m_events_bound, m_frame, PROJECT_LOCAL_SETTINGS::m_SchHierarchyCollapsed, m_tree, onCharHook(), onContextMenu(), onSelectSheetPath(), onTreeEditFinished(), onTreeItemRightClick(), path, tree_nosel, tree_sel, UpdateHierarchyTree(), and WX_PANEL::WX_PANEL().
| HIERARCHY_PANE::~HIERARCHY_PANE | ( | ) | 
Definition at line 118 of file hierarchy_pane.cpp.
References m_tree, onCharHook(), onContextMenu(), onSelectSheetPath(), onTreeEditFinished(), and onTreeItemRightClick().
      
  | 
  private | 
Create the hierarchical tree of the schematic.
| [in] | aList | is the SCH_SHEET_PATH list to explore. | 
| aPreviousmenu | is the wxTreeItemId used as parent to add sub items. | 
Definition at line 129 of file hierarchy_pane.cpp.
References buildHierarchyTree(), formatPageString(), SCH_SHEET::GetField(), SCH_SHEET::GetFileName(), SCH_SHEET_PATH::GetPageNumber(), SCH_SCREEN::GetSheets(), SCH_FIELD::GetShownText(), SCH_SHEET_PATH::LastScreen(), m_tree, SCH_SHEET_PATH::pop_back(), SCH_SHEET_PATH::push_back(), and SHEET_NAME.
Referenced by buildHierarchyTree(), and UpdateHierarchyTree().
      
  | 
  private | 
Definition at line 804 of file hierarchy_pane.cpp.
References _.
Referenced by buildHierarchyTree(), onTreeEditFinished(), renameIdenticalSheets(), UpdateHierarchyTree(), and UpdateLabelsHierarchyTree().
| std::vector< wxString > HIERARCHY_PANE::GetCollapsedPaths | ( | ) | const | 
Returns a list of sheet paths for nodes that are currently collapsed.
Definition at line 443 of file hierarchy_pane.cpp.
References TREE_ITEM_DATA::m_SheetPath, m_tree, and SCH_SHEET_PATH::PathAsString().
      
  | 
  private | 
Definition at line 788 of file hierarchy_pane.cpp.
Referenced by UpdateHierarchyTree().
      
  | 
  private | 
Definition at line 735 of file hierarchy_pane.cpp.
References ACTIONS::collapseAll, ACTIONS::expandAll, m_tree, MD_ALT, MD_ALTGR, MD_CTRL, MD_META, MD_SHIFT, and MD_SUPER.
Referenced by HIERARCHY_PANE(), and ~HIERARCHY_PANE().
      
  | 
  private | 
Definition at line 485 of file hierarchy_pane.cpp.
References onRightClick().
Referenced by HIERARCHY_PANE(), UpdateHierarchySelection(), UpdateHierarchyTree(), and ~HIERARCHY_PANE().
      
  | 
  privateinherited | 
Definition at line 47 of file wx_panel.cpp.
References m_borderColor, m_bottomBorder, m_leftBorder, m_rightBorder, m_topBorder, KIGFX::COLOR4D::Mix(), KIGFX::COLOR4D::ToColour(), and KIGFX::COLOR4D::UNSPECIFIED.
Referenced by WX_PANEL(), and ~WX_PANEL().
      
  | 
  private | 
Definition at line 492 of file hierarchy_pane.cpp.
References _, COLLAPSE_ALL, ACTIONS::collapseAll, DELETE_TOP_LEVEL_SHEET, EDIT_PAGE_NUMBER, EXPAND_ALL, ACTIONS::expandAll, SCH_SHEET::GetField(), SCH_SHEET::GetName(), SCH_SHEET_PATH::GetPageNumber(), SCH_SHEET_PATH::Last(), SCH_SHEET_PATH::LastScreen(), m_frame, TREE_ITEM_DATA::m_SheetPath, m_tree, COMMIT::Modify(), NEW_TOP_LEVEL_SHEET, SCH_SHEET_PATH::PathHumanReadable(), SCH_SHEET_PATH::pop_back(), SCH_COMMIT::Push(), RENAME, SCH_SCREEN::SetFileName(), setIdenticalSheetsHighlighted(), BASE_SCREEN::SetPageNumber(), SCH_SHEET_PATH::SetPageNumber(), SCH_SHEET::SetScreen(), SCH_FIELD::SetText(), SHEET_NAME, SCH_SHEET_PATH::size(), UpdateHierarchyTree(), and UpdateLabelsHierarchyTree().
Referenced by onContextMenu(), and onTreeItemRightClick().
      
  | 
  private | 
Open the selected sheet and display the corresponding screen when a tree item is selected.
Definition at line 380 of file hierarchy_pane.cpp.
References SCH_ACTIONS::changeSheet, m_frame, TREE_ITEM_DATA::m_SheetPath, and m_tree.
Referenced by HIERARCHY_PANE(), UpdateHierarchySelection(), UpdateHierarchyTree(), and ~HIERARCHY_PANE().
      
  | 
  private | 
Definition at line 676 of file hierarchy_pane.cpp.
References _, COMMIT::Empty(), formatPageString(), SCH_SHEET::GetField(), SCH_SHEET::GetName(), SCH_SHEET_PATH::GetPageNumber(), SCH_SHEET::GetScreen(), SCH_SHEET_PATH::GetSheet(), SCH_SHEET_PATH::Last(), m_frame, TREE_ITEM_DATA::m_SheetPath, m_tree, COMMIT::Modify(), SCH_COMMIT::Push(), renameIdenticalSheets(), setIdenticalSheetsHighlighted(), SCH_SHEET::SetName(), SHEET_NAME, and SCH_SHEET_PATH::size().
Referenced by HIERARCHY_PANE(), and ~HIERARCHY_PANE().
      
  | 
  private | 
Definition at line 479 of file hierarchy_pane.cpp.
References onRightClick().
Referenced by HIERARCHY_PANE(), UpdateHierarchySelection(), UpdateHierarchyTree(), and ~HIERARCHY_PANE().
      
  | 
  private | 
References path.
      
  | 
  private | 
Rename all sheets in a hierarchial desing which has the same source renamed sheet.
Definition at line 838 of file hierarchy_pane.cpp.
References SCH_SHEET_PATH::Cmp(), formatPageString(), SCH_SHEET::GetField(), SCH_SHEET::GetName(), SCH_SHEET_PATH::GetPageNumber(), SCH_SHEET::GetScreen(), SCH_SHEET_PATH::GetSheet(), SCH_SHEET_PATH::Last(), m_frame, TREE_ITEM_DATA::m_SheetPath, m_tree, COMMIT::Modify(), recursiveDescent(), SCH_SHEET::SetName(), SHEET_NAME, and SCH_SHEET_PATH::size().
Referenced by onTreeEditFinished().
      
  | 
  inlineinherited | 
Definition at line 47 of file wx_panel.h.
References m_borderColor.
Referenced by SYMBOL_TREE_SYNCHRONIZING_ADAPTER::ShowPreview().
      
  | 
  inlineinherited | 
Definition at line 39 of file wx_panel.h.
References m_bottomBorder, m_leftBorder, m_rightBorder, and m_topBorder.
Referenced by APPEARANCE_CONTROLS::APPEARANCE_CONTROLS(), APPEARANCE_CONTROLS_3D::APPEARANCE_CONTROLS_3D(), PAGED_DIALOG::PAGED_DIALOG(), PANEL_SCH_SELECTION_FILTER::PANEL_SCH_SELECTION_FILTER(), PANEL_SELECTION_FILTER::PANEL_SELECTION_FILTER(), and SYMBOL_TREE_SYNCHRONIZING_ADAPTER::ShowPreview().
      
  | 
  private | 
When renaming the sheets in tree it is helpful to highlight the identical sheets which got renamed by renaming the current sheet.
Definition at line 809 of file hierarchy_pane.cpp.
References SCH_SHEET_PATH::Cmp(), SCH_SHEET_PATH::Last(), TREE_ITEM_DATA::m_SheetPath, m_tree, path, and recursiveDescent().
Referenced by onRightClick(), and onTreeEditFinished().
| void HIERARCHY_PANE::UpdateHierarchySelection | ( | ) | 
Updates the tree's selection to match current page.
Definition at line 160 of file hierarchy_pane.cpp.
References m_events_bound, m_frame, TREE_ITEM_DATA::m_SheetPath, m_tree, onContextMenu(), onSelectSheetPath(), onTreeItemRightClick(), and recursiveDescent().
Referenced by UpdateHierarchyTree().
| void HIERARCHY_PANE::UpdateHierarchyTree | ( | bool | aClear = false | ) | 
Update the hierarchical tree of the schematic.
Definition at line 246 of file hierarchy_pane.cpp.
References buildHierarchyTree(), formatPageString(), getRootString(), SCH_SHEET_LIST::HasPath(), m_collapsedPaths, m_events_bound, m_frame, m_list, TREE_ITEM_DATA::m_SheetPath, m_tree, onContextMenu(), onSelectSheetPath(), onTreeItemRightClick(), SCH_SHEET_PATH::Path(), SCH_SHEET_PATH::PathAsString(), and UpdateHierarchySelection().
Referenced by HIERARCHY_PANE(), and onRightClick().
| void HIERARCHY_PANE::UpdateLabelsHierarchyTree | ( | ) | 
Update the labels of the hierarchical tree of the schematic.
Must be called only for an up to date tree, to update displayed labels after a sheet name or a sheet number change.
Definition at line 398 of file hierarchy_pane.cpp.
References formatPageString(), SCH_SHEET::GetField(), SCH_SHEET_PATH::GetPageNumber(), SCH_FIELD::GetShownText(), SCH_SHEET_PATH::Last(), TREE_ITEM_DATA::m_SheetPath, m_tree, recursiveDescent(), and SHEET_NAME.
Referenced by onRightClick().
      
  | 
  privateinherited | 
Definition at line 61 of file wx_panel.h.
Referenced by OnPaint(), SetBorderColor(), and WX_PANEL().
      
  | 
  privateinherited | 
Definition at line 59 of file wx_panel.h.
Referenced by OnPaint(), SetBorders(), and WX_PANEL().
      
  | 
  private | 
Definition at line 162 of file hierarchy_pane.h.
Referenced by HIERARCHY_PANE(), and UpdateHierarchyTree().
      
  | 
  private | 
Definition at line 161 of file hierarchy_pane.h.
Referenced by HIERARCHY_PANE(), UpdateHierarchySelection(), and UpdateHierarchyTree().
      
  | 
  private | 
Definition at line 158 of file hierarchy_pane.h.
Referenced by getRootString(), HIERARCHY_PANE(), onRightClick(), onSelectSheetPath(), onTreeEditFinished(), renameIdenticalSheets(), UpdateHierarchySelection(), and UpdateHierarchyTree().
      
  | 
  privateinherited | 
Definition at line 56 of file wx_panel.h.
Referenced by OnPaint(), SetBorders(), and WX_PANEL().
      
  | 
  private | 
Definition at line 157 of file hierarchy_pane.h.
Referenced by UpdateHierarchyTree().
      
  | 
  privateinherited | 
Definition at line 57 of file wx_panel.h.
Referenced by OnPaint(), SetBorders(), and WX_PANEL().
      
  | 
  privateinherited | 
Definition at line 58 of file wx_panel.h.
Referenced by OnPaint(), SetBorders(), and WX_PANEL().
      
  | 
  private | 
Definition at line 159 of file hierarchy_pane.h.
Referenced by buildHierarchyTree(), GetCollapsedPaths(), HIERARCHY_PANE(), onCharHook(), onRightClick(), onSelectSheetPath(), onTreeEditFinished(), renameIdenticalSheets(), setIdenticalSheetsHighlighted(), UpdateHierarchySelection(), UpdateHierarchyTree(), UpdateLabelsHierarchyTree(), and ~HIERARCHY_PANE().