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

Dialog to show and edit symbol library tables. More...

#include <panel_fp_lib_table.h>

Inheritance diagram for PANEL_FP_LIB_TABLE:
PANEL_FP_LIB_TABLE_BASE

Public Member Functions

 PANEL_FP_LIB_TABLE (DIALOG_EDIT_LIBRARY_TABLES *aParent, PROJECT *aProject, FP_LIB_TABLE *aGlobalTable, const wxString &aGlobalTblPath, FP_LIB_TABLE *aProjectTable, const wxString &aProjectTblPath, const wxString &aProjectBasePath)
 
 ~PANEL_FP_LIB_TABLE () override
 

Protected Member Functions

virtual void onPageChange (wxNotebookEvent &event)
 

Protected Attributes

wxNotebook * m_notebook
 
wxPanel * m_global_panel
 
WX_GRIDm_global_grid
 
wxPanel * m_project_panel
 
WX_GRIDm_project_grid
 
STD_BITMAP_BUTTONm_append_button
 
SPLIT_BUTTONm_browseButton
 
STD_BITMAP_BUTTONm_move_up_button
 
STD_BITMAP_BUTTONm_move_down_button
 
STD_BITMAP_BUTTONm_delete_button
 
wxButton * m_resetGlobal
 
wxButton * m_migrate_libs_button
 
WX_GRIDm_path_subs_grid
 

Private Member Functions

bool TransferDataFromWindow () override
 
bool verifyTables ()
 Trim important fields, removes blank row entries, and checks for duplicates.
 
void OnUpdateUI (wxUpdateUIEvent &event) override
 
void appendRowHandler (wxCommandEvent &event) override
 
void browseLibrariesHandler (wxCommandEvent &event)
 
void deleteRowHandler (wxCommandEvent &event) override
 
void moveUpHandler (wxCommandEvent &event) override
 
void moveDownHandler (wxCommandEvent &event) override
 
void onMigrateLibraries (wxCommandEvent &event) override
 
void onSizeGrid (wxSizeEvent &event) override
 
void onGridCellLeftClickHandler (wxGridEvent &event)
 
void onPageChange (wxBookCtrlEvent &event) override
 
void onReset (wxCommandEvent &event) override
 
void setupGrid (WX_GRID *aGrid)
 
void adjustPathSubsGridColumns (int aWidth)
 
void populateEnvironReadOnlyTable ()
 Populate the readonly environment variable table with names and values by examining all the full_uri columns.
 
void populatePluginList ()
 
FP_LIB_TABLE_GRIDglobal_model () const
 
FP_LIB_TABLE_GRIDproject_model () const
 
FP_LIB_TABLE_GRIDcur_model () const
 

Private Attributes

FP_LIB_TABLEm_globalTable
 
FP_LIB_TABLEm_projectTable
 
PROJECTm_project
 
wxString m_projectBasePath
 
DIALOG_EDIT_LIBRARY_TABLESm_parent
 
wxArrayString m_pluginChoices
 
WX_GRIDm_cur_grid
 
wxString m_lastProjectLibDir
 
std::map< PCB_IO_MGR::PCB_FILE_T, IO_BASE::IO_FILE_DESCm_supportedFpFiles
 

Static Private Attributes

static size_t m_pageNdx = 0
 

Detailed Description

Dialog to show and edit symbol library tables.

Definition at line 35 of file panel_fp_lib_table.h.

Constructor & Destructor Documentation

◆ PANEL_FP_LIB_TABLE()

◆ ~PANEL_FP_LIB_TABLE()

Member Function Documentation

◆ adjustPathSubsGridColumns()

void PANEL_FP_LIB_TABLE::adjustPathSubsGridColumns ( int  aWidth)
private

◆ appendRowHandler()

void PANEL_FP_LIB_TABLE::appendRowHandler ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from PANEL_FP_LIB_TABLE_BASE.

Definition at line 671 of file panel_fp_lib_table.cpp.

References COL_ENABLED, COL_NICKNAME, WX_GRID::CommitPendingChanges(), and m_cur_grid.

◆ browseLibrariesHandler()

◆ cur_model()

FP_LIB_TABLE_GRID * PANEL_FP_LIB_TABLE::cur_model ( ) const
inlineprivate

Definition at line 87 of file panel_fp_lib_table.h.

References m_cur_grid.

Referenced by browseLibrariesHandler(), moveDownHandler(), moveUpHandler(), and verifyTables().

◆ deleteRowHandler()

void PANEL_FP_LIB_TABLE::deleteRowHandler ( wxCommandEvent &  event)
overrideprivatevirtual

Reimplemented from PANEL_FP_LIB_TABLE_BASE.

Definition at line 689 of file panel_fp_lib_table.cpp.

References WX_GRID::CommitPendingChanges(), and m_cur_grid.

◆ global_model()

FP_LIB_TABLE_GRID * PANEL_FP_LIB_TABLE::global_model ( ) const
inlineprivate

◆ moveDownHandler()

void PANEL_FP_LIB_TABLE::moveDownHandler ( wxCommandEvent &  event)
overrideprivatevirtual

◆ moveUpHandler()

void PANEL_FP_LIB_TABLE::moveUpHandler ( wxCommandEvent &  event)
overrideprivatevirtual

◆ onGridCellLeftClickHandler()

void PANEL_FP_LIB_TABLE::onGridCellLeftClickHandler ( wxGridEvent &  event)
private

Definition at line 1234 of file panel_fp_lib_table.cpp.

References grid.

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

◆ onMigrateLibraries()

◆ onPageChange() [1/2]

void PANEL_FP_LIB_TABLE::onPageChange ( wxBookCtrlEvent &  event)
overrideprivate

◆ onPageChange() [2/2]

virtual void PANEL_FP_LIB_TABLE_BASE::onPageChange ( wxNotebookEvent &  event)
inlineprotectedvirtualinherited

◆ onReset()

◆ onSizeGrid()

void PANEL_FP_LIB_TABLE::onSizeGrid ( wxSizeEvent &  event)
overrideprivatevirtual

Reimplemented from PANEL_FP_LIB_TABLE_BASE.

Definition at line 1082 of file panel_fp_lib_table.cpp.

References adjustPathSubsGridColumns().

◆ OnUpdateUI()

void PANEL_FP_LIB_TABLE::OnUpdateUI ( wxUpdateUIEvent &  event)
overrideprivatevirtual

Reimplemented from PANEL_FP_LIB_TABLE_BASE.

Definition at line 666 of file panel_fp_lib_table.cpp.

◆ populateEnvironReadOnlyTable()

void PANEL_FP_LIB_TABLE::populateEnvironReadOnlyTable ( )
private

Populate the readonly environment variable table with names and values by examining all the full_uri columns.

Definition at line 1167 of file panel_fp_lib_table.cpp.

References adjustPathSubsGridColumns(), WX_GRID::ClearRows(), COL_URI, ENV_VAR::GetVersionedEnvVarName(), global_model(), FP_LIB_TABLE::GlobalPathEnvVariableName(), PANEL_FP_LIB_TABLE_BASE::m_path_subs_grid, project_model(), and PROJECT_VAR_NAME.

Referenced by PANEL_FP_LIB_TABLE().

◆ populatePluginList()

void PANEL_FP_LIB_TABLE::populatePluginList ( )
private

◆ project_model()

FP_LIB_TABLE_GRID * PANEL_FP_LIB_TABLE::project_model ( ) const
inlineprivate

◆ setupGrid()

◆ TransferDataFromWindow()

◆ verifyTables()

bool PANEL_FP_LIB_TABLE::verifyTables ( )
private

Trim important fields, removes blank row entries, and checks for duplicates.

Returns
bool - true if tables are OK, else false.

Definition at line 549 of file panel_fp_lib_table.cpp.

References _, COL_NICKNAME, COL_URI, COL_VISIBLE, cur_model(), LIB_ID::FindIllegalLibraryNameChar(), global_model(), m_cur_grid, PANEL_FP_LIB_TABLE_BASE::m_notebook, and project_model().

Referenced by TransferDataFromWindow().

Member Data Documentation

◆ m_append_button

STD_BITMAP_BUTTON* PANEL_FP_LIB_TABLE_BASE::m_append_button
protectedinherited

◆ m_browseButton

SPLIT_BUTTON* PANEL_FP_LIB_TABLE_BASE::m_browseButton
protectedinherited

◆ m_cur_grid

◆ m_delete_button

STD_BITMAP_BUTTON* PANEL_FP_LIB_TABLE_BASE::m_delete_button
protectedinherited

◆ m_global_grid

◆ m_global_panel

wxPanel* PANEL_FP_LIB_TABLE_BASE::m_global_panel
protectedinherited

◆ m_globalTable

FP_LIB_TABLE* PANEL_FP_LIB_TABLE::m_globalTable
private

Definition at line 93 of file panel_fp_lib_table.h.

Referenced by onReset(), and TransferDataFromWindow().

◆ m_lastProjectLibDir

wxString PANEL_FP_LIB_TABLE::m_lastProjectLibDir
private

Definition at line 105 of file panel_fp_lib_table.h.

Referenced by browseLibrariesHandler(), and PANEL_FP_LIB_TABLE().

◆ m_migrate_libs_button

wxButton* PANEL_FP_LIB_TABLE_BASE::m_migrate_libs_button
protectedinherited

◆ m_move_down_button

STD_BITMAP_BUTTON* PANEL_FP_LIB_TABLE_BASE::m_move_down_button
protectedinherited

◆ m_move_up_button

STD_BITMAP_BUTTON* PANEL_FP_LIB_TABLE_BASE::m_move_up_button
protectedinherited

◆ m_notebook

wxNotebook* PANEL_FP_LIB_TABLE_BASE::m_notebook
protectedinherited

◆ m_pageNdx

size_t PANEL_FP_LIB_TABLE::m_pageNdx = 0
staticprivate

Definition at line 102 of file panel_fp_lib_table.h.

Referenced by browseLibrariesHandler(), onPageChange(), and PANEL_FP_LIB_TABLE().

◆ m_parent

DIALOG_EDIT_LIBRARY_TABLES* PANEL_FP_LIB_TABLE::m_parent
private

◆ m_path_subs_grid

◆ m_pluginChoices

wxArrayString PANEL_FP_LIB_TABLE::m_pluginChoices
private

Definition at line 99 of file panel_fp_lib_table.h.

Referenced by PANEL_FP_LIB_TABLE(), and setupGrid().

◆ m_project

PROJECT* PANEL_FP_LIB_TABLE::m_project
private

Definition at line 95 of file panel_fp_lib_table.h.

Referenced by onMigrateLibraries().

◆ m_project_grid

WX_GRID* PANEL_FP_LIB_TABLE_BASE::m_project_grid
protectedinherited

◆ m_project_panel

wxPanel* PANEL_FP_LIB_TABLE_BASE::m_project_panel
protectedinherited

◆ m_projectBasePath

wxString PANEL_FP_LIB_TABLE::m_projectBasePath
private

Definition at line 96 of file panel_fp_lib_table.h.

Referenced by browseLibrariesHandler(), PANEL_FP_LIB_TABLE(), and setupGrid().

◆ m_projectTable

FP_LIB_TABLE* PANEL_FP_LIB_TABLE::m_projectTable
private

Definition at line 94 of file panel_fp_lib_table.h.

Referenced by TransferDataFromWindow().

◆ m_resetGlobal

wxButton* PANEL_FP_LIB_TABLE_BASE::m_resetGlobal
protectedinherited

◆ m_supportedFpFiles

std::map<PCB_IO_MGR::PCB_FILE_T, IO_BASE::IO_FILE_DESC> PANEL_FP_LIB_TABLE::m_supportedFpFiles
private

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