From 2c5fcd7d2c687665e65782c231b690c735d65ee3 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 2 Aug 2013 17:25:53 +0200 Subject: [PATCH] pcbnew: tool initialization should belong to PCB_EDIT_FRAME to avoid linking errors on cvpcb. --- include/wxBasePcbFrame.h | 1 - include/wxPcbStruct.h | 1 + pcbnew/basepcbframe.cpp | 2 -- pcbnew/pcbframe.cpp | 3 ++- pcbnew/tools/pcb_tools.cpp | 4 ++-- 5 files changed, 5 insertions(+), 6 deletions(-) diff --git a/include/wxBasePcbFrame.h b/include/wxBasePcbFrame.h index 09677f5daf..7a569f3022 100644 --- a/include/wxBasePcbFrame.h +++ b/include/wxBasePcbFrame.h @@ -98,7 +98,6 @@ protected: TOOL_MANAGER *m_toolManager; TOOL_DISPATCHER *m_toolDispatcher; - void setupTools(); void updateGridSelectBox(); void updateZoomSelectBox(); virtual void unitsChangeRefresh(); diff --git a/include/wxPcbStruct.h b/include/wxPcbStruct.h index 6730815c3b..d03fcc1f06 100644 --- a/include/wxPcbStruct.h +++ b/include/wxPcbStruct.h @@ -117,6 +117,7 @@ protected: bool m_useCmpFileForFpNames; ///< is true, use the .cmp file from CvPcb, else use the netlist // to know the footprint name of components. + void setupTools(); void onGenericCommand( wxCommandEvent& aEvent ); // we'll use lower case function names for private member functions. diff --git a/pcbnew/basepcbframe.cpp b/pcbnew/basepcbframe.cpp index edc02934df..30cb46d540 100644 --- a/pcbnew/basepcbframe.cpp +++ b/pcbnew/basepcbframe.cpp @@ -115,8 +115,6 @@ PCB_BASE_FRAME::PCB_BASE_FRAME( wxWindow* aParent, ID_DRAWFRAME_TYPE aFrameType, m_galCanvas = new EDA_DRAW_PANEL_GAL( this, -1, wxPoint( 0, 0 ), m_FrameSize, EDA_DRAW_PANEL_GAL::GAL_TYPE_OPENGL ); - setupTools(); - m_auxiliaryToolBar = NULL; } diff --git a/pcbnew/pcbframe.cpp b/pcbnew/pcbframe.cpp index 67bfa67666..008464a9cf 100644 --- a/pcbnew/pcbframe.cpp +++ b/pcbnew/pcbframe.cpp @@ -321,6 +321,8 @@ PCB_EDIT_FRAME::PCB_EDIT_FRAME( wxWindow* parent, const wxString& title, for ( int i = 0; i < 10; i++ ) m_Macros[i].m_Record.clear(); + setupTools(); + SetBoard( new BOARD() ); // Create the PCB_LAYER_WIDGET *after* SetBoard(): @@ -481,7 +483,6 @@ PCB_EDIT_FRAME::PCB_EDIT_FRAME( wxWindow* parent, const wxString& title, } } - setupTools(); } PCB_EDIT_FRAME::~PCB_EDIT_FRAME() diff --git a/pcbnew/tools/pcb_tools.cpp b/pcbnew/tools/pcb_tools.cpp index 7843d6d7ec..d2c60a5498 100644 --- a/pcbnew/tools/pcb_tools.cpp +++ b/pcbnew/tools/pcb_tools.cpp @@ -36,11 +36,11 @@ #include "selection_tool.h" -void PCB_BASE_FRAME::setupTools() +void PCB_EDIT_FRAME::setupTools() { // create the manager and dispatcher. Route draw panel events to the dispatcher. m_toolManager = new TOOL_MANAGER; - m_toolDispatcher = new TOOL_DISPATCHER_PCBNEW( m_toolManager, this ); + m_toolDispatcher = new TOOL_DISPATCHER( m_toolManager, this ); m_galCanvas->SetEventDispatcher (m_toolDispatcher); // register our selection tool.