20 #ifndef _PERSPECTIVE_H
21 #define _PERSPECTIVE_H
23 #include <tulip/PluginContext.h>
24 #include <tulip/Plugin.h>
27 #include <QVariantMap>
38 static const std::string PERSPECTIVE_CATEGORY =
"Perspective";
49 QMainWindow *mainWindow;
52 QVariantMap parameters;
74 QSet<QString> _reservedProperties;
75 QTcpSocket* _agentSocket;
76 unsigned int _perspectiveId;
78 void sendAgentMessage(
const QString&);
79 void notifyProjectLocation(
const QString& path);
80 bool checkSocketConnected();
115 enum ProgressOption {
116 NoProgressOption = 0x0,
121 Q_DECLARE_FLAGS(ProgressOptions,ProgressOption)
123 virtual std::
string category()
const {
124 return PERSPECTIVE_CATEGORY;
127 return ":/tulip/gui/icons/32/plugin_controller.png";
149 return dynamic_cast<T*
>(instance());
171 virtual PluginProgress *progress(ProgressOptions options = ProgressOptions(IsPreviewable | IsStoppable | IsCancellable));
176 QMainWindow* mainWindow()
const;
183 bool isReservedPropertyName(QString name);
188 void registerReservedProperty(QString);
194 virtual void redrawPanels(
bool center=
false)=0;
200 virtual void centerPanelsForGraph(
tlp::Graph*);
215 void showPluginsCenter();
221 void showFullScreen(
bool f);
226 void showProjectsPage();
231 void showAboutPage();
237 void showTrayMessage(
const QString& s);
244 void showErrorMessage(
const QString& title,
const QString& s);
250 virtual void openProjectFile(
const QString& path);
256 void createPerspective(
const QString& name);
258 Q_DECLARE_OPERATORS_FOR_FLAGS(Perspective::ProgressOptions)
262 #endif //_PERSPECTIVE_H
QVariantMap _parameters
Contains extra parameters that have not been parsed by the overleying system. Those are considered to...
QMainWindow * _mainWindow
The main window on which the perspective should build the GUI.
std::string icon() const
The icon (preferably a thumbnail) of the plugin.
The TulipProject object handles the content of a Tulip project.
TulipProject * _project
The project associated to this perspective. This project can be empty or contain data depending on ho...
virtual bool terminated()
Called when the user wants to close the application.
Contains runtime parameters for a plugin.
static T * typedInstance()
A context data structure for tlp::Perspective instances.
Top-level interface for plug-ins.
PluginProcess subclasses are meant to notify about the progress state of some process (typically a pl...
A Perspective is a Tulip plugin that completely re-defines the user interface.