A node coloring shader preprocessor (for multiple mesh models) item type in the scene interaction tree.
|
DataExecution::Operation * | addToScene (DataExecution::Workspace &root, const QString &sceneIdPath) const override |
|
bool | allowMultipleConnection (QString inputName) const override |
|
unsigned int | getFlags () const override |
|
QString | getIcon () const override |
|
DataExecution::Input * | getInput (DataExecution::Operation &primaryOperation, const QString &inputName) const override |
|
QStringList | getInputNameForType (unsigned int category) const override |
|
QString | getMenuPath () const override |
|
QString | getName () const override |
|
QString | getOperationKey () const override |
|
unsigned int | getOutputType () const override |
|
QString | getSceneItemOutputName () const override |
|
virtual | ~SceneItemType ()=default |
|
virtual DataExecution::Operation * | addSingleItemToScene (DataExecution::Workspace &root, const QString &sceneIdPath) const |
|
virtual DataExecution::Operation * | addToScene (DataExecution::Workspace &root, const QString &sceneIdPath) const =0 |
|
virtual bool | allowMultipleConnection (QString inputName) const |
|
virtual SceneInteractionWidgetItem * | createSceneInteractionWidgetItem (QTreeWidgetItem *parent, const QStringList &text, DataExecution::Operation &op) const |
|
virtual SceneInteractionWidgetItemList | createSceneInteractionWidgetItems (QTreeWidgetItem *parent, const QStringList &text, DataExecution::Operation &op) const |
|
virtual unsigned int | getFlags () const |
|
virtual QString | getIcon () const =0 |
|
virtual DataExecution::Input * | getInput (DataExecution::Operation &primaryOperation, const QString &inputName) const |
|
virtual QStringList | getInputNameForType (unsigned int category) const |
|
virtual QString | getMenuPath () const |
|
virtual QString | getName () const =0 |
|
virtual QString | getOperationKey () const =0 |
|
virtual unsigned int | getOutputType () const |
|
virtual QString | getSceneItemOutputName () const =0 |
|
virtual QString | getTooltipForWrongPositionInTree (const SceneInteractionWidgetItem *currentlySelectedItem) const |
|
virtual bool | isValidUnderTreeItem (const SceneInteractionWidgetItem *currentlySelectedItem) const |
|
virtual void | labelChanged (DataExecution::Workspace &root, const QString &sceneIdPath) const |
|
virtual DataExecution::Operation * | promptAndAddToScene (DataExecution::Workspace &root, const QString &sceneIdPath) const |
|
virtual void | removeFromScene (DataExecution::Workspace &root, const QString &sceneIdPath) const |
|
virtual void | sceneItemTypeAdded (const SceneItemType &typeJustAddedToWorkflow, DataExecution::Operation *primaryOperationJustAdded, DataExecution::Workspace &rootWorkspace, const QString &parentIdPath) const |
|
virtual void | sceneItemTypeRemoved (const SceneItemType &typeJustRemovedFromWorkflow, const SceneInteractionWidgetItem &treeItemRemoved, DataExecution::Operation *primaryOperationJustAdded, DataExecution::Workspace &rootWorkspace, const QString &parentIdPath) const |
| Corresponding remove method.
|
|
|
enum | Category {
AllCategories
, Scene
, SceneItem
, MeshData
,
Shader
, Glypher
, Texture
, Overlay
,
LastCategory = 999
} |
|
enum | Flags { UserCanAdd = (1 << 0)
, UserCanRemove = (1 << 1)
, UserCanFocus = (1 << 2)
} |
|
using | SceneInteractionWidgetItemList = QVector< SceneInteractionWidgetItem * > |
|
static const MultiModelNodeColoringShaderPreprocessItemType & | getInstance () |
|
static void | repositionOperation (DataExecution::Operation &op, DataExecution::Operation &anchor, QUndoStack &undoStack) |
| **
|
|
template<typename T > |
static void | setOperationInput (DataExecution::Operation &op, const QString &name, const T &value) |
|
| SceneItemType ()=default |
|
DataExecution::Operation * | addExternalWorkspace (DataExecution::Workspace &rootWorkspace, const QString &workspaceUrl, const QString &opOutputStr, const QString &destOpIdPath) const |
|
DataExecution::Operation * | addExternalWorkspace (DataExecution::Workspace &rootWorkspace, const QString &workspaceUrl, const QString &opOutputStr, DataExecution::Operation &destOp, const QString &destOpInputStr, const SceneItemType *itemType) const |
|
DataExecution::Operation * | addOperation (DataExecution::Workspace &rootWorkspace, const QString &pluginStr, const QString &opStr, const QString &opOutputStr, const QString &destOpIdPath) const |
|
static bool | addConnection (DataExecution::Operation &sourceOp, const QString &sourceOutputStr, DataExecution::Operation &destOp, const QString &destInputStr) |
|
static bool | connectMeshModelSource (DataExecution::Operation &op, const QString &opInputName, DataExecution::Operation &meshInstanceOp) |
|
static DataExecution::Operation * | findOperationWithGlobalName (DataExecution::Workspace &parent, const QString &globalName) |
|
static QPointF | getOperationPosition (DataExecution::Operation &op) |
|
static DataExecution::Output * | traceBackToRealOperationOutput (DataExecution::InputScalar *input) |
|
unsigned int getOutputType |
( |
| ) |
const |
|
overridevirtual |
- Returns
- The Category type this item produces. Will be a SceneItem::Category or some user defined type > SceneItem::LastCategory
The scene interaction code uses the category returned by this function when calling getInputNameForType() to determine if some exising item accepts this item as an input.
Clients may return other types of their own as long as they don't clash with the names of the above types. If this is done it is expected that a client has also defined one or more types that return a valid input when the new type is passed to getInputNameForType().
The base implementation returns SceneItem.
- See also
- getInputNameForType()
Reimplemented from SceneItemType.