MeshLib
 
Loading...
Searching...
No Matches
MRSceneSelectionChange.h
Go to the documentation of this file.
1#pragma once
2#include "exports.h"
3#include "MRMesh/MRMeshFwd.h"
4#include <memory>
5#include <vector>
6
7namespace MR
8{
9
10// Interface for processing scene state change in RibbonItems
12{
13public:
14 virtual ~ISceneSelectionChange() = default;
15 // do something on selection change,
16 // args - newly selected objects
17 virtual void updateSelection( const std::vector<std::shared_ptr<const Object>>& ) {}
18};
19
20// close on state change
21class MRVIEWER_CLASS SceneSelectionChangeClose : virtual public ISceneSelectionChange
22{
23public:
24 MRVIEWER_API virtual void updateSelection( const std::vector<std::shared_ptr<const Object>>& ) override;
25};
26
27// restart on state change
28class MRVIEWER_CLASS SceneSelectionChangeRestart : virtual public ISceneSelectionChange
29{
30public:
31 MRVIEWER_API virtual void updateSelection( const std::vector<std::shared_ptr<const Object>>& ) override;
32};
33
34}
Definition MRSceneSelectionChange.h:12
virtual void updateSelection(const std::vector< std::shared_ptr< const Object > > &)
Definition MRSceneSelectionChange.h:17
virtual ~ISceneSelectionChange()=default
Definition MRSceneSelectionChange.h:22
virtual MRVIEWER_API void updateSelection(const std::vector< std::shared_ptr< const Object > > &) override
Definition MRSceneSelectionChange.h:29
virtual MRVIEWER_API void updateSelection(const std::vector< std::shared_ptr< const Object > > &) override
Definition MRCameraOrientationPlugin.h:7