QCAD Application Framework
CAD Application Development and Automation.
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RClipboardOperation.h
Go to the documentation of this file.
1 #ifndef RCLIPBOARDOPERATION_H
2 #define RCLIPBOARDOPERATION_H
3 
4 #include "RDocument.h"
5 #include "REntity.h"
6 #include "RExporter.h"
7 #include "ROperation.h"
8 #include "RVector.h"
9 
10 
19 public:
21  virtual ~RClipboardOperation() {}
22 
23 protected:
24  void copy(
25  RDocument& src, RDocument& dest,
26  const RVector& offset,
27  double scale,
28  double rotation,
29  bool flipHorizontal,
30  bool flipVertical,
31  bool toCurrentLayer,
32  bool toCurrentBlock,
33  bool overwriteLayers,
34  bool overwriteBlocks,
35  const QString& blockName,
36  RTransaction& transaction,
37  bool selectionOnly, bool clear,
38  bool toModelSpaceBlock,
39  bool preview
40  ) const;
41 
42  void copyEntity(
43  REntity& entity,
44  RDocument& src, RDocument& dest,
45  const RVector& offset,
46  double scale,
47  double rotation,
48  bool flipHorizontal,
49  bool flipVertical,
50  bool toCurrentLayer,
51  bool toCurrentBlock,
52  bool overwriteLayers,
53  bool overwriteBlocks,
54  const QString& blockName,
55  RTransaction& transaction,
56  bool toModelSpaceBlock
57  ) const;
58 
59  QSharedPointer<RLayer> copyEntityLayer(
60  REntity& entity,
61  RDocument& src,
62  RDocument& dest,
63  bool overwriteLayers,
64  RTransaction& transaction
65  ) const;
66 
67 private:
68  mutable QMap<QString, QSharedPointer<RLayer> > copiedLayers;
69  mutable QMap<QString, QSharedPointer<RBlock> > copiedBlocks;
70 };
71 
73 
74 #endif