KiCad PCB EDA Suite
Loading...
Searching...
No Matches
nl_3d_viewer_plugin.cpp
Go to the documentation of this file.
1/*
2 * This program source code file is part of KiCad, a free EDA CAD application.
3 *
4 * Copyright (C) 2021 3Dconnexion
5 * Copyright (C) 2021 KiCad Developers, see AUTHORS.txt for contributors.
6 *
7 * This program is free software: you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License as published by the
9 * Free Software Foundation, either version 3 of the License, or (at your
10 * option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License along
18 * with this program. If not, see <http://www.gnu.org/licenses/>.
19 */
20
21#include "nl_3d_viewer_plugin.h"
23#include <advanced_config.h>
24#include <kiplatform/drivers.h>
25
26
28 : m_impl( nullptr )
29{
30 if( ADVANCED_CFG::GetCfg().m_Use3DConnexionDriver
32 {
33 m_impl = new NL_3D_VIEWER_PLUGIN_IMPL( aViewport );
34 }
35}
36
37
39{
40 delete m_impl;
41}
42
43
45{
46 if( m_impl )
47 m_impl->SetFocus( focus );
48}
static const ADVANCED_CFG & GetCfg()
Get the singleton instance's config, which is shared by all consumers.
Implement a canvas based on a wxGLCanvas.
Definition: eda_3d_canvas.h:49
The class that implements the accessors and mutators required for 3D navigation in an EDA_3D_CANVAS u...
void SetFocus(bool aFocus=true)
Set the connection to the 3Dconnexion driver to the focus state so that 3DMouse data is routed here.
NL_3D_VIEWER_PLUGIN(EDA_3D_CANVAS *aViewport)
Initializes a new instance of the NL_3D_VIEWER_PLUGIN.
void SetFocus(bool aFocus=true)
Set the connection to the 3Dconnexion driver to the focus state so that 3DMouse data is routed here.
NL_3D_VIEWER_PLUGIN_IMPL * m_impl
bool Valid3DConnexionDriverVersion()
Get the driver version for a given driver name.
Definition: gtk/drivers.cpp:21
Declaration of the NL_3D_VIEWER_PLUGIN class.
Declaration of the NL_3D_VIEWER_PLUGIN_IMPL class.