MeshLib
 
Loading...
Searching...
No Matches
MRIOFilesMenuItems.h
Go to the documentation of this file.
1#pragma once
2#include "MRMesh/MRMeshFwd.h"
6#include <filesystem>
7
8namespace MR
9{
10using FileNamesStack = std::vector<std::filesystem::path>;
11
13{
14public:
16 std::string isAvailable( const std::vector<std::shared_ptr<const Object>>& ) const override;
17 bool action() override;
18 void openDirectory( const std::filesystem::path& directory ) const;
19};
20
21class OpenFilesMenuItem : public RibbonMenuItem, public MultiListener<DragDropListener>
22{
23public:
26 virtual bool action() override;
27
28 virtual const DropItemsList& dropItems() const override;
29private:
30 virtual bool dragDrop_( const std::vector<std::filesystem::path>& paths ) override;
31 void parseLaunchParams_();
32 void setupListUpdate_();
33
34 boost::signals2::scoped_connection recentStoreConnection_;
35 FileNamesStack recentPathsCache_;
36 IOFilters filters_;
37 std::shared_ptr<OpenDirectoryMenuItem> openDirectoryItem_;
38};
39
40#ifndef MRMESH_NO_DICOM
42{
43public:
45 virtual bool action() override;
46};
47#endif
48
50{
51public:
53 virtual bool action() override;
54 virtual std::string isAvailable( const std::vector<std::shared_ptr<const Object>>&objs ) const override;
55};
56
58{
59public:
61 virtual bool action() override;
62};
63
65{
66public:
67 SaveSceneAsMenuItem( const std::string& pluginName = "Save Scene As" );
68 virtual bool action() override;
69 virtual std::string isAvailable( const std::vector<std::shared_ptr<const Object>>& ) const override;
70
71protected:
72 void saveScene_( const std::filesystem::path& savePath );
73};
74
76{
77public:
79 virtual bool action() override;
80};
81
83{
84public:
86 virtual void drawDialog( float menuScaling, ImGuiContext* ) override;
87 virtual bool blocking() const override { return false; }
88private:
89 Vector2i resolution_;
90 bool transparentBg_{ true };
91};
92
94{
95public:
97 virtual bool action() override;
98};
99
101{
102public:
104 virtual bool action() override;
105 virtual std::string isAvailable( const std::vector<std::shared_ptr<const Object>>& ) const override;
106};
107
108}
Definition MRIOFilesMenuItems.h:83
virtual bool blocking() const override
Definition MRIOFilesMenuItems.h:87
virtual void drawDialog(float menuScaling, ImGuiContext *) override
Definition MRIOFilesMenuItems.h:101
virtual std::string isAvailable(const std::vector< std::shared_ptr< const Object > > &) const override
Definition MRIOFilesMenuItems.h:94
virtual bool action() override
Definition MRIOFilesMenuItems.h:42
virtual bool action() override
Definition MRIOFilesMenuItems.h:13
std::string isAvailable(const std::vector< std::shared_ptr< const Object > > &) const override
bool action() override
void openDirectory(const std::filesystem::path &directory) const
Definition MRIOFilesMenuItems.h:22
virtual const DropItemsList & dropItems() const override
virtual bool action() override
Definition MRRibbonMenuItem.h:20
std::vector< std::shared_ptr< RibbonMenuItem > > DropItemsList
Definition MRRibbonMenuItem.h:47
Definition MRIOFilesMenuItems.h:50
virtual bool action() override
virtual std::string isAvailable(const std::vector< std::shared_ptr< const Object > > &objs) const override
Definition MRIOFilesMenuItems.h:65
SaveSceneAsMenuItem(const std::string &pluginName="Save Scene As")
virtual std::string isAvailable(const std::vector< std::shared_ptr< const Object > > &) const override
virtual bool action() override
void saveScene_(const std::filesystem::path &savePath)
Definition MRIOFilesMenuItems.h:76
virtual bool action() override
Definition MRIOFilesMenuItems.h:58
virtual bool action() override
Definition MRSceneStateCheck.h:140
Definition MRViewerFwd.h:59
std::vector< IOFilter > IOFilters
Definition MRIOFilters.h:23
Definition MRCameraOrientationPlugin.h:7
std::vector< std::filesystem::path > FileNamesStack
Definition MRIOFilesMenuItems.h:10
Definition MRViewerEventsListener.h:29