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

#include <panel_preview_3d_model.h>

Inheritance diagram for PANEL_PREVIEW_3D_MODEL:
TOOLS_HOLDER PANEL_PREVIEW_3D_MODEL_BASE

Public Member Functions

 PANEL_PREVIEW_3D_MODEL (wxWindow *aParent, PCB_BASE_FRAME *aFrame, FOOTPRINT *aFootprint, std::vector< FP_3DMODEL > *aParentModelList)
 
 ~PANEL_PREVIEW_3D_MODEL ()
 
void OnMenuEvent (wxMenuEvent &aEvent)
 The TOOL_DISPATCHER needs these to work around some issues in wxWidgets where the menu events aren't captured by the menus themselves.
 
wxWindow * GetToolCanvas () const override
 Canvas access.
 
BOARD_ADAPTER & GetAdapter ()
 
CAMERA & GetCurrentCamera ()
 
void SetSelectedModel (int idx)
 Set the currently selected index in the model list so that the scale/rotation/offset controls can be updated.
 
void UpdateDummyFootprint (bool aRelaodRequired=true)
 Copy shapes from the current shape list which are flagged for preview to the copy of footprint that is on the preview dummy board.
 
void SetEmbeddedFilesDelegate (EMBEDDED_FILES *aDelegate)
 
FOOTPRINT * GetDummyFootprint () const
 Get the dummy footprint that is used for previewing the 3D model.
 
void SetExtrusionTransformMode (EXTRUDED_3D_BODY *aBody)
 
TOOL_MANAGER * GetToolManager () const
 Return the MVC controller.
 
TOOL_DISPATCHER * GetToolDispatcher () const
 
virtual void RegisterUIUpdateHandler (const TOOL_ACTION &aAction, const ACTION_CONDITIONS &aConditions)
 Register an action's update conditions with the UI layer to allow the UI to appropriately display the state of its controls.
 
virtual void RegisterUIUpdateHandler (int aID, const ACTION_CONDITIONS &aConditions)
 Register a UI update handler for the control with ID aID.
 
virtual void UnregisterUIUpdateHandler (const TOOL_ACTION &aAction)
 Unregister a UI handler for an action that was registered using RegisterUIUpdateHandler.
 
virtual void UnregisterUIUpdateHandler (int aID)
 Unregister a UI handler for a given ID that was registered using RegisterUIUpdateHandler.
 
virtual SELECTION & GetCurrentSelection ()
 Get the current selection from the canvas area.
 
virtual void PushTool (const TOOL_EVENT &aEvent)
 NB: the definition of "tool" is different at the user level.
 
virtual void PopTool (const TOOL_EVENT &aEvent)
 Pops a tool from the stack.
 
bool ToolStackIsEmpty ()
 
std::string CurrentToolName () const
 
bool IsCurrentTool (const TOOL_ACTION &aAction) const
 
virtual void DisplayToolMsg (const wxString &msg)
 
virtual void SelectToolbarAction (const TOOL_ACTION &aAction)
 Select the given action in the toolbar group which contains it, if any.
 
virtual void ShowChangedLanguage ()
 
bool GetDoImmediateActions () const
 Indicate that hotkeys should perform an immediate action even if another tool is currently active.
 
MOUSE_DRAG_ACTION GetDragAction () const
 Indicates whether a drag should draw a selection rectangle or drag selected (or unselected) objects.
 
bool GetMoveWarpsCursor () const
 Indicate that a move operation should warp the mouse pointer to the origin of the move object.
 
virtual void CommonSettingsChanged (int aFlags=0)
 Notification event that some of the common (suite-wide) settings have changed.
 
virtual void RefreshCanvas ()
 
virtual wxString ConfigBaseName ()
 

Public Attributes

TEXT_CTRL_EVAL * yoff
 

Protected Attributes

TOOL_MANAGER * m_toolManager
 
ACTIONS * m_actions
 
TOOL_DISPATCHER * m_toolDispatcher
 
SELECTION m_dummySelection
 
std::vector< std::string > m_toolStack
 
bool m_immediateActions
 
MOUSE_DRAG_ACTION m_dragAction
 
bool m_moveWarpsCursor
 
wxStaticText * m_staticText1
 
TEXT_CTRL_EVAL * xscale
 
wxSpinButton * m_spinXscale
 
wxStaticText * m_staticText2
 
TEXT_CTRL_EVAL * yscale
 
wxSpinButton * m_spinYscale
 
wxStaticText * m_staticText3
 
TEXT_CTRL_EVAL * zscale
 
wxSpinButton * m_spinZscale
 
wxStaticText * m_staticText11
 
TEXT_CTRL_EVAL * xrot
 
wxSpinButton * m_spinXrot
 
wxStaticText * m_staticText21
 
TEXT_CTRL_EVAL * yrot
 
wxSpinButton * m_spinYrot
 
wxStaticText * m_staticText31
 
TEXT_CTRL_EVAL * zrot
 
wxSpinButton * m_spinZrot
 
wxStaticText * m_staticText12
 
TEXT_CTRL_EVAL * xoff
 
wxSpinButton * m_spinXoffset
 
wxStaticText * m_staticText22
 
wxSpinButton * m_spinYoffset
 
wxStaticText * m_staticText32
 
TEXT_CTRL_EVAL * zoff
 
wxSpinButton * m_spinZoffset
 
wxSlider * m_opacity
 
wxStaticText * m_previewLabel
 
wxButton * m_alignButton
 
wxBoxSizer * m_SizerPanelView
 
STD_BITMAP_BUTTON * m_bpvISO
 
STD_BITMAP_BUTTON * m_bpvBodyStyle
 
STD_BITMAP_BUTTON * m_bpvLeft
 
STD_BITMAP_BUTTON * m_bpvRight
 
STD_BITMAP_BUTTON * m_bpvFront
 
STD_BITMAP_BUTTON * m_bpvBack
 
STD_BITMAP_BUTTON * m_bpvTop
 
STD_BITMAP_BUTTON * m_bpvBottom
 
STD_BITMAP_BUTTON * m_bpUpdate
 
STD_BITMAP_BUTTON * m_bpSettings
 

Private Types

enum class  ALIGN_STATE { IDLE , PICK_MODEL , PICK_FOOTPRINT , SOLVED }
 

Private Member Functions

void onAlign (wxCommandEvent &aEvent) override
 
void onAlignUpdateUI (wxUpdateUIEvent &aEvent) override
 
void onAlignKey (wxKeyEvent &aEvent)
 
void onAlignAnimation (wxTimerEvent &aEvent)
 
void tickAlignmentAnimation ()
 
bool canAlign () const
 
bool pickAlignment (const RAY &aRay)
 
void hoverAlignment (const std::optional< RAY > &aRay)
 
const S3DMODEL * alignmentModel ()
 
void dismissAlignmentInfoBar ()
 
void cancelAlignment ()
 
void restoreAlignmentView ()
 
void stopPicking ()
 
void refreshAlignmentView ()
 
void applyAlignment ()
 
std::optional< size_t > alignmentRegionAt (const RAY &aRay)
 Region under the ray, as an index into m_alignRegions.
 
std::vector< SFVEC3F > alignmentRegionTriangles (size_t aRegion) const
 Model-space triangle soup of one region, for the selection overlay.
 
std::vector< SFVEC3F > alignmentPadTriangles (const PAD &aPad) const
 World-space triangle soup covering a pad's copper shape.
 
glm::mat4 alignmentModelMatrix () const
 Transform carrying the selected model's geometry into world units.
 
void updateAlignmentOverlays ()
 Push the selection and roll-over overlays to the canvas.
 
void startAlignmentAnimation (const VECTOR3D &aRotation, const VECTOR3D &aOffset)
 Slide the preview from its current placement to the solved one.
 
void stopAlignmentAnimation ()
 
void loadSettings ()
 Load 3D relevant settings from the user configuration.
 
void updateOrientation (wxCommandEvent &event) override
 It will receive the events from editing the fields.
 
void onMouseWheelScale (wxMouseEvent &event) override
 
void onMouseWheelRot (wxMouseEvent &event) override
 
void onMouseWheelOffset (wxMouseEvent &event) override
 
void onIncrementRot (wxSpinEvent &event) override
 
void onDecrementRot (wxSpinEvent &event) override
 
void onIncrementScale (wxSpinEvent &event) override
 
void onDecrementScale (wxSpinEvent &event) override
 
void onIncrementOffset (wxSpinEvent &event) override
 
void onDecrementOffset (wxSpinEvent &event) override
 
void onOpacitySlider (wxCommandEvent &event) override
 
void doIncrementScale (wxSpinEvent &aEvent, double aSign)
 
void doIncrementRotation (wxSpinEvent &aEvent, double aSign)
 
void doIncrementOffset (wxSpinEvent &aEvent, double aSign)
 
void onUnitsChanged (wxCommandEvent &aEvent)
 
void onPanelShownEvent (wxCommandEvent &aEvent)
 
wxString formatScaleValue (double aValue)
 
wxString formatRotationValue (double aValue)
 
wxString formatOffsetValue (double aValue)
 
void evalRotationValue (TEXT_CTRL_EVAL *aRotationControl)
 
void View3DISO (wxCommandEvent &event) override
 
void setBodyStyleView (wxCommandEvent &event) override
 
void View3DLeft (wxCommandEvent &event) override
 
void View3DFront (wxCommandEvent &event) override
 
void View3DTop (wxCommandEvent &event) override
 
void View3DUpdate (wxCommandEvent &event) override
 
void View3DSettings (wxCommandEvent &event) override
 
void View3DRight (wxCommandEvent &event) override
 
void View3DBack (wxCommandEvent &event) override
 
void View3DBottom (wxCommandEvent &event) override
 
void onModify ()
 
void syncLocalEmbeddedFiles ()
 

Private Attributes

PCB_BASE_FRAME * m_parentFrame
 
EDA_3D_CANVAS * m_previewPane
 
WX_INFOBAR * m_infobar
 
WX_INFOBAR * m_alignmentInfoBar
 
BOARD_ADAPTER m_boardAdapter
 
CAMERA & m_currentCamera
 
TRACK_BALL m_trackBallCamera
 
BOARD * m_dummyBoard
 
FOOTPRINT * m_dummyFootprint
 
std::vector< FP_3DMODEL > * m_parentModelList
 
int m_selected
 
ALIGN_STATE m_alignState = ALIGN_STATE::IDLE
 Index into m_parentInfoList.
 
bool m_alignUpdating = false
 
std::optional< std::bitset< LAYER_3D_END > > m_alignLayers
 
std::optional< bool > m_alignBodyShown
 
std::vector< MODEL_ALIGN::REGION > m_alignRegions
 
std::vector< MODEL_ALIGN::ALIGN_SOLUTION > m_alignSolutions
 
const S3DMODEL * m_alignGeometry = nullptr
 
std::map< std::array< unsigned int, 2 >, size_t > m_alignTriangleRegions
 
size_t m_alignSeed = 0
 
size_t m_alignSolution = 0
 
std::vector< SFVEC3F > m_alignFaceTriangles
 Picked face, kept until the move finishes.
 
std::optional< size_t > m_alignHoverRegion
 
const PAD * m_alignHoverPad = nullptr
 
wxTimer m_alignAnimTimer
 
int64_t m_alignAnimStart = 0
 
VECTOR3D m_alignAnimFromRotation
 
VECTOR3D m_alignAnimFromOffset
 
VECTOR3D m_alignAnimRotation
 
VECTOR3D m_alignAnimOffset
 
bool m_alignAnimating = false
 
size_t m_dummySelectedModel = std::numeric_limits<size_t>::max()
 Selected model in the dummy footprint.
 
EDA_UNITS m_userUnits
 
EXTRUDED_3D_BODY * m_extrudedBody = nullptr
 
EMBEDDED_FILES * m_localEmbeddedFiles = nullptr
 
EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS m_initialRender
 The 3d viewer Render initial settings (must be saved and restored)
 
std::unique_ptr< NL_FOOTPRINT_PROPERTIES_PLUGIN > m_spaceMouse
 

Detailed Description

Definition at line 77 of file panel_preview_3d_model.h.

Member Enumeration Documentation

◆ ALIGN_STATE

enum class PANEL_PREVIEW_3D_MODEL::ALIGN_STATE
strongprivate
Enumerator
IDLE 
PICK_MODEL 
PICK_FOOTPRINT 
SOLVED 

Definition at line 119 of file panel_preview_3d_model.h.

Constructor & Destructor Documentation

◆ PANEL_PREVIEW_3D_MODEL()

PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL ( wxWindow * aParent,
PCB_BASE_FRAME * aFrame,
FOOTPRINT * aFootprint,
std::vector< FP_3DMODEL > * aParentModelList )

Definition at line 124 of file panel_preview_3d_model.cpp.

References AA_8X, ANGLE_0, axis3d_back, axis3d_bottom, axis3d_front, axis3d_left, axis3d_right, axis3d_top, LSET::BackMask(), BOARD, BOARD_STACKUP::BuildDefaultStackupList(), EDA_UNIT_UTILS::UI::DoubleValueFromString(), evaluateTextCtrl(), FOOTPRINT, formatRotationValue(), formatScaleValue(), FPHOLDER, LSET::FrontMask(), PROJECT_PCB::Get3DCacheManager(), OGL_ATT_LIST::GetAttributesList(), PCB_BASE_FRAME::GetBoard(), BOARD_DESIGN_SETTINGS::GetBoardThickness(), PCB_BASE_FRAME::GetDesignSettings(), KIUI::GetStatusFont(), KiBitmapBundle(), loadSettings(), TOOLS_HOLDER::m_actions, m_alignAnimTimer, m_alignmentInfoBar, m_boardAdapter, PANEL_PREVIEW_3D_MODEL_BASE::m_bpSettings, PANEL_PREVIEW_3D_MODEL_BASE::m_bpUpdate, PANEL_PREVIEW_3D_MODEL_BASE::m_bpvBack, PANEL_PREVIEW_3D_MODEL_BASE::m_bpvBodyStyle, PANEL_PREVIEW_3D_MODEL_BASE::m_bpvBottom, PANEL_PREVIEW_3D_MODEL_BASE::m_bpvFront, PANEL_PREVIEW_3D_MODEL_BASE::m_bpvISO, PANEL_PREVIEW_3D_MODEL_BASE::m_bpvLeft, PANEL_PREVIEW_3D_MODEL_BASE::m_bpvRight, PANEL_PREVIEW_3D_MODEL_BASE::m_bpvTop, m_currentCamera, m_dummyBoard, m_dummyFootprint, m_infobar, m_parentFrame, m_parentModelList, PANEL_PREVIEW_3D_MODEL_BASE::m_previewLabel, m_previewPane, m_selected, PANEL_PREVIEW_3D_MODEL_BASE::m_SizerPanelView, m_spaceMouse, PANEL_PREVIEW_3D_MODEL_BASE::m_spinXoffset, PANEL_PREVIEW_3D_MODEL_BASE::m_spinXrot, PANEL_PREVIEW_3D_MODEL_BASE::m_spinXscale, PANEL_PREVIEW_3D_MODEL_BASE::m_spinYoffset, PANEL_PREVIEW_3D_MODEL_BASE::m_spinYrot, PANEL_PREVIEW_3D_MODEL_BASE::m_spinYscale, PANEL_PREVIEW_3D_MODEL_BASE::m_spinZoffset, PANEL_PREVIEW_3D_MODEL_BASE::m_spinZrot, PANEL_PREVIEW_3D_MODEL_BASE::m_spinZscale, TOOLS_HOLDER::m_toolDispatcher, TOOLS_HOLDER::m_toolManager, m_trackBallCamera, m_userUnits, onAlignAnimation(), onAlignKey(), OnMenuEvent(), onPanelShownEvent(), onUnitsChanged(), options_3drender, ortho, PANEL_PREVIEW_3D_MODEL_BASE::PANEL_PREVIEW_3D_MODEL_BASE(), PANEL_PREVIEW_3D_MODEL_ID, KIWAY_HOLDER::Prj(), RANGE_SCALE_3D, reload, BOARD_STACKUP::RemoveAll(), rotationFromString(), BOARD_DESIGN_SETTINGS::SetBoardThickness(), BOARD_DESIGN_SETTINGS::SetEnabledLayers(), TEXT_CTRL_EVAL::SetValue(), show_board_body, TOP_BOTTOM, unityScale, UNSCALED, PANEL_PREVIEW_3D_MODEL_BASE::xrot, PANEL_PREVIEW_3D_MODEL_BASE::xscale, PANEL_PREVIEW_3D_MODEL_BASE::yrot, PANEL_PREVIEW_3D_MODEL_BASE::yscale, PANEL_PREVIEW_3D_MODEL_BASE::zrot, and PANEL_PREVIEW_3D_MODEL_BASE::zscale.

◆ ~PANEL_PREVIEW_3D_MODEL()

PANEL_PREVIEW_3D_MODEL::~PANEL_PREVIEW_3D_MODEL ( )

Member Function Documentation

◆ alignmentModel()

◆ alignmentModelMatrix()

glm::mat4 PANEL_PREVIEW_3D_MODEL::alignmentModelMatrix ( ) const
private

◆ alignmentPadTriangles()

◆ alignmentRegionAt()

std::optional< size_t > PANEL_PREVIEW_3D_MODEL::alignmentRegionAt ( const RAY & aRay)
private

Region under the ray, as an index into m_alignRegions.

Definition at line 834 of file panel_preview_3d_model.cpp.

References canAlign(), m_alignGeometry, m_alignTriangleRegions, m_dummyFootprint, m_parentModelList, m_previewPane, and m_selected.

Referenced by hoverAlignment(), and pickAlignment().

◆ alignmentRegionTriangles()

std::vector< SFVEC3F > PANEL_PREVIEW_3D_MODEL::alignmentRegionTriangles ( size_t aRegion) const
private

Model-space triangle soup of one region, for the selection overlay.

Definition at line 740 of file panel_preview_3d_model.cpp.

References index, m_alignRegions, MODEL_ALIGN::REGION::triangles, and MODEL_ALIGN::REGION::vertices.

Referenced by applyAlignment(), pickAlignment(), and updateAlignmentOverlays().

◆ applyAlignment()

◆ canAlign()

◆ cancelAlignment()

◆ CommonSettingsChanged()

◆ ConfigBaseName()

virtual wxString TOOLS_HOLDER::ConfigBaseName ( )
inlinevirtualinherited

Reimplemented in EDA_BASE_FRAME.

Definition at line 168 of file tools_holder.h.

◆ CurrentToolName()

std::string TOOLS_HOLDER::CurrentToolName ( ) const
inherited

◆ dismissAlignmentInfoBar()

void PANEL_PREVIEW_3D_MODEL::dismissAlignmentInfoBar ( )
private

Definition at line 466 of file panel_preview_3d_model.cpp.

References m_alignmentInfoBar.

Referenced by applyAlignment(), and cancelAlignment().

◆ DisplayToolMsg()

virtual void TOOLS_HOLDER::DisplayToolMsg ( const wxString & msg)
inlinevirtualinherited

Reimplemented in EDA_DRAW_FRAME.

Definition at line 125 of file tools_holder.h.

Referenced by PopTool(), PushTool(), and ShowChangedLanguage().

◆ doIncrementOffset()

◆ doIncrementRotation()

◆ doIncrementScale()

◆ evalRotationValue()

void PANEL_PREVIEW_3D_MODEL::evalRotationValue ( TEXT_CTRL_EVAL * aRotationControl)
private

◆ formatOffsetValue()

wxString PANEL_PREVIEW_3D_MODEL::formatOffsetValue ( double aValue)
private

◆ formatRotationValue()

wxString PANEL_PREVIEW_3D_MODEL::formatRotationValue ( double aValue)
private

◆ formatScaleValue()

wxString PANEL_PREVIEW_3D_MODEL::formatScaleValue ( double aValue)
private

◆ GetAdapter()

BOARD_ADAPTER & PANEL_PREVIEW_3D_MODEL::GetAdapter ( )
inline

Definition at line 93 of file panel_preview_3d_model.h.

References m_boardAdapter.

◆ GetCurrentCamera()

CAMERA & PANEL_PREVIEW_3D_MODEL::GetCurrentCamera ( )
inline

Definition at line 94 of file panel_preview_3d_model.h.

References m_currentCamera.

◆ GetCurrentSelection()

◆ GetDoImmediateActions()

bool TOOLS_HOLDER::GetDoImmediateActions ( ) const
inlineinherited

Indicate that hotkeys should perform an immediate action even if another tool is currently active.

If false, the first hotkey should select the relevant tool.

Definition at line 138 of file tools_holder.h.

References m_immediateActions.

◆ GetDragAction()

MOUSE_DRAG_ACTION TOOLS_HOLDER::GetDragAction ( ) const
inlineinherited

Indicates whether a drag should draw a selection rectangle or drag selected (or unselected) objects.

Definition at line 144 of file tools_holder.h.

References m_dragAction.

◆ GetDummyFootprint()

FOOTPRINT * PANEL_PREVIEW_3D_MODEL::GetDummyFootprint ( ) const
inline

Get the dummy footprint that is used for previewing the 3D model.

We use this to hold the temporary 3D model shapes.

Definition at line 114 of file panel_preview_3d_model.h.

References m_dummyFootprint.

◆ GetMoveWarpsCursor()

bool TOOLS_HOLDER::GetMoveWarpsCursor ( ) const
inlineinherited

Indicate that a move operation should warp the mouse pointer to the origin of the move object.

This improves snapping, but some users are allergic to mouse warping.

Definition at line 150 of file tools_holder.h.

References m_moveWarpsCursor.

Referenced by EDIT_TOOL::doMoveSelection(), and ROUTER_TOOL::InlineDrag().

◆ GetToolCanvas()

wxWindow * PANEL_PREVIEW_3D_MODEL::GetToolCanvas ( ) const
inlineoverridevirtual

Canvas access.

Implements TOOLS_HOLDER.

Definition at line 91 of file panel_preview_3d_model.h.

References m_previewPane.

◆ GetToolDispatcher()

TOOL_DISPATCHER * TOOLS_HOLDER::GetToolDispatcher ( ) const
inlineinherited

Definition at line 53 of file tools_holder.h.

References m_toolDispatcher.

◆ GetToolManager()

TOOL_MANAGER * TOOLS_HOLDER::GetToolManager ( ) const
inlineinherited

Return the MVC controller.

Definition at line 51 of file tools_holder.h.

References m_toolManager.

Referenced by PROJECT_TREE_ITEM::Activate(), FOOTPRINT_VIEWER_FRAME::AddFootprintToPCB(), SYMBOL_EDITOR_CONTROL::AddSymbolToSchematic(), SCH_EDIT_FRAME::ClearErcMarkers(), EDA_3D_VIEWER_FRAME::CommonSettingsChanged(), EDA_DRAW_FRAME::CommonSettingsChanged(), CommonSettingsChanged(), DIALOG_MIGRATE_BUSES::DIALOG_MIGRATE_BUSES(), SYMBOL_FIELDS_EDITOR_GRID_TRICKS::doFieldsTablePopupSelection(), SCH_FIELD::DoHypertextAction(), SCH_TEXT::DoHypertextAction(), SCH_TEXTBOX::DoHypertextAction(), DRAWING_TOOL::DrawVia(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), SCH_EDIT_FRAME::ExecuteRemoteCommand(), SCH_EDIT_FRAME::FindNetInInspector(), FOOTPRINT_EDIT_FRAME::FOOTPRINT_EDIT_FRAME(), FOOTPRINT_WIZARD_FRAME::FOOTPRINT_WIZARD_FRAME(), GERBVIEW_FRAME::GERBVIEW_FRAME(), PL_EDITOR_FRAME::GetLayoutFromRedoList(), PL_EDITOR_FRAME::GetLayoutFromUndoList(), PCB_TUNING_PATTERN::GetPreviewItems(), PCBNEW_JOBS_HANDLER::getToolManager(), PCB_EDIT_FRAME::HandleRemoteNetHighlight(), SCH_EDIT_FRAME::HandleRemoteNetHighlight(), API_HANDLER_PCB::handleSetBoardOrigin(), API_HANDLER_PCB::handleSyncSelection(), API_HANDLER_SCH::handleSyncSelection(), PCB_EDIT_FRAME::ImportSpecctraSession(), PCB_EDIT_FRAME::interactiveOperationInProgress(), SCH_EDIT_FRAME::interactiveOperationInProgress(), InvokeCopperZonesEditor(), PCB_EDIT_FRAME::KiwayMailIn(), PCB_EDIT_FRAME::LoadProjectSettings(), SCH_EDIT_FRAME::LoadProjectSettings(), FOOTPRINT_EDIT_FRAME::LoadSettings(), PCB_EDIT_FRAME::OnCrossProbeFlashTimer(), SCH_EDIT_FRAME::OnCrossProbeFlashTimer(), SCH_PROPERTIES_PANEL::onEditPinMap(), FOOTPRINT_CHOOSER_FRAME::onFpChanged(), PANEL_COMPONENT_CLASS_ASSIGNMENT::OnHighlightItemsClick(), KICAD_MANAGER_FRAME::OnIdle(), FOOTPRINTS_LISTBOX::OnLeftDClick(), PCB_EDIT_FRAME::OnNetlistChanged(), SCH_EDIT_FRAME::onNetNavigatorSelection(), DIALOG_PLOT::onRunDRC(), PCB_EDIT_FRAME::onSize(), SCH_EDIT_FRAME::onSize(), PCB_DESIGN_BLOCK_PANE::PCB_DESIGN_BLOCK_PANE(), PlaceRemoteDownloadedSymbol(), PopTool(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), SCH_EDIT_FRAME::PutDataInPreviousState(), PCB_BASE_FRAME::rebuildConnectivity(), SCH_EDIT_FRAME::RefreshConnectivity(), FOOTPRINT_EDIT_FRAME::ReloadFootprint(), PL_EDITOR_FRAME::RollbackFromUndo(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), SCH_EDIT_FRAME::SaveProjectLocalSettings(), PCB_EDIT_FRAME::saveProjectSettings(), FOOTPRINT_EDIT_FRAME::SaveSettings(), SYMBOL_EDIT_FRAME::SaveSettings(), SCH_COMMIT::SCH_COMMIT(), SCH_DESIGN_BLOCK_PANE::SCH_DESIGN_BLOCK_PANE(), SCH_EDIT_FRAME::SCH_EDIT_FRAME(), NL_3D_VIEWER_PLUGIN_IMPL::SetActiveCommand(), NL_GERBVIEW_PLUGIN_IMPL::SetActiveCommand(), NL_PCBNEW_PLUGIN_IMPL::SetActiveCommand(), NL_PL_EDITOR_PLUGIN_IMPL::SetActiveCommand(), NL_SCHEMATIC_PLUGIN_IMPL::SetActiveCommand(), CVPCB_MAINFRAME::setupEventHandlers(), FOOTPRINT_EDIT_FRAME::setupTools(), ShowChangedLanguage(), PCB_TUNING_PATTERN::ShowPropertiesDialog(), PCB_VIA_STACK::ShowPropertiesDialog(), PCB_VIA_STITCH::ShowPropertiesDialog(), SYMBOL_EDIT_FRAME::SYMBOL_EDIT_FRAME(), SYMBOL_VIEWER_FRAME::SYMBOL_VIEWER_FRAME(), CVPCB_MAINFRAME::updateFootprintViewerOnIdle(), FOOTPRINT_EDIT_FRAME::updateInfoBar(), SYMBOL_EDIT_FRAME::updateInfoBar(), PCB_EDIT_FRAME::UpdateUserInterface(), and GLOBAL_EDIT_TOOL::ZonesManager().

◆ hoverAlignment()

void PANEL_PREVIEW_3D_MODEL::hoverAlignment ( const std::optional< RAY > & aRay)
private

◆ IsCurrentTool()

bool TOOLS_HOLDER::IsCurrentTool ( const TOOL_ACTION & aAction) const
inherited

◆ loadSettings()

void PANEL_PREVIEW_3D_MODEL::loadSettings ( )
private

◆ onAlign()

◆ onAlignAnimation()

void PANEL_PREVIEW_3D_MODEL::onAlignAnimation ( wxTimerEvent & aEvent)
private

Definition at line 911 of file panel_preview_3d_model.cpp.

References tickAlignmentAnimation().

Referenced by PANEL_PREVIEW_3D_MODEL().

◆ onAlignKey()

void PANEL_PREVIEW_3D_MODEL::onAlignKey ( wxKeyEvent & aEvent)
private

◆ onAlignUpdateUI()

void PANEL_PREVIEW_3D_MODEL::onAlignUpdateUI ( wxUpdateUIEvent & aEvent)
overrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 398 of file panel_preview_3d_model.cpp.

References canAlign().

◆ onDecrementOffset()

void PANEL_PREVIEW_3D_MODEL::onDecrementOffset ( wxSpinEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 190 of file panel_preview_3d_model.h.

References doIncrementOffset().

◆ onDecrementRot()

void PANEL_PREVIEW_3D_MODEL::onDecrementRot ( wxSpinEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 174 of file panel_preview_3d_model.h.

References doIncrementRotation().

◆ onDecrementScale()

void PANEL_PREVIEW_3D_MODEL::onDecrementScale ( wxSpinEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 182 of file panel_preview_3d_model.h.

References doIncrementScale().

◆ onIncrementOffset()

void PANEL_PREVIEW_3D_MODEL::onIncrementOffset ( wxSpinEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 186 of file panel_preview_3d_model.h.

References doIncrementOffset().

◆ onIncrementRot()

void PANEL_PREVIEW_3D_MODEL::onIncrementRot ( wxSpinEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 170 of file panel_preview_3d_model.h.

References doIncrementRotation().

◆ onIncrementScale()

void PANEL_PREVIEW_3D_MODEL::onIncrementScale ( wxSpinEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 178 of file panel_preview_3d_model.h.

References doIncrementScale().

◆ OnMenuEvent()

void PANEL_PREVIEW_3D_MODEL::OnMenuEvent ( wxMenuEvent & aEvent)

The TOOL_DISPATCHER needs these to work around some issues in wxWidgets where the menu events aren't captured by the menus themselves.

Definition at line 313 of file panel_preview_3d_model.cpp.

References TOOLS_HOLDER::m_toolDispatcher.

Referenced by PANEL_PREVIEW_3D_MODEL().

◆ onModify()

void PANEL_PREVIEW_3D_MODEL::onModify ( )
private

◆ onMouseWheelOffset()

void PANEL_PREVIEW_3D_MODEL::onMouseWheelOffset ( wxMouseEvent & event)
overrideprivatevirtual

◆ onMouseWheelRot()

void PANEL_PREVIEW_3D_MODEL::onMouseWheelRot ( wxMouseEvent & event)
overrideprivatevirtual

◆ onMouseWheelScale()

void PANEL_PREVIEW_3D_MODEL::onMouseWheelScale ( wxMouseEvent & event)
overrideprivatevirtual

◆ onOpacitySlider()

void PANEL_PREVIEW_3D_MODEL::onOpacitySlider ( wxCommandEvent & event)
overrideprivatevirtual

◆ onPanelShownEvent()

void PANEL_PREVIEW_3D_MODEL::onPanelShownEvent ( wxCommandEvent & aEvent)
private

Definition at line 1359 of file panel_preview_3d_model.cpp.

References cancelAlignment(), and m_spaceMouse.

Referenced by PANEL_PREVIEW_3D_MODEL().

◆ onUnitsChanged()

◆ pickAlignment()

◆ PopTool()

void TOOLS_HOLDER::PopTool ( const TOOL_EVENT & aEvent)
virtualinherited

Pops a tool from the stack.

Parameters
aEventThe event that started the tool that was pushed to the stack.

Definition at line 79 of file tools_holder.cpp.

References DisplayToolMsg(), TOOL_EVENT::getCommandStr(), GetToolManager(), m_toolManager, m_toolStack, TOOL_ACTION::MakeEvent(), TOOL_MANAGER::PostEvent(), ACTIONS::selectionTool, TOOL_EVENT::SetHasPosition(), and TOOL_EVENT::SetReactivate().

◆ PushTool()

void TOOLS_HOLDER::PushTool ( const TOOL_EVENT & aEvent)
virtualinherited

NB: the definition of "tool" is different at the user level.

The implementation uses a single TOOL_BASE derived class to implement several user "tools", such as rectangle and circle, or wire and bus. So each user-level tool is actually a TOOL_ACTION.

Pushes a tool to the stack.

Parameters
aEventThe event that is starting the tool to be pushed to the stack.

Definition at line 53 of file tools_holder.cpp.

References DisplayToolMsg(), TOOL_EVENT::getCommandStr(), TOOL_ACTION::GetFriendlyName(), m_toolManager, m_toolStack, and SelectToolbarAction().

Referenced by PCB_VIEWER_TOOLS::MeasureTool().

◆ refreshAlignmentView()

void PANEL_PREVIEW_3D_MODEL::refreshAlignmentView ( )
private

Definition at line 431 of file panel_preview_3d_model.cpp.

References m_alignUpdating, and UpdateDummyFootprint().

Referenced by onAlign(), pickAlignment(), and stopPicking().

◆ RefreshCanvas()

virtual void TOOLS_HOLDER::RefreshCanvas ( )
inlinevirtualinherited

Reimplemented in EDA_DRAW_FRAME.

Definition at line 166 of file tools_holder.h.

◆ RegisterUIUpdateHandler() [1/2]

void TOOLS_HOLDER::RegisterUIUpdateHandler ( const TOOL_ACTION & aAction,
const ACTION_CONDITIONS & aConditions )
virtualinherited

Register an action's update conditions with the UI layer to allow the UI to appropriately display the state of its controls.

Parameters
aActionis the action to register.
aConditionsare the UI conditions to use for the control states.

Definition at line 39 of file tools_holder.cpp.

References TOOL_ACTION::GetUIId(), and RegisterUIUpdateHandler().

Referenced by RegisterUIUpdateHandler().

◆ RegisterUIUpdateHandler() [2/2]

virtual void TOOLS_HOLDER::RegisterUIUpdateHandler ( int aID,
const ACTION_CONDITIONS & aConditions )
inlinevirtualinherited

Register a UI update handler for the control with ID aID.

Parameters
aIDis the control ID to register the handler for.
aConditionsare the UI conditions to use for the control states.

Reimplemented in EDA_BASE_FRAME.

Definition at line 70 of file tools_holder.h.

◆ restoreAlignmentView()

void PANEL_PREVIEW_3D_MODEL::restoreAlignmentView ( )
private

◆ SelectToolbarAction()

virtual void TOOLS_HOLDER::SelectToolbarAction ( const TOOL_ACTION & aAction)
inlinevirtualinherited

Select the given action in the toolbar group which contains it, if any.

Reimplemented in EDA_BASE_FRAME.

Definition at line 130 of file tools_holder.h.

Referenced by PushTool().

◆ setBodyStyleView()

void PANEL_PREVIEW_3D_MODEL::setBodyStyleView ( wxCommandEvent & event)
overrideprivatevirtual

◆ SetEmbeddedFilesDelegate()

void PANEL_PREVIEW_3D_MODEL::SetEmbeddedFilesDelegate ( EMBEDDED_FILES * aDelegate)

◆ SetExtrusionTransformMode()

◆ SetSelectedModel()

◆ ShowChangedLanguage()

◆ startAlignmentAnimation()

void PANEL_PREVIEW_3D_MODEL::startAlignmentAnimation ( const VECTOR3D & aRotation,
const VECTOR3D & aOffset )
private

◆ stopAlignmentAnimation()

void PANEL_PREVIEW_3D_MODEL::stopAlignmentAnimation ( )
private

Definition at line 904 of file panel_preview_3d_model.cpp.

References m_alignAnimating, and m_alignAnimTimer.

Referenced by cancelAlignment(), and tickAlignmentAnimation().

◆ stopPicking()

void PANEL_PREVIEW_3D_MODEL::stopPicking ( )
private

◆ syncLocalEmbeddedFiles()

void PANEL_PREVIEW_3D_MODEL::syncLocalEmbeddedFiles ( )
private

◆ tickAlignmentAnimation()

◆ ToolStackIsEmpty()

◆ UnregisterUIUpdateHandler() [1/2]

void TOOLS_HOLDER::UnregisterUIUpdateHandler ( const TOOL_ACTION & aAction)
virtualinherited

Unregister a UI handler for an action that was registered using RegisterUIUpdateHandler.

Parameters
aActionis the action to unregister the handler for.

Definition at line 46 of file tools_holder.cpp.

References TOOL_ACTION::GetUIId(), and UnregisterUIUpdateHandler().

Referenced by UnregisterUIUpdateHandler().

◆ UnregisterUIUpdateHandler() [2/2]

virtual void TOOLS_HOLDER::UnregisterUIUpdateHandler ( int aID)
inlinevirtualinherited

Unregister a UI handler for a given ID that was registered using RegisterUIUpdateHandler.

Parameters
aIDis the control ID to unregister the handler for.

Reimplemented in EDA_BASE_FRAME.

Definition at line 85 of file tools_holder.h.

◆ updateAlignmentOverlays()

void PANEL_PREVIEW_3D_MODEL::updateAlignmentOverlays ( )
private

◆ UpdateDummyFootprint()

void PANEL_PREVIEW_3D_MODEL::UpdateDummyFootprint ( bool aRelaodRequired = true)

Copy shapes from the current shape list which are flagged for preview to the copy of footprint that is on the preview dummy board.

Definition at line 1373 of file panel_preview_3d_model.cpp.

References cancelAlignment(), m_alignState, m_alignUpdating, m_dummyFootprint, m_dummySelectedModel, m_extrudedBody, m_parentModelList, m_previewPane, m_selected, model, PICK_FOOTPRINT, PICK_MODEL, and syncLocalEmbeddedFiles().

Referenced by onOpacitySlider(), refreshAlignmentView(), updateOrientation(), and View3DSettings().

◆ updateOrientation()

◆ View3DBack()

void PANEL_PREVIEW_3D_MODEL::View3DBack ( wxCommandEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 250 of file panel_preview_3d_model.h.

References m_previewPane, and VIEW3D_BACK.

◆ View3DBottom()

void PANEL_PREVIEW_3D_MODEL::View3DBottom ( wxCommandEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 255 of file panel_preview_3d_model.h.

References m_previewPane, and VIEW3D_BOTTOM.

◆ View3DFront()

void PANEL_PREVIEW_3D_MODEL::View3DFront ( wxCommandEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 226 of file panel_preview_3d_model.h.

References m_previewPane, and VIEW3D_FRONT.

◆ View3DISO()

void PANEL_PREVIEW_3D_MODEL::View3DISO ( wxCommandEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 210 of file panel_preview_3d_model.h.

References m_currentCamera, and m_previewPane.

◆ View3DLeft()

void PANEL_PREVIEW_3D_MODEL::View3DLeft ( wxCommandEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 221 of file panel_preview_3d_model.h.

References m_previewPane, and VIEW3D_LEFT.

◆ View3DRight()

void PANEL_PREVIEW_3D_MODEL::View3DRight ( wxCommandEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 245 of file panel_preview_3d_model.h.

References m_previewPane, and VIEW3D_RIGHT.

◆ View3DSettings()

◆ View3DTop()

void PANEL_PREVIEW_3D_MODEL::View3DTop ( wxCommandEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 231 of file panel_preview_3d_model.h.

References m_previewPane, and VIEW3D_TOP.

◆ View3DUpdate()

void PANEL_PREVIEW_3D_MODEL::View3DUpdate ( wxCommandEvent & event)
inlineoverrideprivatevirtual

Reimplemented from PANEL_PREVIEW_3D_MODEL_BASE.

Definition at line 236 of file panel_preview_3d_model.h.

References cancelAlignment(), and m_previewPane.

Member Data Documentation

◆ m_actions

◆ m_alignAnimating

bool PANEL_PREVIEW_3D_MODEL::m_alignAnimating = false
private

◆ m_alignAnimFromOffset

VECTOR3D PANEL_PREVIEW_3D_MODEL::m_alignAnimFromOffset
private

Definition at line 297 of file panel_preview_3d_model.h.

Referenced by startAlignmentAnimation(), and tickAlignmentAnimation().

◆ m_alignAnimFromRotation

VECTOR3D PANEL_PREVIEW_3D_MODEL::m_alignAnimFromRotation
private

Definition at line 296 of file panel_preview_3d_model.h.

Referenced by startAlignmentAnimation(), and tickAlignmentAnimation().

◆ m_alignAnimOffset

VECTOR3D PANEL_PREVIEW_3D_MODEL::m_alignAnimOffset
private

◆ m_alignAnimRotation

VECTOR3D PANEL_PREVIEW_3D_MODEL::m_alignAnimRotation
private

◆ m_alignAnimStart

int64_t PANEL_PREVIEW_3D_MODEL::m_alignAnimStart = 0
private

Definition at line 295 of file panel_preview_3d_model.h.

Referenced by startAlignmentAnimation(), and tickAlignmentAnimation().

◆ m_alignAnimTimer

wxTimer PANEL_PREVIEW_3D_MODEL::m_alignAnimTimer
private

◆ m_alignBodyShown

std::optional<bool> PANEL_PREVIEW_3D_MODEL::m_alignBodyShown
private

Definition at line 282 of file panel_preview_3d_model.h.

Referenced by onAlign(), and restoreAlignmentView().

◆ m_alignButton

wxButton* PANEL_PREVIEW_3D_MODEL_BASE::m_alignButton
protectedinherited

◆ m_alignFaceTriangles

std::vector<SFVEC3F> PANEL_PREVIEW_3D_MODEL::m_alignFaceTriangles
private

Picked face, kept until the move finishes.

Definition at line 290 of file panel_preview_3d_model.h.

Referenced by applyAlignment(), cancelAlignment(), pickAlignment(), startAlignmentAnimation(), tickAlignmentAnimation(), and updateAlignmentOverlays().

◆ m_alignGeometry

const S3DMODEL* PANEL_PREVIEW_3D_MODEL::m_alignGeometry = nullptr
private

◆ m_alignHoverPad

const PAD* PANEL_PREVIEW_3D_MODEL::m_alignHoverPad = nullptr
private

◆ m_alignHoverRegion

std::optional<size_t> PANEL_PREVIEW_3D_MODEL::m_alignHoverRegion
private

◆ m_alignLayers

std::optional<std::bitset<LAYER_3D_END> > PANEL_PREVIEW_3D_MODEL::m_alignLayers
private

Definition at line 281 of file panel_preview_3d_model.h.

Referenced by onAlign(), pickAlignment(), and restoreAlignmentView().

◆ m_alignmentInfoBar

WX_INFOBAR* PANEL_PREVIEW_3D_MODEL::m_alignmentInfoBar
private

◆ m_alignRegions

std::vector<MODEL_ALIGN::REGION> PANEL_PREVIEW_3D_MODEL::m_alignRegions
private

◆ m_alignSeed

size_t PANEL_PREVIEW_3D_MODEL::m_alignSeed = 0
private

Definition at line 287 of file panel_preview_3d_model.h.

Referenced by applyAlignment(), and pickAlignment().

◆ m_alignSolution

size_t PANEL_PREVIEW_3D_MODEL::m_alignSolution = 0
private

Definition at line 288 of file panel_preview_3d_model.h.

Referenced by applyAlignment(), onAlign(), and pickAlignment().

◆ m_alignSolutions

std::vector<MODEL_ALIGN::ALIGN_SOLUTION> PANEL_PREVIEW_3D_MODEL::m_alignSolutions
private

Definition at line 284 of file panel_preview_3d_model.h.

Referenced by applyAlignment(), cancelAlignment(), onAlign(), and pickAlignment().

◆ m_alignState

ALIGN_STATE PANEL_PREVIEW_3D_MODEL::m_alignState = ALIGN_STATE::IDLE
private

◆ m_alignTriangleRegions

std::map<std::array<unsigned int, 2>, size_t> PANEL_PREVIEW_3D_MODEL::m_alignTriangleRegions
private

◆ m_alignUpdating

bool PANEL_PREVIEW_3D_MODEL::m_alignUpdating = false
private

◆ m_boardAdapter

◆ m_bpSettings

STD_BITMAP_BUTTON* PANEL_PREVIEW_3D_MODEL_BASE::m_bpSettings
protectedinherited

◆ m_bpUpdate

STD_BITMAP_BUTTON* PANEL_PREVIEW_3D_MODEL_BASE::m_bpUpdate
protectedinherited

◆ m_bpvBack

STD_BITMAP_BUTTON* PANEL_PREVIEW_3D_MODEL_BASE::m_bpvBack
protectedinherited

◆ m_bpvBodyStyle

STD_BITMAP_BUTTON* PANEL_PREVIEW_3D_MODEL_BASE::m_bpvBodyStyle
protectedinherited

◆ m_bpvBottom

STD_BITMAP_BUTTON* PANEL_PREVIEW_3D_MODEL_BASE::m_bpvBottom
protectedinherited

◆ m_bpvFront

STD_BITMAP_BUTTON* PANEL_PREVIEW_3D_MODEL_BASE::m_bpvFront
protectedinherited

◆ m_bpvISO

STD_BITMAP_BUTTON* PANEL_PREVIEW_3D_MODEL_BASE::m_bpvISO
protectedinherited

◆ m_bpvLeft

STD_BITMAP_BUTTON* PANEL_PREVIEW_3D_MODEL_BASE::m_bpvLeft
protectedinherited

◆ m_bpvRight

STD_BITMAP_BUTTON* PANEL_PREVIEW_3D_MODEL_BASE::m_bpvRight
protectedinherited

◆ m_bpvTop

STD_BITMAP_BUTTON* PANEL_PREVIEW_3D_MODEL_BASE::m_bpvTop
protectedinherited

◆ m_currentCamera

CAMERA& PANEL_PREVIEW_3D_MODEL::m_currentCamera
private

Definition at line 270 of file panel_preview_3d_model.h.

Referenced by GetCurrentCamera(), PANEL_PREVIEW_3D_MODEL(), and View3DISO().

◆ m_dragAction

MOUSE_DRAG_ACTION TOOLS_HOLDER::m_dragAction
protectedinherited

Definition at line 188 of file tools_holder.h.

Referenced by CommonSettingsChanged(), GetDragAction(), and TOOLS_HOLDER().

◆ m_dummyBoard

BOARD* PANEL_PREVIEW_3D_MODEL::m_dummyBoard
private

◆ m_dummyFootprint

◆ m_dummySelectedModel

size_t PANEL_PREVIEW_3D_MODEL::m_dummySelectedModel = std::numeric_limits<size_t>::max()
private

Selected model in the dummy footprint.

Definition at line 301 of file panel_preview_3d_model.h.

Referenced by tickAlignmentAnimation(), and UpdateDummyFootprint().

◆ m_dummySelection

SELECTION TOOLS_HOLDER::m_dummySelection
protectedinherited

Definition at line 175 of file tools_holder.h.

Referenced by GetCurrentSelection().

◆ m_extrudedBody

EXTRUDED_3D_BODY* PANEL_PREVIEW_3D_MODEL::m_extrudedBody = nullptr
private

◆ m_immediateActions

bool TOOLS_HOLDER::m_immediateActions
protectedinherited

Definition at line 184 of file tools_holder.h.

Referenced by CommonSettingsChanged(), GetDoImmediateActions(), and TOOLS_HOLDER().

◆ m_infobar

WX_INFOBAR* PANEL_PREVIEW_3D_MODEL::m_infobar
private

Definition at line 267 of file panel_preview_3d_model.h.

Referenced by PANEL_PREVIEW_3D_MODEL().

◆ m_initialRender

EDA_3D_VIEWER_SETTINGS::RENDER_SETTINGS PANEL_PREVIEW_3D_MODEL::m_initialRender
private

The 3d viewer Render initial settings (must be saved and restored)

Definition at line 308 of file panel_preview_3d_model.h.

Referenced by loadSettings(), and ~PANEL_PREVIEW_3D_MODEL().

◆ m_localEmbeddedFiles

EMBEDDED_FILES* PANEL_PREVIEW_3D_MODEL::m_localEmbeddedFiles = nullptr
private

Definition at line 305 of file panel_preview_3d_model.h.

Referenced by SetEmbeddedFilesDelegate(), and syncLocalEmbeddedFiles().

◆ m_moveWarpsCursor

bool TOOLS_HOLDER::m_moveWarpsCursor
protectedinherited

Definition at line 190 of file tools_holder.h.

Referenced by CommonSettingsChanged(), GetMoveWarpsCursor(), and TOOLS_HOLDER().

◆ m_opacity

◆ m_parentFrame

PCB_BASE_FRAME* PANEL_PREVIEW_3D_MODEL::m_parentFrame
private

Definition at line 265 of file panel_preview_3d_model.h.

Referenced by PANEL_PREVIEW_3D_MODEL(), and View3DSettings().

◆ m_parentModelList

◆ m_previewLabel

wxStaticText* PANEL_PREVIEW_3D_MODEL_BASE::m_previewLabel
protectedinherited

◆ m_previewPane

◆ m_selected

◆ m_SizerPanelView

wxBoxSizer* PANEL_PREVIEW_3D_MODEL_BASE::m_SizerPanelView
protectedinherited

◆ m_spaceMouse

std::unique_ptr<NL_FOOTPRINT_PROPERTIES_PLUGIN> PANEL_PREVIEW_3D_MODEL::m_spaceMouse
private

Definition at line 313 of file panel_preview_3d_model.h.

Referenced by onPanelShownEvent(), and PANEL_PREVIEW_3D_MODEL().

◆ m_spinXoffset

wxSpinButton* PANEL_PREVIEW_3D_MODEL_BASE::m_spinXoffset
protectedinherited

◆ m_spinXrot

wxSpinButton* PANEL_PREVIEW_3D_MODEL_BASE::m_spinXrot
protectedinherited

◆ m_spinXscale

wxSpinButton* PANEL_PREVIEW_3D_MODEL_BASE::m_spinXscale
protectedinherited

◆ m_spinYoffset

wxSpinButton* PANEL_PREVIEW_3D_MODEL_BASE::m_spinYoffset
protectedinherited

◆ m_spinYrot

wxSpinButton* PANEL_PREVIEW_3D_MODEL_BASE::m_spinYrot
protectedinherited

◆ m_spinYscale

wxSpinButton* PANEL_PREVIEW_3D_MODEL_BASE::m_spinYscale
protectedinherited

◆ m_spinZoffset

wxSpinButton* PANEL_PREVIEW_3D_MODEL_BASE::m_spinZoffset
protectedinherited

◆ m_spinZrot

wxSpinButton* PANEL_PREVIEW_3D_MODEL_BASE::m_spinZrot
protectedinherited

◆ m_spinZscale

wxSpinButton* PANEL_PREVIEW_3D_MODEL_BASE::m_spinZscale
protectedinherited

◆ m_staticText1

wxStaticText* PANEL_PREVIEW_3D_MODEL_BASE::m_staticText1
protectedinherited

Definition at line 44 of file panel_preview_3d_model_base.h.

Referenced by PANEL_PREVIEW_3D_MODEL_BASE().

◆ m_staticText11

wxStaticText* PANEL_PREVIEW_3D_MODEL_BASE::m_staticText11
protectedinherited

Definition at line 53 of file panel_preview_3d_model_base.h.

Referenced by PANEL_PREVIEW_3D_MODEL_BASE().

◆ m_staticText12

wxStaticText* PANEL_PREVIEW_3D_MODEL_BASE::m_staticText12
protectedinherited

Definition at line 62 of file panel_preview_3d_model_base.h.

Referenced by PANEL_PREVIEW_3D_MODEL_BASE().

◆ m_staticText2

wxStaticText* PANEL_PREVIEW_3D_MODEL_BASE::m_staticText2
protectedinherited

Definition at line 47 of file panel_preview_3d_model_base.h.

Referenced by PANEL_PREVIEW_3D_MODEL_BASE().

◆ m_staticText21

wxStaticText* PANEL_PREVIEW_3D_MODEL_BASE::m_staticText21
protectedinherited

Definition at line 56 of file panel_preview_3d_model_base.h.

Referenced by PANEL_PREVIEW_3D_MODEL_BASE().

◆ m_staticText22

wxStaticText* PANEL_PREVIEW_3D_MODEL_BASE::m_staticText22
protectedinherited

Definition at line 65 of file panel_preview_3d_model_base.h.

Referenced by PANEL_PREVIEW_3D_MODEL_BASE().

◆ m_staticText3

wxStaticText* PANEL_PREVIEW_3D_MODEL_BASE::m_staticText3
protectedinherited

Definition at line 50 of file panel_preview_3d_model_base.h.

Referenced by PANEL_PREVIEW_3D_MODEL_BASE().

◆ m_staticText31

wxStaticText* PANEL_PREVIEW_3D_MODEL_BASE::m_staticText31
protectedinherited

Definition at line 59 of file panel_preview_3d_model_base.h.

Referenced by PANEL_PREVIEW_3D_MODEL_BASE().

◆ m_staticText32

wxStaticText* PANEL_PREVIEW_3D_MODEL_BASE::m_staticText32
protectedinherited

Definition at line 67 of file panel_preview_3d_model_base.h.

Referenced by PANEL_PREVIEW_3D_MODEL_BASE().

◆ m_toolDispatcher

◆ m_toolManager

TOOL_MANAGER* TOOLS_HOLDER::m_toolManager
protectedinherited

Definition at line 171 of file tools_holder.h.

Referenced by GERBVIEW_FRAME::ActivateGalCanvas(), PCB_BASE_FRAME::ActivateGalCanvas(), SYMBOL_EDIT_FRAME::activateSymbolTab(), PCB_BASE_FRAME::AddFootprintToBoard(), EDA_BASE_FRAME::AddStandardHelpMenu(), EDA_DRAW_FRAME::AddStandardSubMenus(), SCH_EDIT_FRAME::AnnotateSymbols(), BITMAP2CMP_FRAME::BITMAP2CMP_FRAME(), FOOTPRINT_EDIT_FRAME::canCloseWindow(), PCB_EDIT_FRAME::canCloseWindow(), SCH_EDIT_FRAME::canCloseWindow(), SYMBOL_EDIT_FRAME::captureSymbolSelectionKiids(), SCH_EDIT_FRAME::CheckAnnotate(), GERBVIEW_FRAME::Clear_DrawLayers(), FOOTPRINT_EDIT_FRAME::Clear_Pcb(), PCB_EDIT_FRAME::Clear_Pcb(), EDA_DRAW_FRAME::CommonSettingsChanged(), PCB_EDIT_FRAME::CommonSettingsChanged(), EDA_DRAW_FRAME::configureToolbars(), SYMBOL_EDIT_FRAME::CreateNewSymbol(), CVPCB_MAINFRAME::CVPCB_MAINFRAME(), SYMBOL_VIEWER_FRAME::DClickOnSymbolList(), SCH_EDIT_FRAME::DeleteAnnotation(), SCH_EDIT_FRAME::DeleteJunction(), DISPLAY_FOOTPRINTS_FRAME::DISPLAY_FOOTPRINTS_FRAME(), SCH_EDIT_FRAME::DisplayCurrentSheet(), FOOTPRINT_VIEWER_FRAME::displayFootprint(), CVPCB_MAINFRAME::doCloseWindow(), GERBVIEW_FRAME::doCloseWindow(), SCH_BASE_FRAME::doCloseWindow(), SCH_EDIT_FRAME::doCloseWindow(), SYMBOL_EDIT_FRAME::doCloseWindow(), SYMBOL_VIEWER_FRAME::doCloseWindow(), BITMAP2CMP_FRAME::doReCreateMenuBar(), CVPCB_MAINFRAME::doReCreateMenuBar(), EDA_3D_VIEWER_FRAME::doReCreateMenuBar(), FOOTPRINT_EDIT_FRAME::doReCreateMenuBar(), FOOTPRINT_VIEWER_FRAME::doReCreateMenuBar(), GERBVIEW_FRAME::doReCreateMenuBar(), KICAD_MANAGER_FRAME::doReCreateMenuBar(), PCB_CALCULATOR_FRAME::doReCreateMenuBar(), PCB_EDIT_FRAME::doReCreateMenuBar(), PL_EDITOR_FRAME::doReCreateMenuBar(), SCH_EDIT_FRAME::doReCreateMenuBar(), SIMULATOR_FRAME::doReCreateMenuBar(), SYMBOL_EDIT_FRAME::doReCreateMenuBar(), SYMBOL_VIEWER_FRAME::doReCreateMenuBar(), EDA_BASE_FRAME::DoWithAcceptedFiles(), GERBVIEW_FRAME::DoWithAcceptedFiles(), KICAD_MANAGER_FRAME::DoWithAcceptedFiles(), SCH_EDIT_FRAME::EditSheetProperties(), SYMBOL_EDIT_FRAME::emptyScreen(), GERBVIEW_FRAME::Erase_Current_DrawLayer(), PCB_EDIT_FRAME::ExecuteRemoteCommand(), SCH_EDIT_FRAME::ExecuteRemoteCommand(), FOOTPRINT_EDIT_FRAME::findOrCreateFootprintTab(), FOOTPRINT_CHOOSER_FRAME::FOOTPRINT_CHOOSER_FRAME(), FOOTPRINT_WIZARD_FRAME::FOOTPRINT_WIZARD_FRAME(), DISPLAY_FOOTPRINTS_FRAME::GetCurrentSelection(), FOOTPRINT_EDIT_FRAME::GetCurrentSelection(), FOOTPRINT_VIEWER_FRAME::GetCurrentSelection(), GERBVIEW_FRAME::GetCurrentSelection(), PCB_EDIT_FRAME::GetCurrentSelection(), PL_EDITOR_FRAME::GetCurrentSelection(), SCH_EDIT_FRAME::GetCurrentSelection(), SYMBOL_EDIT_FRAME::GetCurrentSelection(), SYMBOL_VIEWER_FRAME::GetCurrentSelection(), SCH_BASE_FRAME::GetSelectionTool(), GetToolManager(), EDA_DRAW_FRAME::GetUnitPair(), PCB_EDIT_FRAME::HandleRemoteNetHighlight(), PL_EDITOR_FRAME::HardRedraw(), SCH_EDIT_FRAME::HardRedraw(), SYMBOL_EDIT_FRAME::HardRedraw(), SCH_EDIT_FRAME::importFile(), SCH_EDIT_FRAME::initScreenZoom(), FOOTPRINT_EDIT_FRAME::installFootprintTabBoard(), PCB_EDIT_FRAME::KiwayMailIn(), SCH_EDIT_FRAME::KiwayMailIn(), SYMBOL_EDIT_FRAME::KiwayMailIn(), SYMBOL_EDIT_FRAME::LoadOneLibrarySymbol(), SYMBOL_EDIT_FRAME::LoadSymbolFromLib(), SYMBOL_EDIT_FRAME::LoadSymbolFromSchematic(), FOOTPRINT_EDIT_FRAME::MakeGridHelper(), PCB_EDIT_FRAME::MakeGridHelper(), SCH_EDIT_FRAME::MakeGridHelper(), SYMBOL_EDIT_FRAME::MakeGridHelper(), PCB_EDIT_FRAME::OnBoardLoaded(), PCB_EDIT_FRAME::onCloseModelessBookReporterDialogs(), SCH_EDIT_FRAME::onCloseSymbolDiffDialog(), FOOTPRINT_EDIT_FRAME::OnEditItemRequest(), PCB_EDIT_FRAME::OnEditItemRequest(), SCH_BASE_FRAME::OnFindDialogClose(), PCB_BASE_FRAME::OnFpChangeDebounceTimer(), SCH_EDIT_FRAME::OnImportProject(), PCB_EDIT_FRAME::OnNetlistChanged(), PL_EDITOR_FRAME::OnNewDrawingSheet(), KICAD_MANAGER_FRAME::OnOpenFileInTextEditor(), EDA_DRAW_FRAME::OnSelectGrid(), EDA_DRAW_FRAME::OnSelectZoom(), PCB_EDIT_FRAME::onVariantSelected(), SCH_EDIT_FRAME::onVariantSelected(), PCB_EDIT_FRAME::OpenProjectFiles(), SCH_EDIT_FRAME::OpenProjectFiles(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), PCB_BASE_EDIT_FRAME::PCB_BASE_EDIT_FRAME(), PCB_CALCULATOR_FRAME::PCB_CALCULATOR_FRAME(), PopTool(), SCH_EDIT_FRAME::PrepareForNetlist(), PushTool(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), SCH_EDIT_FRAME::PutDataInPreviousState(), SYMBOL_EDIT_FRAME::RebuildView(), SCH_EDIT_FRAME::RecalculateConnections(), SCH_BASE_FRAME::RefreshZoomDependentItems(), FOOTPRINT_WIZARD_FRAME::RegenerateFootprint(), DISPLAY_FOOTPRINTS_FRAME::ReloadFootprint(), PCB_BASE_EDIT_FRAME::RestoreCopyFromRedoList(), PCB_BASE_EDIT_FRAME::RestoreCopyFromUndoList(), SYMBOL_EDIT_FRAME::restoreSymbolSelectionKiids(), SCH_EDIT_FRAME::RollbackSchematicFromUndo(), FOOTPRINT_EDIT_FRAME::SaveFootprint(), FOOTPRINT_EDIT_FRAME::SaveFootprintToBoard(), SYMBOL_EDIT_FRAME::saveLibrary(), PCB_EDIT_FRAME::SaveSelectionAsDesignBlock(), SCH_EDIT_FRAME::SaveSelectionAsDesignBlock(), EDA_DRAW_FRAME::SaveSettings(), SCH_EDIT_FRAME::SaveSymbolToSchematic(), SCH_BASE_FRAME::SCH_BASE_FRAME(), SCH_EDIT_FRAME::SCH_EDIT_FRAME(), FOOTPRINT_VIEWER_FRAME::SelectAndViewFootprint(), SCH_EDIT_FRAME::SelectBodyStyle(), SCH_EDIT_FRAME::SelectUnit(), FOOTPRINT_EDIT_FRAME::SetActiveLayer(), GERBVIEW_FRAME::SetActiveLayer(), PCB_EDIT_FRAME::SetActiveLayer(), SCH_EDIT_FRAME::SetAltPinFunction(), EDA_DRAW_FRAME::setArcModeConditions(), PCB_BASE_EDIT_FRAME::SetBoard(), PCB_TEST_FRAME_BASE::SetBoard(), SYMBOL_EDIT_FRAME::SetBodyStyle(), SYMBOL_EDIT_FRAME::SetCurSymbol(), SCH_EDIT_FRAME::SetSchematic(), SCH_EDIT_FRAME::SetScreen(), SYMBOL_EDIT_FRAME::SetScreen(), PCB_TEST_FRAME_BASE::SetSelectionHook(), SYMBOL_EDIT_FRAME::SetUnit(), CVPCB_MAINFRAME::setupTools(), FOOTPRINT_EDIT_FRAME::setupTools(), GERBVIEW_FRAME::setupTools(), KICAD_MANAGER_FRAME::setupTools(), PCB_EDIT_FRAME::setupTools(), PL_EDITOR_FRAME::setupTools(), SCH_EDIT_FRAME::setupTools(), SIMULATOR_FRAME::setupTools(), SYMBOL_EDIT_FRAME::setupTools(), SYMBOL_VIEWER_FRAME::setupTools(), CVPCB_MAINFRAME::setupUIConditions(), DISPLAY_FOOTPRINTS_FRAME::setupUIConditions(), EDA_3D_VIEWER_FRAME::setupUIConditions(), EDA_DRAW_FRAME::setupUIConditions(), FOOTPRINT_CHOOSER_FRAME::setupUIConditions(), FOOTPRINT_EDIT_FRAME::setupUIConditions(), FOOTPRINT_VIEWER_FRAME::setupUIConditions(), GERBVIEW_FRAME::setupUIConditions(), KICAD_MANAGER_FRAME::setupUIConditions(), PCB_EDIT_FRAME::setupUIConditions(), PL_EDITOR_FRAME::setupUIConditions(), SCH_EDIT_FRAME::setupUIConditions(), SIMULATOR_FRAME::setupUIConditions(), SYMBOL_EDIT_FRAME::setupUIConditions(), SYMBOL_VIEWER_FRAME::setupUIConditions(), EDA_DRAW_FRAME::setupUnits(), PCB_EDIT_FRAME::ShowBoardSetupDialog(), PCB_EDIT_FRAME::ShowFindDialog(), SCH_BASE_FRAME::ShowFindReplaceDialog(), PCB_BASE_EDIT_FRAME::ShowGraphicItemPropertiesDialog(), EDA_BASE_FRAME::ShowPreferences(), PCB_BASE_EDIT_FRAME::ShowReferenceImagePropertiesDialog(), SIMULATOR_FRAME::SIMULATOR_FRAME(), SYMBOL_EDIT_FRAME::SYMBOL_EDIT_FRAME(), SCH_BASE_FRAME::SyncView(), EDA_DRAW_FRAME::ToggleUserUnits(), TOOLS_HOLDER(), PCB_EDIT_FRAME::Tracks_and_Vias_Size_Event(), SCH_EDIT_FRAME::TrimWire(), EDA_DRAW_FRAME::unitsChangeRefresh(), PCB_BASE_EDIT_FRAME::unitsChangeRefresh(), PCB_EDIT_FRAME::UpdateDesignBlockFromSelection(), SCH_EDIT_FRAME::UpdateDesignBlockFromSelection(), SCH_EDIT_FRAME::UpdateHierarchyNavigator(), SYMBOL_VIEWER_FRAME::updatePreviewSymbol(), PCB_EDIT_FRAME::UpdateViaSizeSelectBox(), FOOTPRINT_EDIT_FRAME::UpdateView(), DISPLAY_FOOTPRINTS_FRAME::updateView(), FOOTPRINT_VIEWER_FRAME::updateView(), FOOTPRINT_WIZARD_FRAME::updateView(), EDA_DRAW_FRAME::Zoom_Automatique(), BITMAP2CMP_FRAME::~BITMAP2CMP_FRAME(), CVPCB_MAINFRAME::~CVPCB_MAINFRAME(), DISPLAY_FOOTPRINTS_FRAME::~DISPLAY_FOOTPRINTS_FRAME(), EDA_3D_VIEWER_FRAME::~EDA_3D_VIEWER_FRAME(), EDA_DRAW_FRAME::~EDA_DRAW_FRAME(), FOOTPRINT_CHOOSER_FRAME::~FOOTPRINT_CHOOSER_FRAME(), FOOTPRINT_EDIT_FRAME::~FOOTPRINT_EDIT_FRAME(), FOOTPRINT_VIEWER_FRAME::~FOOTPRINT_VIEWER_FRAME(), FOOTPRINT_WIZARD_FRAME::~FOOTPRINT_WIZARD_FRAME(), GERBVIEW_FRAME::~GERBVIEW_FRAME(), KICAD_MANAGER_FRAME::~KICAD_MANAGER_FRAME(), PANEL_PREVIEW_3D_MODEL::~PANEL_PREVIEW_3D_MODEL(), PCB_BASE_FRAME::~PCB_BASE_FRAME(), PCB_CALCULATOR_FRAME::~PCB_CALCULATOR_FRAME(), PCB_EDIT_FRAME::~PCB_EDIT_FRAME(), PL_EDITOR_FRAME::~PL_EDITOR_FRAME(), SCH_EDIT_FRAME::~SCH_EDIT_FRAME(), SYMBOL_EDIT_FRAME::~SYMBOL_EDIT_FRAME(), and SYMBOL_VIEWER_FRAME::~SYMBOL_VIEWER_FRAME().

◆ m_toolStack

std::vector<std::string> TOOLS_HOLDER::m_toolStack
protectedinherited

Definition at line 177 of file tools_holder.h.

Referenced by CurrentToolName(), IsCurrentTool(), PopTool(), PushTool(), and ToolStackIsEmpty().

◆ m_trackBallCamera

TRACK_BALL PANEL_PREVIEW_3D_MODEL::m_trackBallCamera
private

Definition at line 271 of file panel_preview_3d_model.h.

Referenced by PANEL_PREVIEW_3D_MODEL().

◆ m_userUnits

EDA_UNITS PANEL_PREVIEW_3D_MODEL::m_userUnits
private

◆ xoff

◆ xrot

◆ xscale

◆ yoff

◆ yrot

◆ yscale

◆ zoff

◆ zrot

◆ zscale


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