70 RGuiAction(
const QString& oriText, QObject* parent = 0);
73 void setText(
const QString& oriText);
79 virtual void initTexts();
83 static QString formatToolTip(
const QString& oriText,
const QString& shortcut);
84 QString getToolTip(
const QString& oriText,
const QString& shortcut);
89 void addShortcut(
const QKeySequence& shortcut);
90 void removeShortcuts();
96 void setShortcut(
const QKeySequence& shortcut);
97 void setDefaultShortcut(
const QKeySequence& shortcut);
98 void setShortcuts(
const QList<QKeySequence>& shortcuts);
99 void setShortcutsFromStrings(
const QStringList& shortcuts);
100 QList<QKeySequence> getShortcuts()
const;
101 void setDefaultShortcuts(
const QList<QKeySequence>& shortcuts);
102 QList<QKeySequence> getDefaultShortcuts();
103 void setShortcutText(
const QString& oriText);
104 QString getShortcutText()
const;
105 QString getShortcutsString(
const QString& separator =
",", QKeySequence::SequenceFormat format = QKeySequence::PortableText)
const;
107 static void setGroupSortOrderStatic(QAction* a,
int sortOrder);
108 static void setGroupSortOrderOverrideStatic(QAction* a,
const QString& widgetName,
int sortOrder);
109 static int getGroupSortOrderStatic(
const QAction* a,
const QWidget* w =
NULL);
111 static void setSortOrderStatic(QAction* a,
int sortOrder);
112 static void setSortOrderOverrideStatic(QAction* a,
const QString& widgetName,
int sortOrder);
113 static int getSortOrderStatic(
const QAction* a,
const QWidget* w =
NULL);
115 void setGroupSortOrder(
int sortOrder);
116 void setGroupSortOrderOverride(
const QString& widgetName,
int sortOrder);
117 int getGroupSortOrder(
const QWidget* w =
NULL)
const;
119 void setSortOrder(
int sortOrder);
120 void setSortOrderOverride(
const QString& widgetName,
int sortOrder);
121 int getSortOrder(
const QWidget* w =
NULL)
const;
123 void addToMenu(QMenu* menu);
124 void addToToolBar(QToolBar* tb);
126 static void fixSeparators(
const QWidget* w);
127 static void addSeparatorToWidget(QAction* a, QWidget* w);
128 static void addToWidget(QAction* a, QWidget* w);
129 static void removeFromWidget(QAction* a, QWidget* w);
131 static void updateIcons();
134 static void updateToolTips();
139 virtual void setIcon(
const QString& iconFile);
142 bool isIconDisabled()
const;
148 virtual void setToolTip(
const QString& tip);
154 virtual void setStatusTip(
const QString& tip);
159 virtual void setEnabled(
bool on);
164 virtual void setEnabledOverride(
bool on,
int override);
169 virtual void setChecked(
bool on);
171 static void triggerGroupDefault(
const QString& group);
172 static void triggerGroupDefaults();
177 virtual bool isChecked()
const;
196 requiresDocument = on;
204 return requiresDocument;
211 void setRequiresSelection(
bool on);
218 return requiresSelection;
222 requiresUndoableTransaction = on;
226 return requiresUndoableTransaction;
230 requiresRedoableTransaction = on;
234 return requiresRedoableTransaction;
246 allowInterrupt =
true;
250 return allowInterrupt;
255 setCheckable(checkable);
298 return defaultCommandList;
301 void setDefaultCommands(
const QStringList& cmds);
302 void setCommands(
const QStringList& cmds);
307 void setFactory(FactoryFunction f);
313 void setScriptFile(
const QString& sf,
bool isSecondary =
false);
322 QString getScriptClass()
const;
324 virtual void setGroup(
const QString& title);
327 void setGroupDefault(
bool on);
328 bool isGroupDefault();
340 static bool triggerByCommand(
const QString& cmd);
341 static bool triggerByShortcut(
const QString& sc);
342 static RGuiAction* getByScriptFile(
const QString& scriptFile);
343 static RGuiAction* getByClassName(
const QString& className);
344 static RGuiAction* getByCommand(
const QString& command);
345 static bool triggerByScriptFile(
const QString& scriptFile);
347 static QStringList getAvailableCommands(
bool primaryOnly=
false);
348 static QStringList getAvailableCommands(
const QString& start,
bool primaryOnly=
false);
359 void addArgument(
const QString& arg);
361 void clearArguments();
363 static void setWidgetNamesStatic(QAction* a,
const QStringList& widgetNames);
364 static QStringList getWidgetNamesStatic(
const QAction *a);
366 void setWidgetNames(
const QStringList& widgetNames);
367 QStringList getWidgetNames()
const;
373 bool slotTrigger(
const QString& command = QString());
void init(void basePath)
Definition AddBlockInit.js:2
Q_DECLARE_METATYPE(RMath *)
void getArguments(void args, void shortFlag, void longFlag)
Definition arguments.js:23
A graphics document contains and owns entities, layers, user coordinate systems, variables,...
Definition RDocument.h:78
Interface for interaction between a graphics document and a user.
Definition RDocumentInterface.h:97
Abstract base class for classes that are interested in the current focus.
Definition RFocusListener.h:36
virtual void updateFocus(RDocumentInterface *di)=0
Called by the document whenever the focus changed from one MDI to another.
Abstract base class for GUI action classes.
Definition RGuiAction.h:62
bool getRequiresRedoableTransaction() const
Definition RGuiAction.h:233
bool forceGlobal
Definition RGuiAction.h:397
void setNoState(bool checkable=false)
Definition RGuiAction.h:253
QList< QKeySequence > defaultShortcuts
Definition RGuiAction.h:409
static QList< RGuiAction * > getActions()
Definition RGuiAction.h:336
void setRequiresDocument(bool on)
If on is true, this action requires a document to be open.
Definition RGuiAction.h:195
QStringList defaultCommandList
Definition RGuiAction.h:392
bool getAllowInterrupt() const
Definition RGuiAction.h:249
void setRequiresRedoableTransaction(bool on)
Definition RGuiAction.h:229
bool requiresUndoableTransaction
Definition RGuiAction.h:400
bool getRequiresDocument() const
Definition RGuiAction.h:203
bool allowInterrupt
Definition RGuiAction.h:403
bool noState
Definition RGuiAction.h:404
static QMap< QString, RGuiAction * > actionsByShortcut
Definition RGuiAction.h:380
QString oriText
Definition RGuiAction.h:387
static QMap< QString, RGuiAction * > actionsByPrimaryCommand
Definition RGuiAction.h:381
QString shortcutText
Definition RGuiAction.h:411
QString scriptFile
Definition RGuiAction.h:388
bool toggleable
Definition RGuiAction.h:405
int enabledOverride
Definition RGuiAction.h:414
QStringList arguments
Definition RGuiAction.h:407
QString uniqueGroup
Definition RGuiAction.h:406
void setUniqueGroup(const QString &ug)
Definition RGuiAction.h:273
bool iconDisabled
Definition RGuiAction.h:413
void setOverride()
Definition RGuiAction.h:237
bool groupDefault
Definition RGuiAction.h:394
void setRequiresUndoableTransaction(bool on)
Definition RGuiAction.h:221
bool isToggleable() const
Definition RGuiAction.h:269
QString getScriptFile() const
Definition RGuiAction.h:318
QString getUniqueGroup() const
Definition RGuiAction.h:277
static QMultiMap< QString, RGuiAction * > actionsByGroup
Definition RGuiAction.h:383
static QMap< QString, RGuiAction * > actionsByCommand
Copyright (c) 2011-2018 by Andrew Mustun.
Definition RGuiAction.h:379
QString group
Definition RGuiAction.h:393
bool requiresDocument
Definition RGuiAction.h:398
QString oriToolTip
Definition RGuiAction.h:412
FactoryFunction factory
Definition RGuiAction.h:386
void setForceGlobal(bool on)
If on is true, this action runs in the global script context (default for actions that don't require ...
Definition RGuiAction.h:183
bool isOverride() const
Definition RGuiAction.h:241
QStringList commandList
Definition RGuiAction.h:391
void setAllowInterrupt()
Definition RGuiAction.h:245
void setToggleable(bool on=true)
If enabled, action terminates when activated and already running.
Definition RGuiAction.h:265
bool getRequiresSelection() const
Definition RGuiAction.h:217
static QList< RGuiAction * > actions
Definition RGuiAction.h:384
bool getRequiresUndoableTransaction() const
Definition RGuiAction.h:225
QStringList getCommands() const
Definition RGuiAction.h:293
QStringList getDefaultCommands()
Definition RGuiAction.h:297
bool requiresRedoableTransaction
Definition RGuiAction.h:401
bool requiresSelection
Definition RGuiAction.h:399
bool hasNoState() const
Definition RGuiAction.h:258
static QMap< QString, RGuiAction * > actionsByScriptFile
Definition RGuiAction.h:382
QString getMainCommand() const
Definition RGuiAction.h:286
virtual void setCurrentBlock(RDocument *document)
Definition RGuiAction.h:353
bool getForceGlobal() const
Definition RGuiAction.h:187
QString iconFile
Definition RGuiAction.h:389
QString mainCommand
Definition RGuiAction.h:390
QList< QKeySequence > multiKeyShortcuts
Definition RGuiAction.h:410
Abstract base class for classes that are interested in the current selection and want to be notified ...
Definition RSelectionListener.h:36
virtual void updateSelectionListener(RDocumentInterface *documentInterface)=0
Called by the document whenever the current selection changes.
Transaction implementation.
Definition RTransaction.h:73
Abstract base class for classes that want to be notified on every transaction (objects added,...
Definition RTransactionListener.h:40
virtual void updateTransactionListener(RDocument *document, RTransaction *transaction=NULL)=0
Called by the document whenever the current transaction stack changes.
#define QCADCORE_EXPORT
Definition core_global.h:10
#define NULL
Definition opennurbs_system.h:256