WEBfactory 2010

Pipe Controls

The Pipes category contains 14 controls that combine graphical representations of pipes with the multiple signal-driven states and pop-up possibilities.

Visual Structure

The appearance of the Pipes controls is standardized and follows the guidelines required for graphical representation of schematics.

The 14 controls in this category are:

Capture2317.jpg

WFCornerPipe1

Capture2318.jpg

WFLinePipe1

Capture2319.jpg

WFTPipe1

Capture2320.jpg

WFState3WayJoint1

Capture2321.jpg

WFStateBypassPipe1

Capture2322.jpg

WFStateBypassPipe2

Capture2323.jpg

WFStateCornerPipe1

Capture2324.jpg

WFStateCrossPipe1

Capture2325.jpg

WFStateOPipe1

Capture2326.jpg

WFStatePipe1

Capture2327.jpg

WFStatePipe2

Capture2328.jpg

WFStateTPipe1

Capture2329.jpg

WFStateUPipe1

Capture2330.jpg

WFStateYJoint1

Run Time Features

The Pipes controls can have multiple visual styles, which at run time, can help visualizing different conditions.

Two different states of Pipes and StatePipes controls from the Pipes category

Also, if configured at design time, the Pipes controls can open pop-up windows when being clicked.

Capture2339.jpg

Pop-up windows opened by clicking the Pipes controls

The Pop-up functionality is not available for the WFCornerPipe1, WFLinePip1 and WFTPipe1 controls.

Design Time Features

At design time, in Expression Blend, the Pipes controls expose the same functionality:

  • Custom colors, opacity and line thickness.

  • Security options like access for specific authorization names and denied access behaviors.

  • Visual states configuration, either using a states editor or binary mask.

  • Template and parameter communication options.

The WFCornerPipe1, WFLinePip1 and WFTPipe1 controls don't have the same functionality as the rest of the Pipes controls, having no State, Template or Appearance properties. Instead, the three controls use the Mask property to trigger the built in state.

The built in state (represented by the green color) is triggered whenever the value of the associated signal, converted in base 2, matches the binary mask set in the Mask property. For example, if the Mask value is 3 (binary 11), the state will be triggered whenever the signal value is 7 (binary 111), 11 (binary 1011), 15 (binary 1111), etc.

Design-time Properties

The control's design time properties are available in the Properties panel:

Pipes controls (WFCornerPipe1, WFLinePipe1 and WFTPipe1)
  1. LineThickness - allows the user to set the line thickness of the pipes.

  2. Mask- allows the user to set a binary mask for the signal value. The alternative state will be triggered when the signal value matches the binary mask. For example, if the mask value is 2 (binary 10), the alternate state will be triggered whenever the signal value's second bit (bit 1) will match the second bit of the mask; therefore the state will be triggered when the signal value is 2 (binary 10), 3 (binary 11), 6 (binary 110), etc, as long as the second bit will be 1.

  3. SecurityAuthorizationName - allows the user to select an authorization group. The members of the selected authorization group will have access to the control.

  4. SecurityDenyAccessBehaviour - allows the user to select a behavior that will be active when a user that doesn't belong to the above selected authorization group logs in. The action can either be disabled or hidden.

  5. ObjectID - allows the user to define an object name for the control, that can be passed as SignalPrefix when using parameter passing in navigation.

  6. SignalName - allows the user to select a signal (using the SignalBrowser of by typing the signal name in the text box). The selected signal's value will be displayed/written by the control at run time.

  7. SignalPrefix - allows the user to select a signal prefix that can be passed when using parameter control and parameter passing in navigation. The signal prefix can be the ObjectName, ObjectName_PageSignalPrefix, PageSignalPrefix or PageSignalPrefix_ObjectName.

StatePipes controls (WFState3WayJoint1, WFStateBypassPipe1, etc)
  1. LineThickness - allows the user to set the line thickness of the pipes.

  2. PopupModality - allows the user to select the display method for the template. The options are Modal or Modeless.

  3. PopupParameters - the user can define a parameter containing a name and a value. This parameter can be passed to the Pop-up page opened by the button.

  4. PopupSource - select the Pop-up page to be opened when the button is pressed at run time.

  5. PopupTitle - the title of the Pop-up page.

  6. ShowPopup - enables the Pop-up page.

  7. SecurityAuthorizationName - allows the user to select an authorization group. The members of the selected authorization group will have access to the control.

  8. SecurityDenyAccessBehaviour - allows the user to select a behavior that will be active when a user that doesn't belong to the above selected authorization group logs in. The action can either be disabled or hidden.

  9. ObjectID - allows the user to define an object name for the control, that can be passed as SignalPrefix when using parameter passing in navigation.

  10. SignalPrefix - allows the user to select a signal prefix that can be passed when using parameter control and parameter passing in navigation. The signal prefix can be the ObjectName, ObjectName_PageSignalPrefix, PageSignalPrefix or PageSignalPrefix_ObjectName.

  11. States - allows the user to configure multiple states for the control.

    • BlinkingFrequency - the blink speed.

    • Condition - the condition for entering the state.

    • ConditionParameters - allows the user to create conditions for entering in different states. The condition must have a name and a signal.

    • ConditionType - the type of the condition. It can be either SignalName or Equation.

    • IsBlinking - if checked, the control will blink when it will be in this state.

    • IsEnabled - if checked, the control will be enabled when it will be in this state.

    • IsVisible - if checked, the control will be visible when it will be in this state.

    • StateName - the name of the state.

    • AlternateBackground - the background color for the alternate blink state.

    • AlternateForeground - the foreground color for the alternate blink state.

    • Background - the background color for the current state.

    • Foreground - the foreground color for the current state.