5 #include <QWidgetAction>
7 #define MIN_BUTTON_HEIGHT 18
8 #define MIN_BUTTON_WIDTH 40
10 /**\class XGUI_Command
12 * \brief Represents a command item in the application menu (Workbench)
14 class XGUI_EXPORT XGUI_Command: public QWidgetAction
18 XGUI_Command(const QString& theId, QObject * parent, bool isCheckable = false);
19 XGUI_Command(const QString& theId, const QIcon& icon, const QString& text, QObject* parent, bool isCheckable = false);
22 //! Returns true if the command is enabled
23 virtual bool enabled() const;
25 //! Set the command enabled
26 virtual void enable();
28 //! Set the command disabled
29 virtual void disable();
31 //! Returns Id of the command
32 virtual QString id() const
37 const QStringList& unblockableCommands() const;
38 void setUnblockableCommands(const QStringList& myUnblockableCommands);
40 //! Connect the command to a slot
41 virtual void connectTo(const QObject* theResiver, const char* theSlot);
44 //! Creates a command representation widget dependently on parent widget type
45 virtual QWidget* createWidget(QWidget* theParent);
50 //! List of Ids of commands which WILL NOT be blocked when the command is on.
51 QStringList myUnblockableCommands;