2016-04-03 16:32:07 -04:00
|
|
|
#ifndef CSV_RENDER_ORBITCAMERAPICKMODE_H
|
|
|
|
#define CSV_RENDER_ORBITCAMERAPICKMODE_H
|
|
|
|
|
|
|
|
#include "../widget/modebutton.hpp"
|
|
|
|
|
2022-10-19 19:02:00 +02:00
|
|
|
class QAction;
|
|
|
|
class QMenu;
|
|
|
|
class QObject;
|
|
|
|
class QWidget;
|
|
|
|
|
|
|
|
namespace CSVWidget
|
|
|
|
{
|
|
|
|
class SceneToolbar;
|
|
|
|
}
|
|
|
|
|
2016-07-17 19:36:33 -04:00
|
|
|
namespace CSMPrefs
|
|
|
|
{
|
|
|
|
class Shortcut;
|
|
|
|
}
|
|
|
|
|
2016-04-03 16:32:07 -04:00
|
|
|
namespace CSVRender
|
|
|
|
{
|
|
|
|
class WorldspaceWidget;
|
|
|
|
|
|
|
|
class OrbitCameraMode : public CSVWidget::ModeButton
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
|
|
|
|
public:
|
2016-07-23 21:23:02 -04:00
|
|
|
OrbitCameraMode(WorldspaceWidget* worldspaceWidget, const QIcon& icon, const QString& tooltip = "",
|
2020-06-22 10:05:25 +04:00
|
|
|
QWidget* parent = nullptr);
|
2016-07-17 19:36:33 -04:00
|
|
|
~OrbitCameraMode();
|
2016-04-03 16:32:07 -04:00
|
|
|
|
2016-07-23 21:23:02 -04:00
|
|
|
void activate(CSVWidget::SceneToolbar* toolbar) override;
|
2020-06-22 10:05:25 +04:00
|
|
|
void deactivate(CSVWidget::SceneToolbar* toolbar) override;
|
2016-07-17 19:36:33 -04:00
|
|
|
bool createContextMenu(QMenu* menu) override;
|
2016-04-03 16:32:07 -04:00
|
|
|
|
2020-10-16 22:18:54 +04:00
|
|
|
private:
|
|
|
|
WorldspaceWidget* mWorldspaceWidget;
|
|
|
|
QAction* mCenterOnSelection;
|
|
|
|
CSMPrefs::Shortcut* mCenterShortcut;
|
2016-04-03 16:32:07 -04:00
|
|
|
|
|
|
|
private slots:
|
|
|
|
|
|
|
|
void centerSelection();
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|