mirror of
https://gitlab.com/kicad/code/kicad.git
synced 2025-04-11 13:30:11 +00:00
Eliminate the conditional pcbnew/cvpcb definition of PROJECT
This commit is contained in:
parent
017dafc8e3
commit
7e8b18035f
3d-viewer
3d_cache
3d_rendering
3d_viewer
dialogs
common
cvpcb
include
pcbnew
dialogs
dialog_footprint_associations.cppdialog_footprint_properties.cpppanel_fp_lib_table.cpppanel_fp_properties_3d_model.cpp
drc
exporters
files.cppfootprint_edit_frame.cppfootprint_editor_utils.cppfootprint_libraries_utils.cppfootprint_preview_panel.cppfootprint_viewer_frame.cppload_select_footprint.cppnetlist_reader
pcb_base_frame.cppproject_pcbnew.cppproject_pcbnew.hpython/scripting
tools
widgets
@ -61,7 +61,6 @@
|
||||
#define MASK_3D_CACHE "3D_CACHE"
|
||||
|
||||
static std::mutex mutex3D_cache;
|
||||
static std::mutex mutex3D_cacheManager;
|
||||
|
||||
|
||||
static bool isSHA1Same( const unsigned char* shaA, const unsigned char* shaB ) noexcept
|
||||
@ -697,63 +696,4 @@ void S3D_CACHE::CleanCacheDir( int aNumDaysOld )
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void PROJECT::Cleanup3DCache()
|
||||
{
|
||||
std::lock_guard<std::mutex> lock( mutex3D_cacheManager );
|
||||
|
||||
// Get the existing cache from the project
|
||||
S3D_CACHE* cache = dynamic_cast<S3D_CACHE*>( GetElem( ELEM_3DCACHE ) );
|
||||
|
||||
if( cache )
|
||||
{
|
||||
// We'll delete ".3dc" cache files older than this many days
|
||||
int clearCacheInterval = 0;
|
||||
|
||||
if( Pgm().GetCommonSettings() )
|
||||
clearCacheInterval = Pgm().GetCommonSettings()->m_System.clear_3d_cache_interval;
|
||||
|
||||
// An interval of zero means the user doesn't want to ever clear the cache
|
||||
|
||||
if( clearCacheInterval > 0 )
|
||||
cache->CleanCacheDir( clearCacheInterval );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
S3D_CACHE* PROJECT::Get3DCacheManager( bool aUpdateProjDir )
|
||||
{
|
||||
std::lock_guard<std::mutex> lock( mutex3D_cacheManager );
|
||||
|
||||
// Get the existing cache from the project
|
||||
S3D_CACHE* cache = dynamic_cast<S3D_CACHE*>( GetElem( ELEM_3DCACHE ) );
|
||||
|
||||
if( !cache )
|
||||
{
|
||||
// Create a cache if there is not one already
|
||||
cache = new S3D_CACHE();
|
||||
|
||||
wxFileName cfgpath;
|
||||
cfgpath.AssignDir( PATHS::GetUserSettingsPath() );
|
||||
cfgpath.AppendDir( wxT( "3d" ) );
|
||||
|
||||
cache->SetProgramBase( &Pgm() );
|
||||
cache->Set3DConfigDir( cfgpath.GetFullPath() );
|
||||
|
||||
SetElem( ELEM_3DCACHE, cache );
|
||||
aUpdateProjDir = true;
|
||||
}
|
||||
|
||||
if( aUpdateProjDir )
|
||||
cache->SetProject( this );
|
||||
|
||||
return cache;
|
||||
}
|
||||
|
||||
|
||||
FILENAME_RESOLVER* PROJECT::Get3DFilenameResolver()
|
||||
{
|
||||
return Get3DCacheManager()->GetResolver();
|
||||
}
|
||||
}
|
@ -33,6 +33,7 @@
|
||||
#include <core/profile.h> // To use GetRunningMicroSecs or another profiling utility
|
||||
#include <fp_lib_table.h>
|
||||
#include <eda_3d_viewer_frame.h>
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
|
||||
void RENDER_3D_OPENGL::addObjectTriangles( const FILLED_CIRCLE_2D* aCircle,
|
||||
@ -936,8 +937,8 @@ void RENDER_3D_OPENGL::load3dModels( REPORTER* aStatusReporter )
|
||||
{
|
||||
// FindRow() can throw an exception
|
||||
const FP_LIB_TABLE_ROW* fpRow =
|
||||
m_boardAdapter.GetBoard()->GetProject()->PcbFootprintLibs()->FindRow(
|
||||
libraryName, false );
|
||||
PROJECT_PCBNEW::PcbFootprintLibs( m_boardAdapter.GetBoard()->GetProject() )
|
||||
->FindRow( libraryName, false );
|
||||
|
||||
if( fpRow )
|
||||
footprintBasePath = fpRow->GetFullURI( true );
|
||||
|
@ -42,6 +42,7 @@
|
||||
#include <footprint.h>
|
||||
#include <fp_lib_table.h>
|
||||
#include <eda_3d_viewer_frame.h>
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
#include <base_units.h>
|
||||
#include <core/profile.h> // To use GetRunningMicroSecs or another profiling utility
|
||||
@ -1258,8 +1259,8 @@ void RENDER_3D_RAYTRACE::load3DModels( CONTAINER_3D& aDstContainer, bool aSkipMa
|
||||
{
|
||||
// FindRow() can throw an exception
|
||||
const FP_LIB_TABLE_ROW* fpRow =
|
||||
m_boardAdapter.GetBoard()->GetProject()->PcbFootprintLibs()->FindRow(
|
||||
libraryName, false );
|
||||
PROJECT_PCBNEW::PcbFootprintLibs( m_boardAdapter.GetBoard()->GetProject() )
|
||||
->FindRow( libraryName, false );
|
||||
|
||||
if( fpRow )
|
||||
footprintBasePath = fpRow->GetFullURI( true );
|
||||
|
@ -56,6 +56,7 @@
|
||||
#include <widgets/wx_infobar.h>
|
||||
#include <widgets/wx_aui_utils.h>
|
||||
#include <wildcards_and_files_ext.h>
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
#include <3d_navlib/nl_3d_viewer_plugin.h>
|
||||
|
||||
@ -116,7 +117,8 @@ EDA_3D_VIEWER_FRAME::EDA_3D_VIEWER_FRAME( KIWAY* aKiway, PCB_BASE_FRAME* aParent
|
||||
ANTIALIASING_MODE aaMode = static_cast<ANTIALIASING_MODE>( cfg->m_Render.opengl_AA_mode );
|
||||
|
||||
m_canvas = new EDA_3D_CANVAS( this, OGL_ATT_LIST::GetAttributesList( aaMode ), m_boardAdapter,
|
||||
m_currentCamera, Prj().Get3DCacheManager() );
|
||||
m_currentCamera,
|
||||
PROJECT_PCBNEW::Get3DCacheManager( &Prj() ) );
|
||||
|
||||
m_appearancePanel = new APPEARANCE_CONTROLS_3D( this, GetCanvas() );
|
||||
|
||||
@ -391,14 +393,14 @@ void EDA_3D_VIEWER_FRAME::ReloadRequest()
|
||||
|
||||
// This will schedule a request to load later
|
||||
if( m_canvas )
|
||||
m_canvas->ReloadRequest( GetBoard(), Prj().Get3DCacheManager() );
|
||||
m_canvas->ReloadRequest( GetBoard(), PROJECT_PCBNEW::Get3DCacheManager( &Prj() ) );
|
||||
}
|
||||
|
||||
|
||||
void EDA_3D_VIEWER_FRAME::NewDisplay( bool aForceImmediateRedraw )
|
||||
{
|
||||
if( m_canvas )
|
||||
m_canvas->ReloadRequest( GetBoard(), Prj().Get3DCacheManager() );
|
||||
m_canvas->ReloadRequest( GetBoard(), PROJECT_PCBNEW::Get3DCacheManager( &Prj() ) );
|
||||
|
||||
// After the ReloadRequest call, the refresh often takes a bit of time,
|
||||
// and it is made here only on request.
|
||||
|
@ -37,6 +37,7 @@
|
||||
#include <common_ogl/ogl_attr_list.h>
|
||||
#include <dpi_scaling_common.h>
|
||||
#include <pgm_base.h>
|
||||
#include <project_pcbnew.h>
|
||||
#include <settings/common_settings.h>
|
||||
#include <settings/settings_manager.h>
|
||||
#include <widgets/wx_infobar.h>
|
||||
@ -122,8 +123,7 @@ PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL( wxWindow* aParent, PCB_BASE_FRAM
|
||||
// Create the 3D canvas
|
||||
m_previewPane = new EDA_3D_CANVAS( this,
|
||||
OGL_ATT_LIST::GetAttributesList( ANTIALIASING_MODE::AA_8X ),
|
||||
m_boardAdapter, m_currentCamera,
|
||||
aFrame->Prj().Get3DCacheManager() );
|
||||
m_boardAdapter, m_currentCamera, PROJECT_PCBNEW::Get3DCacheManager( &aFrame->Prj() ) );
|
||||
|
||||
m_boardAdapter.SetBoard( m_dummyBoard );
|
||||
m_boardAdapter.m_IsBoardView = false;
|
||||
|
@ -652,6 +652,7 @@ set( PCB_COMMON_SRCS
|
||||
${CMAKE_SOURCE_DIR}/pcbnew/pcb_field.cpp
|
||||
${CMAKE_SOURCE_DIR}/pcbnew/pcb_text.cpp
|
||||
${CMAKE_SOURCE_DIR}/pcbnew/pcb_textbox.cpp
|
||||
${CMAKE_SOURCE_DIR}/pcbnew/project_pcbnew.cpp
|
||||
${CMAKE_SOURCE_DIR}/pcbnew/board_stackup_manager/board_stackup.cpp
|
||||
${CMAKE_SOURCE_DIR}/pcbnew/pcb_track.cpp
|
||||
${CMAKE_SOURCE_DIR}/pcbnew/zone.cpp
|
||||
|
@ -54,6 +54,7 @@
|
||||
#include <tools/cvpcb_actions.h>
|
||||
#include <tools/cvpcb_association_tool.h>
|
||||
#include <tools/cvpcb_control.h>
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
#include <wx/statline.h>
|
||||
#include <wx/stattext.h>
|
||||
@ -862,7 +863,7 @@ void CVPCB_MAINFRAME::DisplayStatus()
|
||||
}
|
||||
|
||||
// Extract the library information
|
||||
FP_LIB_TABLE* fptbl = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* fptbl = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
|
||||
if( fptbl->HasLibrary( lib ) )
|
||||
msg = wxString::Format( _( "Library location: %s" ), fptbl->GetFullURI( lib ) );
|
||||
@ -875,7 +876,7 @@ void CVPCB_MAINFRAME::DisplayStatus()
|
||||
|
||||
bool CVPCB_MAINFRAME::LoadFootprintFiles()
|
||||
{
|
||||
FP_LIB_TABLE* fptbl = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* fptbl = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
|
||||
// Check if there are footprint libraries in the footprint library table.
|
||||
if( !fptbl || !fptbl->GetLogicalLibs().size() )
|
||||
@ -982,7 +983,7 @@ void CVPCB_MAINFRAME::BuildLibrariesList()
|
||||
{
|
||||
COMMON_SETTINGS* cfg = Pgm().GetCommonSettings();
|
||||
PROJECT_FILE& project = Kiway().Prj().GetProjectFile();
|
||||
FP_LIB_TABLE* tbl = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* tbl = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
std::set<wxString> pinnedMatches;
|
||||
std::set<wxString> otherMatches;
|
||||
m_librariesListBox->ClearList();
|
||||
|
@ -57,7 +57,7 @@
|
||||
#include <wx/choice.h>
|
||||
#include <wx/debug.h>
|
||||
#include <cvpcb_id.h>
|
||||
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
BEGIN_EVENT_TABLE( DISPLAY_FOOTPRINTS_FRAME, PCB_BASE_FRAME )
|
||||
EVT_CLOSE( DISPLAY_FOOTPRINTS_FRAME::OnCloseWindow )
|
||||
@ -412,7 +412,7 @@ FOOTPRINT* DISPLAY_FOOTPRINTS_FRAME::GetFootprint( const wxString& aFootprintNam
|
||||
wxString libNickname = From_UTF8( fpid.GetLibNickname().c_str() );
|
||||
wxString fpName = From_UTF8( fpid.GetLibItemName().c_str() );
|
||||
|
||||
FP_LIB_TABLE* fpTable = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* fpTable = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
wxASSERT( fpTable );
|
||||
|
||||
// See if the library requested is in the library table
|
||||
|
@ -32,6 +32,7 @@
|
||||
|
||||
#include <cvpcb_mainframe.h>
|
||||
#include <fp_conflict_assignment_selector.h>
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
|
||||
/**
|
||||
@ -134,7 +135,7 @@ bool CVPCB_MAINFRAME::readNetListAndFpFiles( const std::string& aNetlist )
|
||||
if( component->GetFPID().IsLegacy() )
|
||||
{
|
||||
// get this first here, it's possibly obsoleted if we get it too soon.
|
||||
FP_LIB_TABLE* tbl = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* tbl = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
|
||||
int guess = guessNickname( tbl, (LIB_ID*) &component->GetFPID() );
|
||||
|
||||
|
@ -276,27 +276,6 @@ public:
|
||||
// non-virtuals resident in PCBNEW link image(s). By being non-virtual, these
|
||||
// functions can get linked into the KIFACE that needs them, and only there.
|
||||
// In fact, the other KIFACEs don't even know they exist.
|
||||
#if defined( PCBNEW ) || defined( CVPCB )
|
||||
/**
|
||||
* Return the table of footprint libraries without Kiway, only from within Pcbnew.
|
||||
*/
|
||||
FP_LIB_TABLE* PcbFootprintLibs();
|
||||
|
||||
/**
|
||||
* Return a pointer to an instance of the 3D cache manager.
|
||||
*
|
||||
* An instance is created and initialized if appropriate.
|
||||
*
|
||||
* @return a pointer to an instance of the 3D cache manager or NULL on failure.
|
||||
*/
|
||||
S3D_CACHE* Get3DCacheManager( bool updateProjDir = false );
|
||||
|
||||
void Cleanup3DCache();
|
||||
|
||||
/// Accessor for 3D path resolver
|
||||
FILENAME_RESOLVER* Get3DFilenameResolver();
|
||||
#endif
|
||||
|
||||
|
||||
#if defined( EESCHEMA )
|
||||
// These are all prefaced with "Sch"
|
||||
|
@ -28,6 +28,7 @@
|
||||
#include <kiface_base.h>
|
||||
#include <fp_lib_table.h>
|
||||
#include <footprint.h>
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
|
||||
DIALOG_FOOTPRINT_ASSOCIATIONS::DIALOG_FOOTPRINT_ASSOCIATIONS( PCB_BASE_FRAME* aFrame,
|
||||
@ -57,7 +58,7 @@ bool DIALOG_FOOTPRINT_ASSOCIATIONS::TransferDataToWindow()
|
||||
wxString fpDesc;
|
||||
|
||||
PROJECT* project = m_footprint->GetBoard()->GetProject();
|
||||
FP_LIB_TABLE* libTable = project->PcbFootprintLibs();
|
||||
FP_LIB_TABLE* libTable = PROJECT_PCBNEW::PcbFootprintLibs( project );
|
||||
const LIB_TABLE_ROW* libTableRow = nullptr;
|
||||
|
||||
try
|
||||
|
@ -35,6 +35,7 @@
|
||||
#include <pcb_edit_frame.h>
|
||||
#include <pcbnew_settings.h>
|
||||
#include <pgm_base.h>
|
||||
#include <project_pcbnew.h>
|
||||
#include <kiplatform/ui.h>
|
||||
#include <widgets/grid_text_button_helpers.h>
|
||||
#include <widgets/text_ctrl_eval.h>
|
||||
@ -186,7 +187,7 @@ DIALOG_FOOTPRINT_PROPERTIES::~DIALOG_FOOTPRINT_PROPERTIES()
|
||||
|
||||
// free the memory used by all models, otherwise models which were
|
||||
// browsed but not used would consume memory
|
||||
Prj().Get3DCacheManager()->FlushCache( false );
|
||||
PROJECT_PCBNEW::Get3DCacheManager( &Prj() )->FlushCache( false );
|
||||
|
||||
// the GL canvas has to be visible before it is destroyed
|
||||
m_page = m_NoteBook->GetSelection();
|
||||
|
@ -67,6 +67,7 @@
|
||||
#include <settings/settings_manager.h>
|
||||
#include <paths.h>
|
||||
#include <macros.h>
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
// clang-format off
|
||||
|
||||
@ -1146,7 +1147,7 @@ void InvokePcbLibTableEditor( KIWAY* aKiway, wxWindow* aCaller )
|
||||
{
|
||||
FP_LIB_TABLE* globalTable = &GFootprintTable;
|
||||
wxString globalTablePath = FP_LIB_TABLE::GetGlobalTableFileName();
|
||||
FP_LIB_TABLE* projectTable = aKiway->Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* projectTable = PROJECT_PCBNEW::PcbFootprintLibs( &aKiway->Prj() );
|
||||
wxString projectTablePath = aKiway->Prj().FootprintLibTblName();
|
||||
wxString msg;
|
||||
|
||||
|
@ -44,6 +44,7 @@
|
||||
#include "dialogs/3d_cache_dialogs.h"
|
||||
#include <settings/settings_manager.h>
|
||||
#include <wx/defs.h>
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
enum MODELS_TABLE_COLUMNS
|
||||
{
|
||||
@ -97,7 +98,7 @@ PANEL_FP_PROPERTIES_3D_MODEL::PANEL_FP_PROPERTIES_3D_MODEL(
|
||||
m_modelsGrid->SetColAttr( COL_SHOWN, attr );
|
||||
m_modelsGrid->SetWindowStyleFlag( m_modelsGrid->GetWindowStyle() & ~wxHSCROLL );
|
||||
|
||||
m_frame->Prj().Get3DCacheManager()->GetResolver()->SetProgramBase( &Pgm() );
|
||||
PROJECT_PCBNEW::Get3DCacheManager( &m_frame->Prj() )->GetResolver()->SetProgramBase( &Pgm() );
|
||||
|
||||
m_previewPane = new PANEL_PREVIEW_3D_MODEL( this, m_frame, m_footprint, &m_shapes3D_list );
|
||||
|
||||
@ -117,7 +118,7 @@ PANEL_FP_PROPERTIES_3D_MODEL::~PANEL_FP_PROPERTIES_3D_MODEL()
|
||||
|
||||
// free the memory used by all models, otherwise models which were
|
||||
// browsed but not used would consume memory
|
||||
m_frame->Prj().Get3DCacheManager()->FlushCache( false );
|
||||
PROJECT_PCBNEW::Get3DCacheManager( &m_frame->Prj() )->FlushCache( false );
|
||||
|
||||
delete m_previewPane;
|
||||
}
|
||||
@ -154,7 +155,7 @@ void PANEL_FP_PROPERTIES_3D_MODEL::ReloadModelsFromFootprint()
|
||||
m_modelsGrid->ClearRows();
|
||||
|
||||
wxString origPath, alias, shortPath;
|
||||
FILENAME_RESOLVER* res = m_frame->Prj().Get3DCacheManager()->GetResolver();
|
||||
FILENAME_RESOLVER* res = PROJECT_PCBNEW::Get3DCacheManager( &m_frame->Prj() )->GetResolver();
|
||||
|
||||
for( const FP_3DMODEL& model : m_footprint->Models() )
|
||||
{
|
||||
@ -213,7 +214,7 @@ void PANEL_FP_PROPERTIES_3D_MODEL::On3DModelCellChanged( wxGridEvent& aEvent )
|
||||
if( aEvent.GetCol() == COL_FILENAME )
|
||||
{
|
||||
bool hasAlias = false;
|
||||
FILENAME_RESOLVER* res = m_frame->Prj().Get3DCacheManager()->GetResolver();
|
||||
FILENAME_RESOLVER* res = PROJECT_PCBNEW::Get3DCacheManager( &m_frame->Prj() )->GetResolver();
|
||||
wxString filename = m_modelsGrid->GetCellValue( aEvent.GetRow(), COL_FILENAME );
|
||||
|
||||
// Perform cleanup and validation on the filename if it isn't empty
|
||||
@ -308,7 +309,7 @@ void PANEL_FP_PROPERTIES_3D_MODEL::OnAdd3DModel( wxCommandEvent& )
|
||||
filter = (int) tmp;
|
||||
}
|
||||
|
||||
if( !S3D::Select3DModel( m_parentDialog, m_frame->Prj().Get3DCacheManager(), initialpath, filter, &model )
|
||||
if( !S3D::Select3DModel( m_parentDialog, PROJECT_PCBNEW::Get3DCacheManager( &m_frame->Prj() ), initialpath, filter, &model )
|
||||
|| model.m_Filename.empty() )
|
||||
{
|
||||
if( selected >= 0 )
|
||||
@ -323,7 +324,7 @@ void PANEL_FP_PROPERTIES_3D_MODEL::OnAdd3DModel( wxCommandEvent& )
|
||||
prj.SetRString( PROJECT::VIEWER_3D_PATH, initialpath );
|
||||
sidx = wxString::Format( wxT( "%i" ), filter );
|
||||
prj.SetRString( PROJECT::VIEWER_3D_FILTER_INDEX, sidx );
|
||||
FILENAME_RESOLVER* res = m_frame->Prj().Get3DCacheManager()->GetResolver();
|
||||
FILENAME_RESOLVER* res = PROJECT_PCBNEW::Get3DCacheManager( &m_frame->Prj() )->GetResolver();
|
||||
wxString alias;
|
||||
wxString shortPath;
|
||||
wxString filename = model.m_Filename;
|
||||
@ -429,7 +430,7 @@ MODEL_VALIDATE_ERRORS PANEL_FP_PROPERTIES_3D_MODEL::validateModelExists( const w
|
||||
return MODEL_VALIDATE_ERRORS::NO_FILENAME;
|
||||
|
||||
bool hasAlias = false;
|
||||
FILENAME_RESOLVER* resolv = m_frame->Prj().Get3DFilenameResolver();
|
||||
FILENAME_RESOLVER* resolv = PROJECT_PCBNEW::Get3DFilenameResolver( &m_frame->Prj() );
|
||||
|
||||
if( !resolv )
|
||||
return MODEL_VALIDATE_ERRORS::RESOLVE_FAIL;
|
||||
@ -441,7 +442,7 @@ MODEL_VALIDATE_ERRORS PANEL_FP_PROPERTIES_3D_MODEL::validateModelExists( const w
|
||||
const FP_LIB_TABLE_ROW* fpRow = nullptr;
|
||||
try
|
||||
{
|
||||
fpRow = m_frame->Prj().PcbFootprintLibs()->FindRow( libraryName, false );
|
||||
fpRow = PROJECT_PCBNEW::PcbFootprintLibs( &m_frame->Prj() )->FindRow( libraryName, false );
|
||||
}
|
||||
catch( ... )
|
||||
{
|
||||
@ -467,7 +468,7 @@ MODEL_VALIDATE_ERRORS PANEL_FP_PROPERTIES_3D_MODEL::validateModelExists( const w
|
||||
|
||||
void PANEL_FP_PROPERTIES_3D_MODEL::Cfg3DPath( wxCommandEvent& event )
|
||||
{
|
||||
if( S3D::Configure3DPaths( this, m_frame->Prj().Get3DCacheManager()->GetResolver() ) )
|
||||
if( S3D::Configure3DPaths( this, PROJECT_PCBNEW::Get3DCacheManager( &m_frame->Prj() )->GetResolver() ) )
|
||||
m_previewPane->UpdateDummyFootprint();
|
||||
}
|
||||
|
||||
|
@ -33,6 +33,7 @@
|
||||
#include <drc/drc_engine.h>
|
||||
#include <drc/drc_item.h>
|
||||
#include <drc/drc_test_provider.h>
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
/*
|
||||
Library parity test.
|
||||
@ -753,7 +754,7 @@ bool DRC_TEST_PROVIDER_LIBRARY_PARITY::Run()
|
||||
|
||||
std::map<LIB_ID, std::shared_ptr<FOOTPRINT>> libFootprintCache;
|
||||
|
||||
FP_LIB_TABLE* libTable = project->PcbFootprintLibs();
|
||||
FP_LIB_TABLE* libTable = PROJECT_PCBNEW::PcbFootprintLibs( project );
|
||||
wxString msg;
|
||||
int ii = 0;
|
||||
const int progressDelta = 250;
|
||||
|
@ -35,6 +35,7 @@
|
||||
#include <pad.h>
|
||||
#include <pcb_shape.h>
|
||||
#include <build_version.h>
|
||||
#include <project_pcbnew.h>
|
||||
#include <wx/msgdlg.h>
|
||||
#include "project.h"
|
||||
#include "kiway.h"
|
||||
@ -282,7 +283,7 @@ static void idf_export_footprint( BOARD* aPcb, FOOTPRINT* aFootprint, IDF3_BOARD
|
||||
|
||||
try
|
||||
{
|
||||
fpRow = aPcb->GetProject()->PcbFootprintLibs()->FindRow( libraryName, false );
|
||||
fpRow = PROJECT_PCBNEW::PcbFootprintLibs( aPcb->GetProject() )->FindRow( libraryName, false );
|
||||
}
|
||||
catch( ... )
|
||||
{
|
||||
@ -605,7 +606,7 @@ bool PCB_EDIT_FRAME::Export_IDF3( BOARD* aPcb, const wxString& aFullFileName,
|
||||
// Switch the locale to standard C (needed to print floating point numbers)
|
||||
LOCALE_IO toggle;
|
||||
|
||||
resolver = Prj().Get3DCacheManager()->GetResolver();
|
||||
resolver = PROJECT_PCBNEW::Get3DCacheManager( &Prj() )->GetResolver();
|
||||
|
||||
bool ok = true;
|
||||
double scale = pcbIUScale.MM_PER_IU; // we must scale internal units to mm for IDF
|
||||
|
@ -38,6 +38,7 @@
|
||||
#include "pad.h"
|
||||
#include "pcb_text.h"
|
||||
#include "pcb_track.h"
|
||||
#include <project_pcbnew.h>
|
||||
#include <core/arraydim.h>
|
||||
#include <filename_resolver.h>
|
||||
#include "plugins/3dapi/ifsg_all.h"
|
||||
@ -1003,7 +1004,7 @@ void EXPORTER_PCB_VRML::ExportVrmlFootprint( FOOTPRINT* aFootprint, std::ostream
|
||||
|
||||
try
|
||||
{
|
||||
fpRow = m_board->GetProject()->PcbFootprintLibs()->FindRow( libraryName, false );
|
||||
fpRow = PROJECT_PCBNEW::PcbFootprintLibs( m_board->GetProject() )->FindRow( libraryName, false );
|
||||
}
|
||||
catch( ... )
|
||||
{
|
||||
@ -1250,7 +1251,7 @@ bool EXPORTER_PCB_VRML::ExportVRML_File( PROJECT* aProject, wxString *aMessages,
|
||||
m_Subdir3DFpModels = subdir.GetAbsolutePath( wxFileName( aFullFileName ).GetPath() );
|
||||
|
||||
m_UseRelPathIn3DModelFilename = aUseRelativePaths;
|
||||
m_Cache3Dmodels = aProject->Get3DCacheManager();
|
||||
m_Cache3Dmodels = PROJECT_PCBNEW::Get3DCacheManager( aProject );
|
||||
|
||||
// When 3D models are separate files, for historical reasons the VRML unit
|
||||
// is expected to be 0.1 inch (2.54mm) instead of 1mm, so we adjust the m_BoardToVrmlScale
|
||||
|
@ -38,6 +38,7 @@
|
||||
#include <base_units.h>
|
||||
#include <filename_resolver.h>
|
||||
#include <trace_helpers.h>
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
#include <Message.hxx> // OpenCascade messenger
|
||||
#include <Message_PrinterOStream.hxx> // OpenCascade output messenger
|
||||
@ -219,7 +220,7 @@ bool EXPORTER_STEP::buildFootprint3DShapes( FOOTPRINT* aFootprint, VECTOR2D aOri
|
||||
{
|
||||
// FindRow() can throw an exception
|
||||
const FP_LIB_TABLE_ROW* fpRow =
|
||||
m_board->GetProject()->PcbFootprintLibs()->FindRow( libraryName, false );
|
||||
PROJECT_PCBNEW::PcbFootprintLibs( m_board->GetProject() )->FindRow( libraryName, false );
|
||||
|
||||
if( fpRow )
|
||||
footprintBasePath = fpRow->GetFullURI( true );
|
||||
|
@ -51,6 +51,7 @@
|
||||
#include <paths.h>
|
||||
#include <pgm_base.h>
|
||||
#include <project/project_file.h>
|
||||
#include <project_pcbnew.h>
|
||||
#include <project/project_local_settings.h>
|
||||
#include <project/net_settings.h>
|
||||
#include <plugins/cadstar/cadstar_pcb_archive_plugin.h>
|
||||
@ -790,7 +791,7 @@ bool PCB_EDIT_FRAME::OpenProjectFiles( const std::vector<wxString>& aFileSet, in
|
||||
}
|
||||
}
|
||||
|
||||
FP_LIB_TABLE* prjlibtable = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* prjlibtable = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
const wxString& project_env = PROJECT_VAR_NAME;
|
||||
wxString rel_path, env_path;
|
||||
|
||||
@ -810,7 +811,7 @@ bool PCB_EDIT_FRAME::OpenProjectFiles( const std::vector<wxString>& aFileSet, in
|
||||
|
||||
try
|
||||
{
|
||||
Prj().PcbFootprintLibs()->Save( tblName );
|
||||
PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->Save( tblName );
|
||||
}
|
||||
catch( const IO_ERROR& ioe )
|
||||
{
|
||||
|
@ -52,6 +52,7 @@
|
||||
#include <pcbnew_id.h>
|
||||
#include <pgm_base.h>
|
||||
#include <project.h>
|
||||
#include <project_pcbnew.h>
|
||||
#include <settings/settings_manager.h>
|
||||
#include <tool/action_toolbar.h>
|
||||
#include <tool/common_control.h>
|
||||
@ -934,7 +935,7 @@ void FOOTPRINT_EDIT_FRAME::UpdateTitle()
|
||||
{
|
||||
try
|
||||
{
|
||||
writable = Prj().PcbFootprintLibs()->IsFootprintLibWritable( fpid.GetLibNickname() );
|
||||
writable = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->IsFootprintLibWritable( fpid.GetLibNickname() );
|
||||
}
|
||||
catch( const IO_ERROR& )
|
||||
{
|
||||
@ -987,7 +988,7 @@ void FOOTPRINT_EDIT_FRAME::UpdateView()
|
||||
|
||||
void FOOTPRINT_EDIT_FRAME::initLibraryTree()
|
||||
{
|
||||
FP_LIB_TABLE* fpTable = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* fpTable = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
|
||||
WX_PROGRESS_REPORTER progressReporter( this, _( "Loading Footprint Libraries" ), 2 );
|
||||
|
||||
@ -1009,7 +1010,7 @@ void FOOTPRINT_EDIT_FRAME::initLibraryTree()
|
||||
|
||||
void FOOTPRINT_EDIT_FRAME::SyncLibraryTree( bool aProgress )
|
||||
{
|
||||
FP_LIB_TABLE* fpTable = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* fpTable = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
auto adapter = static_cast<FP_TREE_SYNCHRONIZING_ADAPTER*>( m_adapter.get() );
|
||||
LIB_ID target = GetTargetFPID();
|
||||
bool targetSelected = ( target == m_treePane->GetLibTree()->GetSelectedLibId() );
|
||||
|
@ -43,6 +43,7 @@
|
||||
#include <widgets/lib_tree.h>
|
||||
#include <pcb_layer_box_selector.h>
|
||||
#include <pcb_dimension.h>
|
||||
#include <project_pcbnew.h>
|
||||
#include <dialogs/dialog_dimension_properties.h>
|
||||
|
||||
using namespace std::placeholders;
|
||||
@ -318,7 +319,7 @@ void FOOTPRINT_EDIT_FRAME::KiwayMailIn( KIWAY_EXPRESS& mail )
|
||||
wxString libNickname;
|
||||
wxString msg;
|
||||
|
||||
FP_LIB_TABLE* libTable = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* libTable = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
const LIB_TABLE_ROW* libTableRow = libTable->FindRowByURI( fpFileName.GetPath() );
|
||||
|
||||
if( !libTableRow )
|
||||
|
@ -46,6 +46,7 @@
|
||||
#include <env_paths.h>
|
||||
#include <paths.h>
|
||||
#include <settings/settings_manager.h>
|
||||
#include <project_pcbnew.h>
|
||||
#include <project/project_file.h>
|
||||
#include <footprint_editor_settings.h>
|
||||
#include "footprint_viewer_frame.h"
|
||||
@ -285,7 +286,7 @@ void FOOTPRINT_EDIT_FRAME::ExportFootprint( FOOTPRINT* aFootprint )
|
||||
wxString PCB_BASE_EDIT_FRAME::CreateNewProjectLibrary( const wxString& aLibName,
|
||||
const wxString& aProposedName )
|
||||
{
|
||||
return createNewLibrary( aLibName, aProposedName, Prj().PcbFootprintLibs() );
|
||||
return createNewLibrary( aLibName, aProposedName, PROJECT_PCBNEW::PcbFootprintLibs( &Prj() ) );
|
||||
}
|
||||
|
||||
|
||||
@ -434,7 +435,7 @@ FP_LIB_TABLE* PCB_BASE_EDIT_FRAME::selectLibTable( bool aOptional )
|
||||
switch( dlg.GetSelection() )
|
||||
{
|
||||
case 0: return &GFootprintTable;
|
||||
case 1: return Prj().PcbFootprintLibs();
|
||||
case 1: return PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
default: return nullptr;
|
||||
}
|
||||
}
|
||||
@ -491,7 +492,7 @@ bool PCB_BASE_EDIT_FRAME::AddLibrary( const wxString& aFilename, FP_LIB_TABLE* a
|
||||
if( isGlobal )
|
||||
GFootprintTable.Save( FP_LIB_TABLE::GetGlobalTableFileName() );
|
||||
else
|
||||
Prj().PcbFootprintLibs()->Save( Prj().FootprintLibTblName() );
|
||||
PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->Save( Prj().FootprintLibTblName() );
|
||||
}
|
||||
catch( const IO_ERROR& ioe )
|
||||
{
|
||||
@ -527,7 +528,7 @@ bool FOOTPRINT_EDIT_FRAME::DeleteFootprintFromLibrary( const LIB_ID& aFPID, bool
|
||||
|
||||
// Legacy libraries are readable, but modifying legacy format is not allowed
|
||||
// So prompt the user if he try to delete a footprint from a legacy lib
|
||||
wxString libfullname = Prj().PcbFootprintLibs()->FindRow( nickname )->GetFullURI();
|
||||
wxString libfullname = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->FindRow( nickname )->GetFullURI();
|
||||
|
||||
if( IO_MGR::GuessPluginTypeFromLibPath( libfullname ) == IO_MGR::LEGACY )
|
||||
{
|
||||
@ -535,7 +536,7 @@ bool FOOTPRINT_EDIT_FRAME::DeleteFootprintFromLibrary( const LIB_ID& aFPID, bool
|
||||
return false;
|
||||
}
|
||||
|
||||
if( !Prj().PcbFootprintLibs()->IsFootprintLibWritable( nickname ) )
|
||||
if( !PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->IsFootprintLibWritable( nickname ) )
|
||||
{
|
||||
wxString msg = wxString::Format( _( "Library '%s' is read only." ), nickname );
|
||||
ShowInfoBarError( msg );
|
||||
@ -552,7 +553,7 @@ bool FOOTPRINT_EDIT_FRAME::DeleteFootprintFromLibrary( const LIB_ID& aFPID, bool
|
||||
|
||||
try
|
||||
{
|
||||
Prj().PcbFootprintLibs()->FootprintDelete( nickname, fpname );
|
||||
PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->FootprintDelete( nickname, fpname );
|
||||
}
|
||||
catch( const IO_ERROR& ioe )
|
||||
{
|
||||
@ -606,7 +607,7 @@ void PCB_EDIT_FRAME::ExportFootprintsToLibrary( bool aStoreInNewLib, const wxStr
|
||||
{
|
||||
try
|
||||
{
|
||||
FP_LIB_TABLE* tbl = prj.PcbFootprintLibs();
|
||||
FP_LIB_TABLE* tbl = PROJECT_PCBNEW::PcbFootprintLibs( &prj );
|
||||
|
||||
if( !footprint->GetFPID().GetLibItemName().empty() ) // Handle old boards.
|
||||
{
|
||||
@ -648,7 +649,7 @@ void PCB_EDIT_FRAME::ExportFootprintsToLibrary( bool aStoreInNewLib, const wxStr
|
||||
|
||||
if( map )
|
||||
{
|
||||
const LIB_TABLE_ROW* row = Prj().PcbFootprintLibs()->FindRowByURI( libPath );
|
||||
const LIB_TABLE_ROW* row = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->FindRowByURI( libPath );
|
||||
|
||||
if( row )
|
||||
libNickname = row->GetNickName();
|
||||
@ -730,7 +731,7 @@ bool FOOTPRINT_EDIT_FRAME::SaveFootprint( FOOTPRINT* aFootprint )
|
||||
}
|
||||
}
|
||||
|
||||
FP_LIB_TABLE* tbl = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* tbl = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
|
||||
// Legacy libraries are readable, but modifying legacy format is not allowed
|
||||
// So prompt the user if he try to add/replace a footprint in a legacy lib
|
||||
@ -779,7 +780,7 @@ bool FOOTPRINT_EDIT_FRAME::DuplicateFootprint( FOOTPRINT* aFootprint )
|
||||
|
||||
// Legacy libraries are readable, but modifying legacy format is not allowed
|
||||
// So prompt the user if he try to add/replace a footprint in a legacy lib
|
||||
wxString libFullName = Prj().PcbFootprintLibs()->FindRow( libraryName )->GetFullURI();
|
||||
wxString libFullName = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->FindRow( libraryName )->GetFullURI();
|
||||
|
||||
if( IO_MGR::GuessPluginTypeFromLibPath( libFullName ) == IO_MGR::LEGACY )
|
||||
{
|
||||
@ -787,7 +788,7 @@ bool FOOTPRINT_EDIT_FRAME::DuplicateFootprint( FOOTPRINT* aFootprint )
|
||||
return false;
|
||||
}
|
||||
|
||||
FP_LIB_TABLE* tbl = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* tbl = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
int i = 1;
|
||||
wxString newName = footprintName;
|
||||
|
||||
@ -811,7 +812,7 @@ bool FOOTPRINT_EDIT_FRAME::SaveFootprintInLibrary( FOOTPRINT* aFootprint,
|
||||
{
|
||||
aFootprint->SetFPID( LIB_ID( wxEmptyString, aFootprint->GetFPID().GetLibItemName() ) );
|
||||
|
||||
Prj().PcbFootprintLibs()->FootprintSave( aLibraryName, aFootprint );
|
||||
PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->FootprintSave( aLibraryName, aFootprint );
|
||||
|
||||
aFootprint->SetFPID( LIB_ID( aLibraryName, aFootprint->GetFPID().GetLibItemName() ) );
|
||||
return true;
|
||||
@ -945,7 +946,7 @@ public:
|
||||
{
|
||||
COMMON_SETTINGS* cfg = Pgm().GetCommonSettings();
|
||||
PROJECT_FILE& project = aParent->Prj().GetProjectFile();
|
||||
FP_LIB_TABLE* tbl = aParent->Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* tbl = PROJECT_PCBNEW::PcbFootprintLibs( &aParent->Prj() );
|
||||
std::vector<wxString> nicknames = tbl->GetLogicalLibs();
|
||||
wxArrayString headers;
|
||||
std::vector<wxArrayString> itemsToDisplay;
|
||||
@ -1046,7 +1047,7 @@ bool FOOTPRINT_EDIT_FRAME::SaveFootprintAs( FOOTPRINT* aFootprint )
|
||||
if( aFootprint == nullptr )
|
||||
return false;
|
||||
|
||||
FP_LIB_TABLE* tbl = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* tbl = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
|
||||
SetMsgPanel( aFootprint );
|
||||
|
||||
@ -1075,7 +1076,7 @@ bool FOOTPRINT_EDIT_FRAME::SaveFootprintAs( FOOTPRINT* aFootprint )
|
||||
|
||||
// Legacy libraries are readable, but modifying legacy format is not allowed
|
||||
// So prompt the user if he try to add/replace a footprint in a legacy lib
|
||||
const FP_LIB_TABLE_ROW* row = Prj().PcbFootprintLibs()->FindRow( newLib );
|
||||
const FP_LIB_TABLE_ROW* row = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->FindRow( newLib );
|
||||
wxString libPath = row->GetFullURI();
|
||||
IO_MGR::PCB_FILE_T piType = IO_MGR::GuessPluginTypeFromLibPath( libPath );
|
||||
|
||||
@ -1208,7 +1209,7 @@ private:
|
||||
FOOTPRINT* PCB_BASE_FRAME::CreateNewFootprint( const wxString& aFootprintName,
|
||||
const wxString& aLibName, bool aQuiet )
|
||||
{
|
||||
FP_LIB_TABLE* tbl = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* tbl = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
wxString footprintName = aFootprintName;
|
||||
wxString msg;
|
||||
|
||||
@ -1335,7 +1336,7 @@ wxString PCB_BASE_FRAME::SelectLibrary( const wxString& aNicknameExisting )
|
||||
|
||||
COMMON_SETTINGS* cfg = Pgm().GetCommonSettings();
|
||||
PROJECT_FILE& project = Kiway().Prj().GetProjectFile();
|
||||
FP_LIB_TABLE* fptbl = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* fptbl = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
std::vector< wxArrayString > itemsToDisplay;
|
||||
std::vector< wxString > nicknames = fptbl->GetLogicalLibs();
|
||||
|
||||
|
@ -44,6 +44,7 @@
|
||||
#include <wx/stattext.h>
|
||||
#include <zoom_defines.h>
|
||||
#include <dialog_shim.h>
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
FOOTPRINT_PREVIEW_PANEL::FOOTPRINT_PREVIEW_PANEL( KIWAY* aKiway, wxWindow* aParent,
|
||||
UNITS_PROVIDER* aUnitsProvider,
|
||||
@ -162,7 +163,7 @@ bool FOOTPRINT_PREVIEW_PANEL::DisplayFootprint( const LIB_ID& aFPID )
|
||||
m_currentFootprint->SetParent( nullptr );
|
||||
}
|
||||
|
||||
FP_LIB_TABLE* fptbl = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* fptbl = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
|
||||
try
|
||||
{
|
||||
|
@ -45,6 +45,7 @@
|
||||
#include <pcbnew_id.h>
|
||||
#include <footprint_editor_settings.h>
|
||||
#include <pgm_base.h>
|
||||
#include <project_pcbnew.h>
|
||||
#include <project/project_file.h>
|
||||
#include <settings/settings_manager.h>
|
||||
#include <tool/action_toolbar.h>
|
||||
@ -422,7 +423,7 @@ void FOOTPRINT_VIEWER_FRAME::ReCreateLibraryList()
|
||||
|
||||
COMMON_SETTINGS* cfg = Pgm().GetCommonSettings();
|
||||
PROJECT_FILE& project = Kiway().Prj().GetProjectFile();
|
||||
std::vector<wxString> nicknames = Prj().PcbFootprintLibs()->GetLogicalLibs();
|
||||
std::vector<wxString> nicknames = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->GetLogicalLibs();
|
||||
std::vector<wxString> pinnedMatches;
|
||||
std::vector<wxString> otherMatches;
|
||||
|
||||
@ -507,7 +508,7 @@ void FOOTPRINT_VIEWER_FRAME::ReCreateFootprintList()
|
||||
|
||||
wxString nickname = getCurNickname();
|
||||
|
||||
fp_info_list->ReadFootprintFiles( Prj().PcbFootprintLibs(), !nickname ? nullptr : &nickname );
|
||||
fp_info_list->ReadFootprintFiles( PROJECT_PCBNEW::PcbFootprintLibs( &Prj() ), !nickname ? nullptr : &nickname );
|
||||
|
||||
if( fp_info_list->GetErrorCount() )
|
||||
{
|
||||
@ -934,7 +935,7 @@ void FOOTPRINT_VIEWER_FRAME::OnActivate( wxActivateEvent& event )
|
||||
if( event.GetActive() )
|
||||
{
|
||||
// Ensure we have the right library list:
|
||||
std::vector< wxString > libNicknames = Prj().PcbFootprintLibs()->GetLogicalLibs();
|
||||
std::vector< wxString > libNicknames = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->GetLogicalLibs();
|
||||
bool stale = false;
|
||||
|
||||
if( libNicknames.size() != m_libList->GetCount() )
|
||||
@ -1032,7 +1033,7 @@ bool FOOTPRINT_VIEWER_FRAME::ShowModal( wxString* aFootprint, wxWindow* aParent
|
||||
if( aFootprint && !aFootprint->IsEmpty() )
|
||||
{
|
||||
wxString msg;
|
||||
LIB_TABLE* fpTable = Prj().PcbFootprintLibs();
|
||||
LIB_TABLE* fpTable = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
LIB_ID fpid;
|
||||
|
||||
fpid.Parse( *aFootprint, true );
|
||||
@ -1146,7 +1147,7 @@ void FOOTPRINT_VIEWER_FRAME::UpdateTitle()
|
||||
{
|
||||
try
|
||||
{
|
||||
FP_LIB_TABLE* libtable = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* libtable = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
const LIB_TABLE_ROW* row = libtable->FindRow( getCurNickname() );
|
||||
|
||||
title = getCurNickname() + wxT( " \u2014 " ) + row->GetFullURI( true );
|
||||
@ -1200,7 +1201,7 @@ void FOOTPRINT_VIEWER_FRAME::SelectAndViewFootprint( int aMode )
|
||||
GetBoard()->DeleteAllFootprints();
|
||||
GetBoard()->GetNetInfo().RemoveUnusedNets();
|
||||
|
||||
FOOTPRINT* footprint = Prj().PcbFootprintLibs()->FootprintLoad( getCurNickname(),
|
||||
FOOTPRINT* footprint = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() )->FootprintLoad( getCurNickname(),
|
||||
getCurFootprintName() );
|
||||
|
||||
if( footprint )
|
||||
|
@ -49,6 +49,7 @@ using namespace std::placeholders;
|
||||
#include <widgets/lib_tree.h>
|
||||
#include <widgets/wx_progress_reporters.h>
|
||||
#include <dialog_pad_properties.h>
|
||||
#include <project_pcbnew.h>
|
||||
|
||||
|
||||
static wxArrayString s_FootprintHistoryList;
|
||||
@ -233,7 +234,7 @@ FOOTPRINT* PCB_BASE_FRAME::LoadFootprint( const LIB_ID& aFootprintId )
|
||||
|
||||
FOOTPRINT* PCB_BASE_FRAME::loadFootprint( const LIB_ID& aFootprintId )
|
||||
{
|
||||
FP_LIB_TABLE* fptbl = Prj().PcbFootprintLibs();
|
||||
FP_LIB_TABLE* fptbl = PROJECT_PCBNEW::PcbFootprintLibs( &Prj() );
|
||||
|
||||
wxCHECK_MSG( fptbl, nullptr, wxT( "Cannot look up LIB_ID in NULL FP_LIB_TABLE." ) );
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user