KexiActionProxy Class Reference
#include <kexiactionproxy.h>
Inheritance diagram for KexiActionProxy:

Detailed Description
An interface that acts as proxy for shared actions within the application.For example, edit->copy action can be reused to copy different types of items. Availability and meaning of given action depends on the context, while the context changes e.g. when another window is activated. This class is mostly used by subclassing in KexiDialogBase or KexiDockBase
- you can subclass in a similar way.
Definition at line 83 of file kexiactionproxy.h.
Public Member Functions | |
| KexiActionProxy (QObject *receiver, KexiSharedActionHost *host=0) | |
| virtual | ~KexiActionProxy () |
| bool | activateSharedAction (const char *action_name, bool alsoCheckInChildren=true) |
| void | setSharedActionHost (KexiSharedActionHost &host) |
| bool | isAvailable (const char *action_name, bool alsoCheckInChildren=true) const |
| bool | isSupported (const char *action_name) const |
| void | setActionProxyParent_internal (KexiActionProxy *parent) |
| For internal use by addActionProxyChild(). parent can be 0. | |
Public Attributes | |
| KexiActionProxy * | m_focusedChild |
Protected Member Functions | |
| void | plugSharedAction (const char *action_name, QObject *receiver, const char *slot) |
| void | unplugSharedAction (const char *action_name) |
| void | plugSharedAction (const char *action_name, const char *slot) |
| int | plugSharedAction (const char *action_name, QWidget *w) |
| void | plugSharedActionToExternalGUI (const char *action_name, KXMLGUIClient *client) |
| void | plugSharedActionsToExternalGUI (const QValueList< QCString > &action_names, KXMLGUIClient *client) |
| void | unplugSharedAction (const char *action_name, QWidget *w) |
| KAction * | plugSharedAction (const char *action_name, const QString &alternativeText, QWidget *w) |
| virtual KAction * | sharedAction (const char *action_name) |
| QObject * | receiver () const |
| virtual void | setAvailable (const char *action_name, bool set) |
| void | addActionProxyChild (KexiActionProxy *child) |
| void | takeActionProxyChild (KexiActionProxy *child) |
Protected Attributes | |
| KexiSharedActionHost * | m_host |
| QGuardedPtr< QObject > | m_receiver |
| QAsciiDict< QPair< QSignal *, bool > > | m_signals |
| QPtrList< KexiActionProxy > | m_sharedActionChildren |
| QPtrList< KAction > | m_alternativeActions |
| KexiActionProxy * | m_actionProxyParent |
| QObject | m_signal_parent |
| it's just to have common parent for owned signals | |
| KAction_setEnabled_Helper * | m_KAction_setEnabled_helper |
| For internal use by plugSharedActionToExternalGUI(). | |
Friends | |
| class | KexiSharedActionHost |
| class | KAction_setEnabled_Helper |
| class | KexiSharedActionConnector |
Constructor & Destructor Documentation
|
||||||||||||
|
Constructs action proxy for object receiver, using host. If host is NULL, KexiSharedActionHost::defaultHost() is used. (you must be sure that it's true) -- it is casted to QObject and assigned as the receiver. Definition at line 78 of file kexiactionproxy.cpp. References m_alternativeActions, m_host, m_sharedActionChildren, m_signals, and KexiSharedActionHost::plugActionProxy(). |
|
|
Definition at line 93 of file kexiactionproxy.cpp. References m_actionProxyParent, m_host, m_KAction_setEnabled_helper, m_receiver, m_sharedActionChildren, takeActionProxyChild(), and KexiSharedActionHost::takeActionProxyFor(). |
Member Function Documentation
|
||||||||||||
|
Activates action named action_name for this proxy. If the action is executed (accepted), true is returned. Definition at line 192 of file kexiactionproxy.cpp. References activateSharedAction(), m_actionProxyParent, m_sharedActionChildren, and m_signals. Referenced by activateSharedAction(), and KexiSharedActionHostPrivate::slotAction(). |
|
|
Adds child of this proxy. Children will receive activateSharedAction() event, If activateSharedAction() "event" is not consumed by the main proxy, we start to iterate over proxy children (in unspecified order) to and call activateSharedAction() on every child until one of them accept the "event". If proxy child is destroyed, it is automatically detached from its parent proxy. Parent proxy is 0 by default. This pointer is properly cleared when parent proxy is destroyed. Definition at line 262 of file kexiactionproxy.cpp. References m_sharedActionChildren. Referenced by KexiViewBase::addChildView(), KexiRelationMainDlg::KexiRelationMainDlg(), and KexiDialogBase::switchToViewMode(). |
|
||||||||||||
|
Definition at line 233 of file kexiactionproxy.cpp. References isAvailable(), m_actionProxyParent, m_focusedChild, m_sharedActionChildren, and m_signals. Referenced by KexiSharedActionHost::invalidateSharedActions(), and isAvailable(). |
|
|
Definition at line 216 of file kexiactionproxy.cpp. References m_focusedChild, m_sharedActionChildren, and m_signals. Referenced by KexiSharedActionHost::invalidateSharedActions(). |
|
||||||||||||||||
|
Like above, but creates alternative action as a copy of action_name, with alternativeText set. When this action is activated, just original action specified by action_name is activated. The aternative action has autmatically set name as: action_name + "_alt".
Definition at line 151 of file kexiactionproxy.cpp. References m_host, m_receiver, sharedAction(), and KexiSharedActionHost::updateActionAvailable(). |
|
||||||||||||
|
Plugs action named action_name to a widget w, so the action is visible on this widget as an item. w will typically be a menu, popup menu or a toolbar. Does nothing if no action found, so generally this is safer than just caling e.g.
Definition at line 131 of file kexiactionproxy.cpp. References sharedAction(). |
|
||||||||||||
|
Typical version of plugAction() method -- plugs action named action_name to slot slot in _this_ widget. Definition at line 116 of file kexiactionproxy.h. |
|
||||||||||||||||
|
Plugs shared action named action_name to slot slot in receiver. Receiver is usually a child of _this_ widget. Definition at line 109 of file kexiactionproxy.cpp. References m_signal_parent, and m_signals. Referenced by KexiDataAwareView::initActions(), KexiFormView::KexiFormView(), KexiQueryDesignerSQLView::KexiQueryDesignerSQLView(), KexiRelationWidget::KexiRelationWidget(), KexiReportView::KexiReportView(), KexiScriptDesignView::KexiScriptDesignView(), KexiTableDesignerView::KexiTableDesignerView(), KexiSharedActionConnector::plugSharedAction(), plugSharedActionToExternalGUI(), and KexiDataAwareView::reloadActions(). |
|
||||||||||||
|
Definition at line 184 of file kexiactionproxy.cpp. References plugSharedActionToExternalGUI(). Referenced by KexiSharedActionConnector::plugSharedActionsToExternalGUI(). |
|
||||||||||||
|
Definition at line 171 of file kexiactionproxy.cpp. References m_KAction_setEnabled_helper, plugSharedAction(), and setAvailable(). Referenced by plugSharedActionsToExternalGUI(), and KexiSharedActionConnector::plugSharedActionToExternalGUI(). |
|
|
Definition at line 147 of file kexiactionproxy.h. |
|
|
For internal use by addActionProxyChild(). parent can be 0.
Definition at line 276 of file kexiactionproxy.cpp. References m_actionProxyParent. |
|
||||||||||||
|
Reimplemented in KexiViewBase. Definition at line 253 of file kexiactionproxy.cpp. References m_host, m_receiver, m_signals, and KexiSharedActionHost::updateActionAvailable(). Referenced by plugSharedActionToExternalGUI(), KexiViewBase::setAvailable(), and KAction_setEnabled_Helper::slotSetEnabled(). |
|
|
Sets host to host; rerely used. Definition at line 97 of file kexiactionproxy.h. |
|
|
Reimplemented in KexiViewBase. Definition at line 211 of file kexiactionproxy.cpp. References m_host, and KexiSharedActionHost::mainWindow(). Referenced by plugSharedAction(), KexiViewBase::sharedAction(), and unplugSharedAction(). |
|
|
Definition at line 270 of file kexiactionproxy.cpp. References m_sharedActionChildren. Referenced by KexiDialogBase::switchToViewMode(), and ~KexiActionProxy(). |
|
||||||||||||
|
Unplugs action named action_name from a widget w. Definition at line 141 of file kexiactionproxy.cpp. References sharedAction(). |
|
|
Definition at line 122 of file kexiactionproxy.cpp. References m_signals. Referenced by KexiDataAwareView::reloadActions(). |
Friends And Related Function Documentation
|
|
Definition at line 185 of file kexiactionproxy.h. |
|
|
Definition at line 186 of file kexiactionproxy.h. |
|
|
Definition at line 184 of file kexiactionproxy.h. |
Member Data Documentation
|
|
Definition at line 170 of file kexiactionproxy.h. Referenced by activateSharedAction(), KexiViewBase::eventFilter(), isAvailable(), setActionProxyParent_internal(), and ~KexiActionProxy(). |
|
|
Definition at line 168 of file kexiactionproxy.h. Referenced by KexiActionProxy(). |
|
|
Definition at line 182 of file kexiactionproxy.h. Referenced by KexiViewBase::eventFilter(), isAvailable(), and isSupported(). |
|
|
Definition at line 162 of file kexiactionproxy.h. Referenced by KexiActionProxy(), plugSharedAction(), setAvailable(), sharedAction(), and ~KexiActionProxy(). |
|
|
For internal use by plugSharedActionToExternalGUI().
Definition at line 175 of file kexiactionproxy.h. Referenced by plugSharedActionToExternalGUI(), and ~KexiActionProxy(). |
|
|
Definition at line 163 of file kexiactionproxy.h. Referenced by plugSharedAction(), setAvailable(), and ~KexiActionProxy(). |
|
|
Definition at line 166 of file kexiactionproxy.h. Referenced by activateSharedAction(), addActionProxyChild(), isAvailable(), isSupported(), KexiActionProxy(), takeActionProxyChild(), and ~KexiActionProxy(). |
|
|
it's just to have common parent for owned signals
Definition at line 172 of file kexiactionproxy.h. Referenced by plugSharedAction(). |
|
|
Definition at line 164 of file kexiactionproxy.h. Referenced by activateSharedAction(), isAvailable(), isSupported(), KexiActionProxy(), plugSharedAction(), setAvailable(), and unplugSharedAction(). |
The documentation for this class was generated from the following files:
