MeshLib
 
Loading...
Searching...
No Matches
MRViewerSettingsManager.h
Go to the documentation of this file.
1#pragma once
2
3#include "MRViewerFwd.h"
4#include <string>
5#include <vector>
6
7namespace MR
8{
9
10// This class manages local user settings of viewer
11// loading it when the app starts and saving it when it ends
13{
14public:
15 virtual ~IViewerSettingsManager() = default;
16
17 virtual int loadInt( const std::string& name, int def = 0 ) = 0;
18 virtual void saveInt( const std::string& name, int value ) = 0;
19
20 virtual void resetSettings( Viewer& ) = 0;
21 virtual void loadSettings( Viewer& ) = 0;
22 virtual void saveSettings( const Viewer& ) = 0;
23};
24
25class MRVIEWER_CLASS ViewerSettingsManager : public IViewerSettingsManager
26{
27public:
28 MRVIEWER_API ViewerSettingsManager();
29
30 MRVIEWER_API virtual int loadInt( const std::string& name, int def ) override;
31 MRVIEWER_API virtual void saveInt( const std::string& name, int value ) override;
32
33 MRVIEWER_API virtual void resetSettings( Viewer& ) override;
34 MRVIEWER_API virtual void loadSettings( Viewer& viewer ) override;
35 MRVIEWER_API virtual void saveSettings( const Viewer& viewer ) override;
36
37 enum class ObjType
38 {
39 Mesh = 0,
40 Lines,
41 Points,
42 Voxels,
44 Count
45 };
46 MRVIEWER_API const std::string & getLastExtention( ObjType objType );
47 MRVIEWER_API void setLastExtention( ObjType objType, std::string ext );
48private:
49 std::vector<std::string> lastExtentions_;
50};
51}
Points
Definition MRObjectLinesHolder.h:10
Definition MRDistanceMap.h:24
Definition MRViewerSettingsManager.h:13
virtual ~IViewerSettingsManager()=default
virtual void loadSettings(Viewer &)=0
virtual void resetSettings(Viewer &)=0
virtual int loadInt(const std::string &name, int def=0)=0
virtual void saveSettings(const Viewer &)=0
virtual void saveInt(const std::string &name, int value)=0
Definition MRViewerSettingsManager.h:26
ObjType
Definition MRViewerSettingsManager.h:38
virtual MRVIEWER_API int loadInt(const std::string &name, int def) override
virtual MRVIEWER_API void resetSettings(Viewer &) override
virtual MRVIEWER_API void saveInt(const std::string &name, int value) override
MRVIEWER_API ViewerSettingsManager()
virtual MRVIEWER_API void saveSettings(const Viewer &viewer) override
virtual MRVIEWER_API void loadSettings(Viewer &viewer) override
MRVIEWER_API void setLastExtention(ObjType objType, std::string ext)
MRVIEWER_API const std::string & getLastExtention(ObjType objType)
Definition MRViewer.h:80
Definition MRCameraOrientationPlugin.h:7
Definition MRMesh/MRMesh.h:23