MeshLib C++ Docs
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{
11
12
16{
17public:
18 virtual ~IViewerSettingsManager() = default;
19
20 virtual int loadInt( const std::string& name, int def = 0 ) = 0;
21 virtual void saveInt( const std::string& name, int value ) = 0;
22
23 virtual std::string loadString( const std::string& name, const std::string& def = "" ) = 0;
24 virtual void saveString( const std::string& name, const std::string& value ) = 0;
25
26 virtual bool loadBool( const std::string& name, bool def = false ) = 0;
27 virtual void saveBool( const std::string& name, bool value ) = 0;
28
29 virtual void resetSettings( Viewer& ) = 0;
30 virtual void loadSettings( Viewer& ) = 0;
31 virtual void saveSettings( const Viewer& ) = 0;
32};
33
34class MRVIEWER_CLASS ViewerSettingsManager : public IViewerSettingsManager
35{
36public:
37 MRVIEWER_API ViewerSettingsManager();
38
39 MRVIEWER_API virtual int loadInt( const std::string& name, int def ) override;
40 MRVIEWER_API virtual void saveInt( const std::string& name, int value ) override;
41 MRVIEWER_API virtual std::string loadString( const std::string& name, const std::string& def ) override;
42 MRVIEWER_API virtual void saveString( const std::string& name, const std::string& value ) override;
43 MRVIEWER_API virtual bool loadBool( const std::string& name, bool def ) override;
44 MRVIEWER_API virtual void saveBool( const std::string& name, bool value ) override;
45
46 MRVIEWER_API virtual void resetSettings( Viewer& ) override;
47 MRVIEWER_API virtual void loadSettings( Viewer& viewer ) override;
48 MRVIEWER_API virtual void saveSettings( const Viewer& viewer ) override;
49
50 enum class ObjType
51 {
52 Mesh = 0,
53 Lines,
54 Points,
55 Voxels,
57 Count
58 };
59 MRVIEWER_API const std::string & getLastExtention( ObjType objType );
60 MRVIEWER_API void setLastExtention( ObjType objType, std::string ext );
61private:
62 std::vector<std::string> lastExtentions_;
63};
64}
Definition MRDistanceMap.h:24
Definition MRViewerSettingsManager.h:16
Definition MRViewerSettingsManager.h:35
GLFW-based mesh viewer.
Definition MRViewer.h:69
virtual MRVIEWER_API void saveBool(const std::string &name, bool value) override
ObjType
Definition MRViewerSettingsManager.h:51
virtual bool loadBool(const std::string &name, bool def=false)=0
virtual MRVIEWER_API int loadInt(const std::string &name, int def) override
virtual MRVIEWER_API void saveString(const std::string &name, const std::string &value) override
virtual MRVIEWER_API void resetSettings(Viewer &) override
Points
Definition MRObjectLinesHolder.h:13
virtual MRVIEWER_API void saveInt(const std::string &name, int value) override
virtual ~IViewerSettingsManager()=default
MRVIEWER_API ViewerSettingsManager()
virtual MRVIEWER_API bool loadBool(const std::string &name, bool def) override
virtual MRVIEWER_API void saveSettings(const Viewer &viewer) override
virtual void loadSettings(Viewer &)=0
virtual void saveString(const std::string &name, const std::string &value)=0
virtual MRVIEWER_API std::string loadString(const std::string &name, const std::string &def) override
virtual void saveBool(const std::string &name, bool value)=0
virtual void resetSettings(Viewer &)=0
virtual MRVIEWER_API void loadSettings(Viewer &viewer) override
virtual int loadInt(const std::string &name, int def=0)=0
virtual std::string loadString(const std::string &name, const std::string &def="")=0
MRVIEWER_API void setLastExtention(ObjType objType, std::string ext)
virtual void saveSettings(const Viewer &)=0
MRVIEWER_API const std::string & getLastExtention(ObjType objType)
virtual void saveInt(const std::string &name, int value)=0
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
Definition MRMesh.h:23