26#include <wx/tokenzr.h>
35wxObjectDataPtr<LIB_TREE_MODEL_ADAPTER>
39 return wxObjectDataPtr<LIB_TREE_MODEL_ADAPTER>( adapter );
45 aParent->GetViewerSettingsBase()->m_LibTree ),
55 for(
const wxString& libName :
m_libs->GetLibraryNames() )
57 if( !
m_libs->HasLibrary( libName,
true ) )
72 std::vector<LIB_TREE_ITEM*> libList;
76 std::unique_ptr<FOOTPRINT_INFO>
dummy = std::make_unique<FOOTPRINT_INFO_IMPL>( aLibName, wxEmptyString );
79 auto libBounds = std::equal_range( fullListStart, fullListEnd,
dummy,
80 [](
const std::unique_ptr<FOOTPRINT_INFO>& a,
81 const std::unique_ptr<FOOTPRINT_INFO>& b )
83 return StrNumCmp( a->GetLibNickname(), b->GetLibNickname(),
false ) < 0;
86 for(
auto i = libBounds.first; i != libBounds.second; ++i )
87 libList.push_back( i->get() );
The base frame for deriving all KiCad main window classes.
wxString GenerateInfo(LIB_ID const &aLibId, int aUnit) override
FOOTPRINT_LIBRARY_ADAPTER * m_libs
FP_TREE_MODEL_ADAPTER(PCB_BASE_FRAME *aParent, FOOTPRINT_LIBRARY_ADAPTER *aLibs)
Constructor; takes a set of libraries to be included in the search.
void AddLibraries(EDA_BASE_FRAME *aParent)
std::vector< LIB_TREE_ITEM * > getFootprints(const wxString &aLibName)
static wxObjectDataPtr< LIB_TREE_MODEL_ADAPTER > Create(PCB_BASE_FRAME *aParent, FOOTPRINT_LIBRARY_ADAPTER *aLibs)
Factory function: create a model adapter in a reference-counting container.
PROJECT & Prj() const
Return a reference to the PROJECT associated with this KIWAY.
A logical library item identifier and consists of various portions much like a URI.
LIB_TREE_MODEL_ADAPTER(EDA_BASE_FRAME *aParent, const wxString &aPinnedKey, APP_SETTINGS_BASE::LIB_TREE &aSettingsStruct)
Create the adapter.
LIB_TREE_NODE_ROOT m_tree
std::vector< wxString > m_shownColumns
LIB_TREE_NODE_LIBRARY & DoAddLibrary(const wxString &aNodeName, const wxString &aDesc, const std::vector< LIB_TREE_ITEM * > &aItemList, bool pinned, bool presorted)
Add the given list of symbols by alias.
Base PCB main window class for Pcbnew, Gerbview, and CvPcb footprint viewer.
virtual COMMON_SETTINGS * GetCommonSettings() const
The backing store for a PROJECT, in JSON format.
virtual PROJECT_FILE & GetProjectFile() const
bool contains(const _Container &__container, _Value __value)
Returns true if the container contains the given value.
PGM_BASE & Pgm()
The global program "get" accessor.
std::vector< FAB_LAYER_COLOR > dummy
int StrNumCmp(const wxString &aString1, const wxString &aString2, bool aIgnoreCase)
Compare two strings with alphanumerical content.
std::vector< wxString > pinned_fp_libs