OpenLexocad  27.0
IV_Importer.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <OpenLxApp/Document.h>
4 #include <OpenLxApp/Importer.h>
6 
7 namespace Gui
8 {
9 class CmdImportFile;
10 }
11 
12 namespace OpenLxApp
13 {
18 {
19 public:
20  IV_Importer(std::shared_ptr<OpenLxApp::Document> aDoc);
21  IV_Importer() = delete;
22  virtual ~IV_Importer() {}
23  static std::shared_ptr<IV_Importer> createIn(std::shared_ptr<OpenLxApp::Document> aDoc);
24 
25  virtual int importFile(const Base::String& filename) override;
26  virtual std::vector<std::shared_ptr<OpenLxApp::Element>> getImportedElems() const override;
27 
28  bool getCreateLayer() const;
29  void setCreateLayer(bool aValue);
30 
31  bool getAsExtenalFile() const;
32  void setAsExternalFile(bool aValue);
33 
34 private:
35  Gui::CmdImportFile* _cmd = nullptr;
36 
37  bool _createLayer = true;
38  bool _asExternalFile = false;
39 };
40 } // namespace OpenLxApp
Imports an Open Inventor (*iv) file.
Definition: IV_Importer.h:17
A Utf-16 (windows) or ucs4 (unix) encoded string class.
Definition: String.h:29
Base class of all Importers.
Definition: Importer.h:17
#define OPENLXAPP_EXPORT
Definition: OpenLxApp_defines.h:12
Definition: ActiveScript.h:9
Core::PropertyText filename
Definition: CoreDocument.h:151
virtual ~IV_Importer()
Definition: IV_Importer.h:22