1 #ifndef LC_ACTIONGROUPMANAGER_H 2 #define LC_ACTIONGROUPMANAGER_H 3 4 #include <QObject> 5 #include <QList> 6 #include <QMap> 7 8 class QActionGroup; 9 class QAction; 10 11 class LC_ActionGroupManager : public QObject 12 { 13 Q_OBJECT 14 15 public: 16 explicit LC_ActionGroupManager(QObject* parent); 17 18 QActionGroup* block; 19 QActionGroup* circle; 20 QActionGroup* curve; 21 QActionGroup* edit; 22 QActionGroup* ellipse; 23 QActionGroup* file; 24 QActionGroup* dimension; 25 QActionGroup* info; 26 QActionGroup* layer; 27 QActionGroup* line; 28 QActionGroup* modify; 29 QActionGroup* options; 30 QActionGroup* other; 31 QActionGroup* polyline; 32 QActionGroup* restriction; 33 QActionGroup* select; 34 QActionGroup* snap; 35 QActionGroup* snap_extras; 36 QActionGroup* view; 37 QActionGroup* widgets; 38 39 QList<QActionGroup*> toolGroups(); 40 QMap<QString, QActionGroup*> allGroups(); 41 void sortGroupsByName(QList<QActionGroup*>& list); 42 43 public slots: 44 void toggleExclusiveSnapMode(bool state); 45 void toggleTools(bool state); 46 47 private: 48 QList<bool> snap_memory; 49 50 }; 51 52 #endif // LC_ACTIONGROUPMANAGER_H 53