NCL Composer  0.1.5
 All Classes Functions Variables Pages
QnlyComposerPlugin Class Reference
Inheritance diagram for QnlyComposerPlugin:
Collaboration diagram for QnlyComposerPlugin:

Public Slots

virtual void onEntityAdded (QString pluginID, Entity *entity)
 
virtual void errorMessage (QString error)
 
virtual void onEntityChanged (QString pluginID, Entity *entity)
 
virtual void onEntityRemoved (QString pluginID, QString entityID)
 
virtual void changeSelectedEntity (QString pluginID, void *entityUID)
 
virtual void updateFromModel ()
 
virtual void onEntityAdded (QString pluginID, Entity *entity)
 This is called by the core when a new Entity is added. More...
 
virtual void onEntityChanged (QString pluginID, Entity *entity)
 Called by the core when an Entity is changed. More...
 

Signals

void addEntity (QString type, QString parentEntityId, QMap< QString, QString > &atts, bool force)
 This message can be used to add a new entity in the model. More...
 
void setAttributes (Entity *entity, QMap< QString, QString > atts, bool force)
 This message can be used to edit the attributes of an Entity. More...
 
void removeEntity (Entity *entity, bool force)
 This message can be used to ask the core to remove an Entity. More...
 
void setListenFilter (const QStringList &entityTypes)
 Say the core that the plugin is interested in just the entities of the the type passed as parameter. More...
 
void sendBroadcastMessage (const char *msg, void *obj)
 Can be used to extend the current messages of Core. More...
 
void setPluginData (QByteArray data)
 Each plugin is able to save its specific data by calling this message. More...
 
void setCurrentProjectAsDirty ()
 TODO. More...
 

Public Member Functions

 QnlyComposerPlugin (QObject *parent=0)
 
virtual void init ()
 Initialize the plugin. More...
 
virtual QWidget * getWidget ()
 Return the main Widget. More...
 
virtual bool saveSubsession ()
 Says to plugin save its settings. More...
 
QString getPluginInstanceID ()
 
void setPluginInstanceID (QString pluginInstID)
 
void setLanguageProfile (ILanguageProfile *languageProfile)
 
ILanguageProfilegetLanguageProfile ()
 
void setProject (Project *project)
 This call is used by the core to bind an existing NclDocument with this plugin instance. More...
 
ProjectgetProject ()
 This call is used by the core to recover the Project instance previously binded with this plugin instance. More...
 

Protected Slots

void addRegionToView (Entity *entity)
 
void removeRegionFromView (QString entityUID)
 
void changeRegionInView (Entity *entity)
 
void selectRegionInView (QString entityUID)
 
void addRegionBaseToView (Entity *entity)
 
void removeRegionBaseFromView (QString entityUID)
 
void changeRegionBaseInView (Entity *entity)
 
void selectRegionBaseInView (QString entityUID)
 
void addRegion (const QString regionUID, const QString parentUID, const QString regionbaseUID, const QMap< QString, QString > attributes)
 
void removeRegion (const QString regionUID, const QString regionbaseUID)
 
void changeRegion (const QString regionUID, const QString regionbaseUID, const QMap< QString, QString > attributes)
 
void selectRegion (const QString regionUID, const QString regionbaseUID)
 
void addRegionBase (const QString regionbaseUID, const QMap< QString, QString > attributes)
 
void removeRegionBase (const QString regionbaseUID)
 
void changeRegionBase (const QString regionbaseUID, const QMap< QString, QString > attributes)
 
void selectRegionBase (const QString regionbaseUID)
 
void performMediaOverRegionAction (const QString mediaId, const QString regionUID)
 

Protected Attributes

Projectproject
 The Project binded with this particular plugin instance.
 
QString pluginInstanceID
 Each plugin instance also receives a unique instance ID (given by the core).
 
QMutex mutex
 
ILanguageProfilelanguageProfile
 

Detailed Description

Definition at line 29 of file qnlycomposerplugin.h.

Member Function Documentation

void composer::extension::IPlugin::addEntity ( QString  type,
QString  parentEntityId,
QMap< QString, QString > &  atts,
bool  force 
)
signalinherited

This message can be used to add a new entity in the model.

Parameters
type
parentEntityId
atts
force
Project* composer::extension::IPlugin::getProject ( )
inlineinherited

This call is used by the core to recover the Project instance previously binded with this plugin instance.

Returns
project aProject instance

Definition at line 90 of file IPlugin.h.

QWidget * QnlyComposerPlugin::getWidget ( )
virtual

Return the main Widget.

The core calls this method to retrieve the Plugin Graphical Interface. This Widget is going to be wrapped into a QDockWidget and then displayed for the user in the main interface

Returns
QWidget - wrapping the plugin interface

Reimplemented from composer::extension::IPlugin.

Definition at line 146 of file qnlycomposerplugin.cpp.

void QnlyComposerPlugin::init ( )
virtual

Initialize the plugin.

This call is used after the plugin is connected with core. Just after the init return the plugin is able to receive messages from core. Messages send to core befor this call are IGNORED.

Reimplemented from composer::extension::IPlugin.

Definition at line 181 of file qnlycomposerplugin.cpp.

virtual void composer::extension::IPlugin::onEntityAdded ( QString  pluginID,
Entity entity 
)
inlinevirtualslotinherited

This is called by the core when a new Entity is added.

This call is invoked by the core when a new Entity (from that particular types the plugin is listening) is added in the model.

Definition at line 150 of file IPlugin.h.

virtual void composer::extension::IPlugin::onEntityChanged ( QString  pluginID,
Entity entity 
)
inlinevirtualslotinherited

Called by the core when an Entity is changed.

Parameters
pluginIDthe plugin instance id that first called the changes to the entity.
entityThe entity that was modified.

Definition at line 163 of file IPlugin.h.

void composer::extension::IPlugin::removeEntity ( Entity entity,
bool  force 
)
signalinherited

This message can be used to ask the core to remove an Entity.

Parameters
entityThe pointer to the Entity must be removed.
forceIt should be true if the user want to remove that entity even the internal model will not be consistent.
bool QnlyComposerPlugin::saveSubsession ( )
virtual

Says to plugin save its settings.

The core calls this method to notify the plugin that the user is requesting to save this document. Some plugins need to save special settings for a particular document, in case that document is re-open in a different session.

Returns
bool - true if the save was successfull, false otherwise

Reimplemented from composer::extension::IPlugin.

Definition at line 151 of file qnlycomposerplugin.cpp.

void composer::extension::IPlugin::sendBroadcastMessage ( const char *  msg,
void *  obj 
)
signalinherited

Can be used to extend the current messages of Core.

This message is send to all plugins without any validation. The content of the message can be any QObject and are useful to extend the default core message.

Always, the signature of the method msg implemented by an receiver must be an public slot like: void msg(QString pluginID, void *obj)

The core will call this msg method to each publin that implements it when sendBroadcastMethod is called.

Here is the caller graph for this function:

void composer::extension::IPlugin::setAttributes ( Entity entity,
QMap< QString, QString >  atts,
bool  force 
)
signalinherited

This message can be used to edit the attributes of an Entity.

Parameters
entity
atts
force

Here is the caller graph for this function:

void composer::extension::IPlugin::setCurrentProjectAsDirty ( )
signalinherited

TODO.

Todo:
This could be done with setBroadcastMessage?!
void composer::extension::IPlugin::setListenFilter ( const QStringList &  entityTypes)
signalinherited

Say the core that the plugin is interested in just the entities of the the type passed as parameter.

Parameters
entityTypesa list of strings that the plugin want to listen.
void composer::extension::IPlugin::setPluginData ( QByteArray  data)
signalinherited

Each plugin is able to save its specific data by calling this message.

Important: When the plugin send this message, the data overwrite the previously saved by this plugin.

Parameters
dataA byte array contatining the data that plugin wants to save.

Here is the caller graph for this function:

void composer::extension::IPlugin::setProject ( Project project)
inlineinherited

This call is used by the core to bind an existing NclDocument with this plugin instance.

Parameters
documentan NclDocument instance

Definition at line 78 of file IPlugin.h.


The documentation for this class was generated from the following files: