Kross::Api::ScriptActionCollection Class Reference

#include <scriptaction.h>

Collaboration diagram for Kross::Api::ScriptActionCollection:

Collaboration graph
[legend]
List of all members.

Detailed Description

A collection to store ScriptAction shared pointers.

A ScriptAction instance could be stored within multiple ScriptActionCollection instances.

Definition at line 177 of file scriptaction.h.

Public Member Functions

 ScriptActionCollection (const QString &text, KActionCollection *ac, const char *name)
 ~ScriptActionCollection ()
ScriptAction::Ptr action (const QCString &name)
QValueList< ScriptAction::Ptractions ()
KActionMenu * actionMenu ()
void attach (ScriptAction::Ptr action)
void detach (ScriptAction::Ptr action)
void clear ()


Constructor & Destructor Documentation

Kross::Api::ScriptActionCollection::ScriptActionCollection const QString text,
KActionCollection *  ac,
const char *  name
[inline]
 

Constructor.

Parameters:
text The text used to display some describing caption.
ac The KActionCollection which should be used to as initial content for the KActionMenu m_actionmenu .
name The internal name.

Definition at line 216 of file scriptaction.h.

00217                 : m_actionmenu( new KActionMenu(text, ac, name) )
00218                 , m_dirty(true) {}

Kross::Api::ScriptActionCollection::~ScriptActionCollection  )  [inline]
 

Destructor.

Definition at line 224 of file scriptaction.h.

References QValueList::begin(), and QValueList::end().

00224                                       {
00225                 for(QValueList<ScriptAction::Ptr>::Iterator it = m_list.begin(); it != m_list.end(); ++it)
00226                     (*it)->detach(this);
00227             }


Member Function Documentation

ScriptAction::Ptr Kross::Api::ScriptActionCollection::action const QCString name  )  [inline]
 

Returns:
the ScriptAction instance which has the name name or NULL if there exists no such action.

Definition at line 233 of file scriptaction.h.

00233 { return m_actions[name]; }

KActionMenu* Kross::Api::ScriptActionCollection::actionMenu  )  [inline]
 

Returns:
the KActionMenu m_actionmenu .

Definition at line 243 of file scriptaction.h.

00243 { return m_actionmenu; }

QValueList<ScriptAction::Ptr> Kross::Api::ScriptActionCollection::actions  )  [inline]
 

Returns:
a list of actions.

Definition at line 238 of file scriptaction.h.

00238 { return m_list; }

void Kross::Api::ScriptActionCollection::attach ScriptAction::Ptr  action  )  [inline]
 

Attach a ScriptAction instance to this ScriptActionCollection .

Definition at line 248 of file scriptaction.h.

References QValueList::append().

00248                                                 {
00249                 m_dirty = true;
00250                 m_actions[ action->name() ] = action;
00251                 m_list.append(action);
00252                 m_actionmenu->insert(action);
00253                 action->attach(this);
00254             }

void Kross::Api::ScriptActionCollection::clear  )  [inline]
 

Clear this ScriptActionCollection . The collection will be empty and there are no actions attach any longer.

Definition at line 271 of file scriptaction.h.

References QValueList::begin(), and QValueList::end().

Referenced by Kross::Api::ScriptGUIClient::reloadInstalledScripts().

00271                          {
00272                 for(QValueList<ScriptAction::Ptr>::Iterator it = m_list.begin(); it != m_list.end(); ++it) {
00273                     m_actionmenu->remove(*it);
00274                     (*it)->detach(this);
00275                 }
00276                 m_list.clear();
00277                 m_actions.clear();
00278             }

void Kross::Api::ScriptActionCollection::detach ScriptAction::Ptr  action  )  [inline]
 

Detach a ScriptAction instance from this ScriptActionCollection .

Definition at line 259 of file scriptaction.h.

References QValueList::remove(), and QMap::remove().

Referenced by Kross::Api::WdgScriptsManager::slotUnloadScript().

00259                                                 {
00260                 m_dirty = true;
00261                 m_actions.remove(action->name());
00262                 m_list.remove(action);
00263                 m_actionmenu->remove(action);
00264                 action->detach(this);
00265             }


The documentation for this class was generated from the following file:
Generated on Thu Feb 9 18:01:09 2006 for Kross by  doxygen 1.4.6