20#ifndef KEXIACTIONPROXY_H
21#define KEXIACTIONPROXY_H
23#include <tqguardedptr.h>
24#include <tqasciidict.h>
31#include "kexiproject.h"
32#include "kexisharedactionhost.h"
37class TDEAction_setEnabled_Helper;
55class KEXICORE_EXPORT KexiSharedActionConnector
60 ~KexiSharedActionConnector();
63 void plugSharedAction( const char *action_name, const char *slot);
65 void plugSharedActionToExternalGUI( const char *action_name, KXMLGUIClient *client);
67 void plugSharedActionsToExternalGUI(
68 const TQValueList<TQCString>& action_names, KXMLGUIClient *client);
102 bool isAvailable( const char* action_name, bool alsoCheckInChildren = true) const;
105 bool isSupported( const char* action_name) const;
110 void plugSharedAction( const char *action_name, TQObject* receiver, const char *slot);
112 void unplugSharedAction( const char *action_name);
126 int plugSharedAction( const char *action_name, TQWidget* w);
128 void plugSharedActionToExternalGUI( const char *action_name, KXMLGUIClient *client);
130 void plugSharedActionsToExternalGUI(
131 const TQValueList<TQCString>& action_names, KXMLGUIClient *client);
135 void unplugSharedAction( const char *action_name, TQWidget* w);
142 TDEAction* plugSharedAction( const char *action_name, const TQString& alternativeText, TQWidget* w);
145 virtual TDEAction* sharedAction( const char* action_name);
147 inline TQObject *receiver() const { return m_receiver; }
149 virtual void setAvailable( const char* action_name, bool set);
158 void addActionProxyChild( KexiActionProxy* child );
160 void takeActionProxyChild( KexiActionProxy* child );
162 KexiSharedActionHost *m_host;
163 TQGuardedPtr<TQObject> m_receiver;
164 TQAsciiDict< TQPair<TQSignal*,bool> > m_signals;
166 TQPtrList<KexiActionProxy> m_sharedActionChildren;
168 TQPtrList<TDEAction> m_alternativeActions;
170 KexiActionProxy* m_actionProxyParent;
184 friend class KexiSharedActionHost;
185 friend class TDEAction_setEnabled_Helper;
186 friend class KexiSharedActionConnector;
An interface that acts as proxy for shared actions within the application.
TDEAction_setEnabled_Helper * m_TDEAction_setEnabled_helper For internal use by plugSharedActionToExternalGUI().
bool activateSharedAction(const char *action_name, bool alsoCheckInChildren=true)
TQObject m_signal_parent it's just to have common parent for owned signals
void setActionProxyParent_internal(KexiActionProxy *parent) For internal use by addActionProxyChild(). parent can be 0.
void plugSharedAction(const char *action_name, TQObject *receiver, const char *slot)
void setSharedActionHost(KexiSharedActionHost &host)
void plugSharedAction(const char *action_name, const char *slot)
KexiActionProxy(TQObject *receiver, KexiSharedActionHost *host=0)
|