KiCad PCB EDA Suite
|
Dialog to show and edit symbol library tables. More...
#include <panel_fp_lib_table.h>
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 Attributes | |
wxNotebook * | m_notebook |
wxPanel * | m_global_panel |
WX_GRID * | m_global_grid |
wxPanel * | m_project_panel |
WX_GRID * | m_project_grid |
STD_BITMAP_BUTTON * | m_append_button |
SPLIT_BUTTON * | m_browseButton |
STD_BITMAP_BUTTON * | m_move_up_button |
STD_BITMAP_BUTTON * | m_move_down_button |
STD_BITMAP_BUTTON * | m_delete_button |
wxButton * | m_migrate_libs_button |
WX_GRID * | m_path_subs_grid |
Private Member Functions | |
bool | TransferDataFromWindow () override |
bool | verifyTables () |
Trim important fields, removes blank row entries, and checks for duplicates. More... | |
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 | adjustPathSubsGridColumns (int aWidth) |
void | populateEnvironReadOnlyTable () |
Populate the readonly environment variable table with names and values by examining all the full_uri columns. More... | |
void | populatePluginList () |
bool | convertLibrary (STRING_UTF8_MAP *aOldFileProps, const wxString &aOldFilePath, const wxString &aNewFilePath) |
FP_LIB_TABLE_GRID * | global_model () const |
FP_LIB_TABLE_GRID * | project_model () const |
FP_LIB_TABLE_GRID * | cur_model () const |
Private Attributes | |
FP_LIB_TABLE * | m_globalTable |
FP_LIB_TABLE * | m_projectTable |
PROJECT * | m_project |
wxString | m_projectBasePath |
DIALOG_EDIT_LIBRARY_TABLES * | m_parent |
WX_GRID * | m_cur_grid |
wxString | m_lastProjectLibDir |
std::map< IO_MGR::PCB_FILE_T, PLUGIN_FILE_DESC > | m_supportedFpFiles |
Static Private Attributes | |
static size_t | m_pageNdx = 0 |
Dialog to show and edit symbol library tables.
Definition at line 35 of file panel_fp_lib_table.h.
PANEL_FP_LIB_TABLE::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 | ||
) |
Definition at line 307 of file panel_fp_lib_table.cpp.
References _, browseLibrariesHandler(), COL_DESCR, COL_ENABLED, COL_NICKNAME, COL_TYPE, COL_URI, COL_VISIBLE, PLUGIN_FILE_DESC::FileFilter(), fileType(), PATHS::GetDefaultUserFootprintsPath(), SPLIT_BUTTON::GetSplitButtonMenu(), grid, KiBitmapBundle(), PANEL_FP_LIB_TABLE_BASE::m_append_button, PANEL_FP_LIB_TABLE_BASE::m_browseButton, m_cur_grid, PANEL_FP_LIB_TABLE_BASE::m_delete_button, PANEL_FP_LIB_TABLE_BASE::m_global_grid, PLUGIN_FILE_DESC::m_IsFile, PCBNEW_SETTINGS::m_lastFootprintLibDir, m_lastProjectLibDir, PANEL_FP_LIB_TABLE_BASE::m_move_down_button, PANEL_FP_LIB_TABLE_BASE::m_move_up_button, PANEL_FP_LIB_TABLE_BASE::m_notebook, m_pageNdx, m_parent, PANEL_FP_LIB_TABLE_BASE::m_path_subs_grid, PANEL_FP_LIB_TABLE_BASE::m_project_grid, m_projectBasePath, m_supportedFpFiles, Pgm(), populateEnvironReadOnlyTable(), populatePluginList(), SPLIT_BUTTON::SetBitmap(), STD_BITMAP_BUTTON::SetBitmap(), DIALOG_SHIM::SetInitialFocus(), SPLIT_BUTTON::SetMinSize(), WX_GRID::SetTable(), SPLIT_BUTTON::SetWidthPadding(), and IO_MGR::ShowType().
|
override |
Definition at line 492 of file panel_fp_lib_table.cpp.
References browseLibrariesHandler(), SPLIT_BUTTON::GetSplitButtonMenu(), PANEL_FP_LIB_TABLE_BASE::m_browseButton, PANEL_FP_LIB_TABLE_BASE::m_global_grid, PANEL_FP_LIB_TABLE_BASE::m_path_subs_grid, PANEL_FP_LIB_TABLE_BASE::m_project_grid, and m_supportedFpFiles.
|
private |
Definition at line 1071 of file panel_fp_lib_table.cpp.
References PANEL_FP_LIB_TABLE_BASE::m_path_subs_grid.
Referenced by onSizeGrid(), and populateEnvironReadOnlyTable().
|
overrideprivatevirtual |
Reimplemented from PANEL_FP_LIB_TABLE_BASE.
Definition at line 646 of file panel_fp_lib_table.cpp.
References COL_ENABLED, COL_NICKNAME, WX_GRID::CommitPendingChanges(), and m_cur_grid.
|
private |
Definition at line 931 of file panel_fp_lib_table.cpp.
References _, COL_NICKNAME, COL_TYPE, COL_URI, WX_GRID::CommitPendingChanges(), cur_model(), IO_MGR::FILE_TYPE_NONE, PLUGIN_FILE_DESC::FileFilter(), fileType(), LIB_ID::FixIllegalChars(), IO_MGR::KICAD_SEXP, KiCadFootprintLibPathExtension, m_cur_grid, PANEL_FP_LIB_TABLE_BASE::m_global_grid, PLUGIN_FILE_DESC::m_IsFile, PCBNEW_SETTINGS::m_lastFootprintLibDir, m_lastProjectLibDir, m_pageNdx, PANEL_FP_LIB_TABLE_BASE::m_project_grid, m_projectBasePath, m_supportedFpFiles, NormalizePath(), OKOrCancelDialog(), path, Pgm(), IO_MGR::ShowType(), and UTF8::wx_str().
Referenced by PANEL_FP_LIB_TABLE(), and ~PANEL_FP_LIB_TABLE().
|
private |
Definition at line 892 of file panel_fp_lib_table.cpp.
References IO_MGR::FILE_TYPE_NONE, PLUGIN::FootprintEnumerate(), PLUGIN::FootprintSave(), PLUGIN::GetEnumeratedFootprint(), IO_MGR::GuessPluginTypeFromLibPath(), IO_MGR::KICAD_SEXP, and IO_MGR::PluginFind().
Referenced by onMigrateLibraries().
|
inlineprivate |
Definition at line 84 of file panel_fp_lib_table.h.
References m_cur_grid.
Referenced by browseLibrariesHandler(), moveDownHandler(), moveUpHandler(), and verifyTables().
|
overrideprivatevirtual |
Reimplemented from PANEL_FP_LIB_TABLE_BASE.
Definition at line 664 of file panel_fp_lib_table.cpp.
References WX_GRID::CommitPendingChanges(), and m_cur_grid.
|
inlineprivate |
Definition at line 74 of file panel_fp_lib_table.h.
References PANEL_FP_LIB_TABLE_BASE::m_global_grid.
Referenced by populateEnvironReadOnlyTable(), TransferDataFromWindow(), and verifyTables().
|
overrideprivatevirtual |
Reimplemented from PANEL_FP_LIB_TABLE_BASE.
Definition at line 758 of file panel_fp_lib_table.cpp.
References WX_GRID::CommitPendingChanges(), cur_model(), m_cur_grid, and LIB_TABLE::m_rows.
|
overrideprivatevirtual |
Reimplemented from PANEL_FP_LIB_TABLE_BASE.
Definition at line 728 of file panel_fp_lib_table.cpp.
References WX_GRID::CommitPendingChanges(), cur_model(), m_cur_grid, and LIB_TABLE::m_rows.
|
overrideprivatevirtual |
Reimplemented from PANEL_FP_LIB_TABLE_BASE.
Definition at line 789 of file panel_fp_lib_table.cpp.
References _, COL_NICKNAME, COL_OPTIONS, COL_TYPE, COL_URI, WX_GRID::CommitPendingChanges(), convertLibrary(), DisplayErrorMessage(), ExpandEnvVarSubstitutions(), IsOK(), IO_MGR::KICAD_SEXP, KiCadFootprintLibPathExtension, m_cur_grid, PANEL_FP_LIB_TABLE_BASE::m_global_grid, m_parent, m_project, NormalizePath(), LIB_TABLE::ParseOptions(), Pgm(), and IO_MGR::ShowType().
|
overrideprivatevirtual |
Reimplemented from PANEL_FP_LIB_TABLE_BASE.
Definition at line 1082 of file panel_fp_lib_table.cpp.
References adjustPathSubsGridColumns().
|
overrideprivatevirtual |
Reimplemented from PANEL_FP_LIB_TABLE_BASE.
Definition at line 639 of file panel_fp_lib_table.cpp.
References m_cur_grid, PANEL_FP_LIB_TABLE_BASE::m_global_grid, PANEL_FP_LIB_TABLE_BASE::m_notebook, m_pageNdx, and PANEL_FP_LIB_TABLE_BASE::m_project_grid.
|
private |
Populate the readonly environment variable table with names and values by examining all the full_uri columns.
Definition at line 1122 of file panel_fp_lib_table.cpp.
References adjustPathSubsGridColumns(), WX_GRID::ClearRows(), COL_URI, global_model(), FP_LIB_TABLE::GlobalPathEnvVariableName(), KICAD7_3DMODEL_DIR, PANEL_FP_LIB_TABLE_BASE::m_path_subs_grid, project_model(), and PROJECT_VAR_NAME.
Referenced by PANEL_FP_LIB_TABLE().
|
private |
Definition at line 513 of file panel_fp_lib_table.cpp.
References PLUGIN::GetFootprintLibDesc(), IO_MGR::PLUGIN_REGISTRY::Instance(), and m_supportedFpFiles.
Referenced by PANEL_FP_LIB_TABLE().
|
inlineprivate |
Definition at line 79 of file panel_fp_lib_table.h.
References PANEL_FP_LIB_TABLE_BASE::m_project_grid.
Referenced by populateEnvironReadOnlyTable(), TransferDataFromWindow(), and verifyTables().
|
overrideprivate |
Definition at line 1090 of file panel_fp_lib_table.cpp.
References LIB_TABLE::Clear(), WX_GRID::CommitPendingChanges(), global_model(), m_cur_grid, m_globalTable, DIALOG_EDIT_LIBRARY_TABLES::m_GlobalTableChanged, m_parent, m_projectTable, DIALOG_EDIT_LIBRARY_TABLES::m_ProjectTableChanged, project_model(), LIB_TABLE::TransferRows(), and verifyTables().
|
private |
Trim important fields, removes blank row entries, and checks for duplicates.
Definition at line 528 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().
|
protectedinherited |
Definition at line 49 of file panel_fp_lib_table_base.h.
Referenced by PANEL_FP_LIB_TABLE(), PANEL_FP_LIB_TABLE_BASE::PANEL_FP_LIB_TABLE_BASE(), and PANEL_FP_LIB_TABLE_BASE::~PANEL_FP_LIB_TABLE_BASE().
|
protectedinherited |
Definition at line 50 of file panel_fp_lib_table_base.h.
Referenced by PANEL_FP_LIB_TABLE(), PANEL_FP_LIB_TABLE_BASE::PANEL_FP_LIB_TABLE_BASE(), and ~PANEL_FP_LIB_TABLE().
|
private |
Definition at line 97 of file panel_fp_lib_table.h.
Referenced by appendRowHandler(), browseLibrariesHandler(), cur_model(), deleteRowHandler(), moveDownHandler(), moveUpHandler(), onMigrateLibraries(), OnUpdateUI(), PANEL_FP_LIB_TABLE(), TransferDataFromWindow(), and verifyTables().
|
protectedinherited |
Definition at line 53 of file panel_fp_lib_table_base.h.
Referenced by PANEL_FP_LIB_TABLE(), PANEL_FP_LIB_TABLE_BASE::PANEL_FP_LIB_TABLE_BASE(), and PANEL_FP_LIB_TABLE_BASE::~PANEL_FP_LIB_TABLE_BASE().
|
protectedinherited |
Definition at line 46 of file panel_fp_lib_table_base.h.
Referenced by browseLibrariesHandler(), global_model(), onMigrateLibraries(), OnUpdateUI(), PANEL_FP_LIB_TABLE(), PANEL_FP_LIB_TABLE_BASE::PANEL_FP_LIB_TABLE_BASE(), and ~PANEL_FP_LIB_TABLE().
|
protectedinherited |
Definition at line 45 of file panel_fp_lib_table_base.h.
Referenced by PANEL_FP_LIB_TABLE_BASE::PANEL_FP_LIB_TABLE_BASE().
|
private |
Definition at line 90 of file panel_fp_lib_table.h.
Referenced by TransferDataFromWindow().
|
private |
Definition at line 101 of file panel_fp_lib_table.h.
Referenced by browseLibrariesHandler(), and PANEL_FP_LIB_TABLE().
|
protectedinherited |
Definition at line 54 of file panel_fp_lib_table_base.h.
Referenced by PANEL_FP_LIB_TABLE_BASE::PANEL_FP_LIB_TABLE_BASE(), and PANEL_FP_LIB_TABLE_BASE::~PANEL_FP_LIB_TABLE_BASE().
|
protectedinherited |
Definition at line 52 of file panel_fp_lib_table_base.h.
Referenced by PANEL_FP_LIB_TABLE(), PANEL_FP_LIB_TABLE_BASE::PANEL_FP_LIB_TABLE_BASE(), and PANEL_FP_LIB_TABLE_BASE::~PANEL_FP_LIB_TABLE_BASE().
|
protectedinherited |
Definition at line 51 of file panel_fp_lib_table_base.h.
Referenced by PANEL_FP_LIB_TABLE(), PANEL_FP_LIB_TABLE_BASE::PANEL_FP_LIB_TABLE_BASE(), and PANEL_FP_LIB_TABLE_BASE::~PANEL_FP_LIB_TABLE_BASE().
|
protectedinherited |
Definition at line 44 of file panel_fp_lib_table_base.h.
Referenced by OnUpdateUI(), PANEL_FP_LIB_TABLE(), PANEL_FP_LIB_TABLE_BASE::PANEL_FP_LIB_TABLE_BASE(), and verifyTables().
|
staticprivate |
Definition at line 98 of file panel_fp_lib_table.h.
Referenced by browseLibrariesHandler(), OnUpdateUI(), and PANEL_FP_LIB_TABLE().
|
private |
Definition at line 95 of file panel_fp_lib_table.h.
Referenced by onMigrateLibraries(), PANEL_FP_LIB_TABLE(), and TransferDataFromWindow().
|
protectedinherited |
Definition at line 55 of file panel_fp_lib_table_base.h.
Referenced by adjustPathSubsGridColumns(), PANEL_FP_LIB_TABLE(), PANEL_FP_LIB_TABLE_BASE::PANEL_FP_LIB_TABLE_BASE(), populateEnvironReadOnlyTable(), ~PANEL_FP_LIB_TABLE(), and PANEL_FP_LIB_TABLE_BASE::~PANEL_FP_LIB_TABLE_BASE().
|
private |
Definition at line 92 of file panel_fp_lib_table.h.
Referenced by onMigrateLibraries().
|
protectedinherited |
Definition at line 48 of file panel_fp_lib_table_base.h.
Referenced by browseLibrariesHandler(), OnUpdateUI(), PANEL_FP_LIB_TABLE(), PANEL_FP_LIB_TABLE_BASE::PANEL_FP_LIB_TABLE_BASE(), project_model(), and ~PANEL_FP_LIB_TABLE().
|
protectedinherited |
Definition at line 47 of file panel_fp_lib_table_base.h.
Referenced by PANEL_FP_LIB_TABLE_BASE::PANEL_FP_LIB_TABLE_BASE().
|
private |
Definition at line 93 of file panel_fp_lib_table.h.
Referenced by browseLibrariesHandler(), and PANEL_FP_LIB_TABLE().
|
private |
Definition at line 91 of file panel_fp_lib_table.h.
Referenced by TransferDataFromWindow().
|
private |
Definition at line 103 of file panel_fp_lib_table.h.
Referenced by browseLibrariesHandler(), PANEL_FP_LIB_TABLE(), populatePluginList(), and ~PANEL_FP_LIB_TABLE().