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