1 #ifndef RS_ACTIONLIBRARYINSERT_H
2 #define RS_ACTIONLIBRARYINSERT_H
4 #include "rs_creation.h"
6 #include "rs_previewactioninterface.h"
9 * This action class can handle user events for inserting library items
10 * (or any other DXF files) into the current drawing (as block/insert).
12 * @author Andrew Mustun
14 class RS_ActionLibraryInsert: public RS_PreviewActionInterface
21 SetTargetPoint, /**< Setting the reference point. */
22 SetAngle, /**< Setting angle in the command line. */
23 SetFactor /**< Setting factor in the command line. */
24 //SetColumns, /**< Setting columns in the command line. */
25 //SetRows, /**< Setting rows in the command line. */
26 //SetColumnSpacing, /**< Setting column spacing in the command line. */
27 //SetRowSpacing /**< Setting row spacing in the command line. */
31 RS_ActionLibraryInsert(RS_EntityContainer & container, GraphicView & graphicView);
32 virtual ~RS_ActionLibraryInsert();
34 virtual RS2::ActionType rtti();
35 virtual void init(int status = 0);
37 virtual void trigger();
38 virtual void mouseMoveEvent(QMouseEvent * e);
39 virtual void mouseReleaseEvent(QMouseEvent * e);
40 virtual void coordinateEvent(Vector * e);
41 virtual void commandEvent(RS_CommandEvent * e);
42 virtual QStringList getAvailableCommands();
43 virtual void showOptions();
44 virtual void hideOptions();
45 virtual void updateMouseButtonHints();
46 virtual void updateMouseCursor();
47 virtual void updateToolBar();
48 void setFile(const QString & file);
50 void setAngle(double a);
52 void setFactor(double f);
56 RS_LibraryInsertData data;
58 /** Last status before entering option. */