54 #ifndef SPLATCLOUDRENDERINGCONTROLPLUGIN_HH 55 #define SPLATCLOUDRENDERINGCONTROLPLUGIN_HH 62 #include <QDoubleSpinBox> 88 Q_PLUGIN_METADATA(IID
"org.OpenFlipper.Plugins.Plugin-SplatCloudRenderingControl")
93 void updatedObject(
int _objectId,
const UpdateType &_type );
96 void addToolbox( QString _name, QWidget *_widget, QIcon *_icon );
102 void defineViewModeToolboxes ( QString _mode, QStringList _usedWidgets );
103 void defineViewModeToolbars ( QString _mode, QStringList _usedToolbars );
104 void defineViewModeContextMenus( QString _mode, QStringList _usedContextMenus );
105 void defineViewModeIcon ( QString _mode, QString _iconName );
108 void log( QString _message );
109 void log(
Logtype _type, QString _message );
116 QString
name() {
return QString(
"SplatCloud Rendering Control Plugin" ); }
117 QString
description() {
return QString(
"Control over rendering of SplatClouds" ); }
122 QDoubleSpinBox *toolboxPointsizeScale_;
123 QSpinBox *toolboxDefaultColorR_;
124 QSpinBox *toolboxDefaultColorG_;
125 QSpinBox *toolboxDefaultColorB_;
126 QDoubleSpinBox *toolboxDefaultNormalX_;
127 QDoubleSpinBox *toolboxDefaultNormalY_;
128 QDoubleSpinBox *toolboxDefaultNormalZ_;
129 QDoubleSpinBox *toolboxDefaultPointsize_;
132 QAction *contextScaleAction_;
133 QAction *contextCullingAction_;
134 QAction *contextDefaultsAction_;
135 QAction *contextReloadShadersAction_;
136 QAction *contextRebuildVBOAction_;
139 QWidget *contextScaleWidget_;
140 QDoubleSpinBox *contextScaleWidgetPointsizeScale_;
143 QWidget *contextDefaultsWidget_;
144 QSpinBox *contextDefaultsWidgetDefaultColorR_;
145 QSpinBox *contextDefaultsWidgetDefaultColorG_;
146 QSpinBox *contextDefaultsWidgetDefaultColorB_;
147 QDoubleSpinBox *contextDefaultsWidgetDefaultNormalX_;
148 QDoubleSpinBox *contextDefaultsWidgetDefaultNormalY_;
149 QDoubleSpinBox *contextDefaultsWidgetDefaultNormalZ_;
150 QDoubleSpinBox *contextDefaultsWidgetDefaultPointsize_;
155 void initializePlugin();
158 void addedEmptyObject(
int _objectId );
161 void slotUpdateContextMenu(
int _objectId );
164 void slotToolboxPointsizeScaleValueChanged();
165 void slotToolboxDefaultColorValueChanged();
166 void slotToolboxDefaultNormalValueChanged();
167 void slotToolboxDefaultPointsizeValueChanged();
170 void slotToolboxEnableBackfaceCullingButtonClicked();
171 void slotToolboxDisableBackfaceCullingButtonClicked();
172 void slotToolboxReloadShadersButtonClicked();
173 void slotToolboxRebuildVBOsButtonClicked();
174 void slotToolboxPointSizeButtonClicked();
175 void slotToolboxGeometryShaderButtonClicked();
178 void slotContextScaleActionTriggered();
179 void slotContextCullingActionTriggered();
180 void slotContextReloadShadersActionTriggered();
181 void slotContextRebuildVBOActionTriggered();
182 void slotContextDefaultsActionTriggered();
185 void slotContextScaleWidgetPointsizeScaleValueChanged();
188 void slotContextDefaultsWidgetDefaultColorValueChanged();
189 void slotContextDefaultsWidgetDefaultNormalValueChanged();
190 void slotContextDefaultsWidgetDefaultPointsizeValueChanged();
195 QString version() {
return QString(
"1.0" ); }
202 #endif // SPLATCLOUDRENDERINGCONTROLPLUGIN_HH Interface class for creating custom context menus.
Logtype
Log types for Message Window.
Interface for all plugins which want to Load or Save files and create Objects.
Interface class for adding view modes to the ui.
Interface for all Plugins which do logging to the logging window of the framework.
Plugins can add its own toolbox to the main widget's toolbox area by using this interface.
Interface class from which all plugins have to be created.
QString name()
Return a name for the plugin.
QString description()
Return a description of what the plugin is doing.