Overview | Modules | Class Hierarchy | Classes | Members

Classes | Namespaces | Defines
Interactor.h File Reference
`#include <QtCore/qobject.h>`
`#include <QtGui/QAction>`
`#include <tulip/Plugin.h>`
`#include <tulip/TulipRelease.h>`
`#include <tulip/TemplateFactory.h>`
`#include "InteractorManager.h"`
Include dependency graph for Interactor.h:
This graph shows which files directly or indirectly include this file:

## Classes

- class tlp::InteractorAction
    InteractorAction extend QAction to provide Interactor information. More...
- class tlp::Interactor
    Tulip interactor main class. More...
- class tlp::InteractorContext
- class tlp::InteractorFactory

## Namespaces

- namespace tlp

    The ColorButton widget provides a push button to display and allow user selection of a color.

## Defines

- #define INTERACTORPLUGINFACTORY(T, C, N, A, D, I, R, G)
- #define INTERACTORPLUGINOFGROUP(C, N, A, D, I, R, G) INTERACTORPLUGINFACTORY(Interactor,C,N,A,D,I,R,G)
- #define INTERACTORPLUGIN(C, N, A, D, I, R) INTERACTORPLUGINOFGROUP(C,N,A,D,I,R,"")
- #define INTERACTORPLUGINVIEWEXTENSION(CN, CNT, BCNT, VCN, A, D, I, R)
- #define INTERACTORPLUGINVIEWEXTENSIONWITHPRIORITY(CN, CNT, BCNT, VCN, A, D, I, R, P)

## Define Documentation

#define INTERACTORPLUGIN | ( |  | C,
|  |  | N,
|  |  | A,
|  |  | D,
|  |  | I,
|  |  | R
| ) |  | INTERACTORPLUGINOFGROUP(C,N,A,D,I,R,"")

#define INTERACTORPLUGINFACTORY | ( |  | T,
|  |  | C,
|  |  | N,
|  |  | A,
|  |  | D,
|  |  | I,
|  |  | R,
|  |  | G
| ) |  |

Value:

    class C##T##Factory:public tlp::T##Factory   \
    {                                                \
    public:                                          \
      C##T##Factory(){         \
        initFactory();               \
        factory->registerPlugin(this);           \
      }                  \
      std::string getName() const { return std::string(N);}  \
      std::string getGroup() const { return std::string(G);}   \
      std::string getAuthor() const {return std::string(A);}   \
      std::string getDate() const {return std::string(D);}   \
      std::string getInfo() const {return std::string(I);}   \
      std::string getRelease() const {return std::string(R);}\
      std::string getTulipRelease() const {return std::string(TULIP_RELEASE);} \
      tlp::T * createPluginObject(tlp::InteractorContext *)        \
      {            \
        C *tmp = new C();        \
        return ((tlp::T *) tmp);       \
      }            \
    };                                               \
    extern "C" {                                            \
      C##T##Factory C##T##FactoryInitializer;               \
    }

#define INTERACTORPLUGINOFGROUP | ( |  | C,
|  |  | N,
|  |  | A,
|  |  | D,
|  |  | I,
|  |  | R,
|  |  | G
| ) |  | INTERACTORPLUGINFACTORY(Interactor,C,N,A,D,I,R,G)

#define INTERACTORPLUGINVIEWEXTENSION | ( |  | CN,
|  |  | CNT,
|  |  | BCNT,
|  |  | VCN,
|  |  | A,
|  |  | D,
|  |  | I,
|  |  | R
| ) |  |

Value:

    class CN : public Interactor { \
    public : \
      CN() {baseInteractor=InteractorManager::getInst().getInteractor(BCNT);if(baseInteractor){setPriority(baseInteractor->getPriority());}} \
      ~CN() {delete baseInteractor;} \
      void setView(View *view){if(baseInteractor){baseInteractor->setView(view);}} \
      void install(QWidget *widget){if(baseInteractor){baseInteractor->install(widget);}} \
      void remove(){if(baseInteractor){baseInteractor->remove();}} \
      QWidget *getConfigurationWidget(){if(baseInteractor){return baseInteractor->getConfigurationWidget();}else{return NULL;}} \
      bool isCompatible(const std::string &viewName){if(baseInteractor){return viewName==VCN;}else{return false;}} \
      InteractorAction* getAction(){if(baseInteractor){return baseInteractor->getAction();}else{return NULL;}} \
      void compute(GlMainWidget *widget){if(baseInteractor){baseInteractor->compute(widget);}} \
      void draw(GlMainWidget *widget){if(baseInteractor){baseInteractor->draw(widget);}} \
    protected : \
      Interactor *baseInteractor; \
    }; \
    INTERACTORPLUGIN(CN, CNT, A , D , I , R)

#define INTERACTORPLUGINVIEWEXTENSIONWITHPRIORITY | ( |  | CN,
|  |  | CNT,
|  |  | BCNT,
|  |  | VCN,
|  |  | A,
|  |  | D,
|  |  | I,
|  |  | R,
|  |  | P
| ) |  |

Value:

    class CN : public Interactor { \
    public : \
     CN() {setPriority(P);baseInteractor=InteractorManager::getInst().getInteractor(BCNT);} \
     ~CN() {delete baseInteractor;}\
     void setView(View *view){if(baseInteractor){baseInteractor->setView(view);}} \
     void install(QWidget *widget){if(baseInteractor){baseInteractor->install(widget);}} \
     void remove(){if(baseInteractor){baseInteractor->remove();}} \
     QWidget *getConfigurationWidget(){if(baseInteractor){return baseInteractor->getConfigurationWidget();}else{return NULL;}} \
     bool isCompatible(const std::string &viewName){if(baseInteractor){return viewName==VCN;}else{return false;}} \
     InteractorAction* getAction(){if(baseInteractor){return baseInteractor->getAction();}else{return NULL;}} \
     void compute(GlMainWidget *widget){if(baseInteractor){baseInteractor->compute(widget);}} \
     void draw(GlMainWidget *widget){if(baseInteractor){baseInteractor->draw(widget);}} \
    protected : \
      Interactor *baseInteractor; \
    }; \
    INTERACTORPLUGIN(CN, CNT, A , D , I , R)

Tulip Software by LaBRI Visualization Team 2001 - 2012