SoView2DExtensionSeparator

InventorModule
genre View2D
author MeVis Medical Solutions AG
package MeVisLab/Standard
dll SoView2D
definition view2d.def
see also SoView2D
inherits from SoView2DExtension
keywords grouping, event, handling, evaluation, order

Purpose

The module SoView2DExtensionSeparator enables Extension Grouping.

It groups its child extensions and manages event consumption and drawing order for them. That way, a group of extensions can be treated like one extension and the implementation of more complicated event consumption strategies is possible.

Details

There are two possible locations for SoView2DExtensionSeparator modules:

  • To the left of a SoView2D: this SoView2D will be called parent SoView2D
  • As child of another SoView2DExtensionSeparator: this SoView2DExtensionSeparator will be called parent Separator

There is always a SoView2D that triggers the drawing of an extension, otherwise the extension would do nothing. This SoView2D will be referred to as calling SoView2D.

The module fills its own extension list for drawing and event evaluation (find out more about extension lists).

The SoView2DExtensionSeparator is contained in the extension list of its parent SoView2D or separator, but all children of the SoView2DExtensionSeparator are invisible to the parent (SoView2D or Separator), e.g. they are not in the parent’s extension list. Their drawing and event evaluation methods will only be triggered by the SoView2DExtensionSeparator.

Windows

Default Panel

../../../Modules/Inventor/SoView2D/mhelp/Images/Screenshots/SoView2DExtensionSeparator._default.png

Input Fields

child

name: child, type: SoNode

Output Fields

self

name: self, type: SoNode

Parameter Fields

Visible Fields

Draw children

name: drawingOn, type: Bool, default: TRUE

If checked, children will be drawn.

see also SoView2DExtension.drawingOn

Set event handled flag

name: setEventHandled, type: Bool, default: FALSE

If checked, the events handled by the subgraph will be flagged as being handled.

see also SoView2DExtension.setEventHandled

Ignore handled events

name: ignoreHandledEvents, type: Bool, default: FALSE

If checked, events that are flagged as being handled are ignored by the subgraph.

see also SoView2DExtension.ignoreHandledEvents

Drawing order

name: drawingOrder, type: Enum, default: NORMAL_ORDER

Defines the drawing order that is used if the drawing order of the parent is not used.

Values:

Title Name Description
Normal Order NORMAL_ORDER Left to right.
Reversed Order REVERSED_ORDER Right to left.
Soview2d Order SOVIEW2D_ORDER Same order as the calling SoView2D.
Parent Normal Order PARENT_NORMAL_ORDER If there is a parent SoView2DExtensionSeparator, then use its Drawing Order, else draw from left to right.
Parent Reversed Order PARENT_REVERSED_ORDER If there is a parent SoView2DExtensionSeparator, then use its Drawing Order, else draw from right to left.
Parent Soview2d Order PARENT_SOVIEW2D_ORDER If there is a parent SoView2DExtensionSeparator, then use its Drawing Order, else: same order as the calling SoView2D.

Forward events to children

name: forwardEvents, type: Bool, default: TRUE

If checked, incoming events are forwarded to child extensions.

Mark handled events as unhandled before forwarding

name: markAsUnhandled, type: Bool, default: FALSE

If checked, events flagged as being handled are unflagged as again before they are passed to the children.

Hidden Fields

interactionProviderID

name: interactionProviderID, type: String

see SoView2DExtension.interactionProviderID

editingOn

name: editingOn, type: Bool, default: FALSE

see SoView2DExtension.editingOn

maskValid

name: maskValid, type: Bool, persistent: no

fixZOn

name: fixZOn, type: Bool, default: TRUE

color

name: color, type: Color, default: 1 1 1

see SoView2DExtension.color

selectionTolerance

name: selectionTolerance, type: Float, default: 4

needsValidVoxel

name: needsValidVoxel, type: Bool, default: FALSE

see SoView2DExtension.needsValidVoxel

button1

name: button1, type: Enum, default: IGNORED

see SoView2DExtension.button1

button2

name: button2, type: Enum, default: IGNORED

see SoView2DExtension.button2

button3

name: button3, type: Enum, default: IGNORED

see SoView2DExtension.button3

shift

name: shift, type: Enum, default: IGNORED

see SoView2DExtension.shift

control

name: control, type: Enum, default: IGNORED

see SoView2DExtension.control

alt

name: alt, type: Enum, default: IGNORED

see SoView2DExtension.alt

wantsAllEvents

name: wantsAllEvents, type: Bool, default: FALSE

wantsKeyEvents

name: wantsKeyEvents, type: Bool, default: FALSE

wantsMouseWheelEvents

name: wantsMouseWheelEvents, type: Bool, default: FALSE

createNewMode

name: createNewMode, type: Bool, default: FALSE

see SoView2DExtension.createNewMode

createNewModeRequest

name: createNewModeRequest, type: Trigger

see SoView2DExtension.createNewModeRequest

renderOnSlab

name: renderOnSlab, type: Bool, default: FALSE

clipToSlice

name: clipToSlice, type: Bool, default: FALSE

cursorShape

name: cursorShape, type: Enum, default: UNDEFINED_CURSOR

see SoView2DExtension.cursorShape

drawingOrderIsReversed

name: drawingOrderIsReversed, type: Bool, default: FALSE

updateOrder

name: updateOrder, type: Trigger