# IRsUIControl Interface Reference

Inherits IRsUIControlBase.

List of all members.

## Public Member Functions
HRESULT | GetPinsCount ([out] RtUlong *ulPinsCount)
HRESULT | SetDefaultPins ([in] IRsNode *pBaseNode)
HRESULT | GetConnForPin ([in] RtUlong ulPin,[out] CONID *idCon)
HRESULT | SetConnForPin ([in] RtUlong ulPin,[in] CONID idCon)
HRESULT | RemoveConnForPin ([in] RtUlong ulPin)
HRESULT | IsDataCompatibile ([in] RtUlong ulPin,[in] VARTYPE vt,[in] CLSID *dataType)
HRESULT | SetName ([in] BSTR bsName)
HRESULT | GetName ([out] BSTR *bsName)
HRESULT | SetData ([in] RtUlong ulPin,[in] VARIANT vData)
HRESULT | GetData ([in] RtUlong ulPin,[out] VARIANT *vData)
HRESULT | ShowSettingWnd ([in] RtUlong ulShow,[in] HWND hparentWnd)
HRESULT | GetHostWindow ([out] HWND *hWndHost)
HRESULT | LoadLayout ([in] IStream *pStm,[in]RtUlong streamversion)
HRESULT | SaveLayout ([in] IStream *pStm)
HRESULT | SetDefaultLayout (void)
HRESULT | SetState ([in] RtUlong ulState)
HRESULT | GetRegion ([out, retval] HRGN *hRgn)
HRESULT | Highlight ([in] RtUlong ulIntensity)
HRESULT | PutOwner ([in] IRsUIControlOwner *pOwner)
HRESULT | OnCtrlDestroy (void)
HRESULT | UpdateByPropDlg (void)
HRESULT | GetSettingWindow ([out] HWND *wndSetting)
HRESULT | GetPinRefPoint ([in] RtUlong ulPin,[out, retval] POINT *pRefPoint)
HRESULT | SetUIUpdateAgent ([in] const IID iid)
HRESULT | SetColors ()

## Detailed Description

The IRsUIControl interface provides methods for UI control.

## Member Function Documentation

HRESULT IRsUIControl::GetPinsCount | ( | [out] RtUlong * | ulPinsCount | ) |

Gets count of UI controls pins.

Parameters:

  | ulPinsCount | [out] Pointer to a variable of type RtUlong that retrieves count of pins.

HRESULT IRsUIControl::SetDefaultPins | ( | [in] IRsNode * | pBaseNode | ) |

Sets default pins.

Parameters:

  | pBaseNode | [in] Master node.

HRESULT IRsUIControl::GetConnForPin | ( | [in] RtUlong | ulPin,
|  | [out] CONID * | idCon |
| ) |  |  |

Get connector for specified pin.

Parameters:

  | ulPin | [in] Index of pin.
  | idCon | [out] Pointer to a variable of type CONID that retrieves connectors id.

HRESULT IRsUIControl::SetConnForPin | ( | [in] RtUlong | ulPin,
|  | [in] CONID | idCon |
| ) |  |  |

Set connector for specified pin.

Parameters:

  | ulPin | [in] Index of pin.
  | idCon | [in] New connectors id.

HRESULT IRsUIControl::RemoveConnForPin | ( | [in] RtUlong | ulPin | ) |

Remove connector for specified pin.

Parameters:

  | ulPin | [in] Index of pin which value will be set on GUID_NULL.

HRESULT IRsUIControl::IsDataCompatibile | ( | [in] RtUlong | ulPin,
|  | [in] VARTYPE | vt,
|  | [in] CLSID * | dataType |
| ) |  |  |

Check if data type is compatible with specified pin.

Parameters:

  | ulPin | [in] Index of pin which compatibility will be checked.
  | vt | [in] Variable specifies VARTYPE, that can be used for validation.
  | dataType | [in] Pointer to variable of CLSID, that can be used for validation.

Returns:
  S_OK if validation succeeded, E_INVALIDARG otherwise.

HRESULT IRsUIControl::SetName | ( | [in] BSTR | bsName | ) |

Set name of UI control.

Parameters:

  | bsName | [in] New control name.

HRESULT IRsUIControl::GetName | ( | [out] BSTR * | bsName | ) |

Gets name of UI control.

Parameters:

  | bsName | [out] Pointer to variable that receives control's name.

HRESULT IRsUIControl::SetData | ( | [in] RtUlong | ulPin,
|  | [in] VARIANT | vData |
| ) |  |  |

Set data for control's pin.

Parameters:

  | ulPin | [in] Index of pin.
  | vData | [in] Variable of type VARIANT, which will be set.

HRESULT IRsUIControl::GetData | ( | [in] RtUlong | ulPin,
|  | [out] VARIANT * | vData |
| ) |  |  |

Get data for control's pin.

Parameters:

  | ulPin | [in] Index of pin.
  | vData | [out] Pointer to variable of type VARIANT, which will receive control data.

HRESULT IRsUIControl::ShowSettingWnd | ( | [in] RtUlong | ulShow,
|  | [in] HWND | hparentWnd |
| ) |  |  |

Show settings window.

Parameters:

  | ulShow | [in] Specifies how the window is to be shown: If SW_SHOW window is created window and set position. Otherwise is control updated and window is destroyed.
  | hparentWnd | [in] Handle to the parent window.

HRESULT IRsUIControl::GetHostWindow | ( | [out] HWND * | hWndHost | ) |

Get host Window.

Parameters:

  | hWndHost | [out] Pointer to the variable of type HWND, that retrieve handle to the host window.

HRESULT IRsUIControl::LoadLayout | ( | [in] IStream * | pStm,
|  | [in] RtUlong | streamversion |
| ) |  |  |

Load layout from stream.

Parameters:

  | pStm | [in] Pointer to the source stream.
  | streamversion | [in] Stream version value.

HRESULT IRsUIControl::SaveLayout | ( | [in] IStream * | pStm | ) |

Save layout to stream.

Parameters:

  | pStm | [in] Pointer to the destination stream.

HRESULT IRsUIControl::SetDefaultLayout | ( | void |  | ) |

Sets default control layout.

HRESULT IRsUIControl::SetState | ( | [in] RtUlong | ulState | ) |

Sets control state.

Parameters:

  | ulState | [in] New control state: UI_STATE_NONE - none. UI_STATE_DISABLED - disabled. UI_STATE_EDIT - edit mode.

HRESULT IRsUIControl::GetRegion | ( | [out, retval] HRGN * | hRgn | ) |

Get handle to control region.

Returns:
  hRgn [out, retval] Pointer to the variable of type HRGN that retrieves conrols region.

HRESULT IRsUIControl::Highlight | ( | [in] RtUlong | ulIntensity | ) |

Highlight UI control, this will change background color of control.

Parameters:

  | ulIntensity | [in] Intensity value.

HRESULT IRsUIControl::PutOwner | ( | [in] IRsUIControlOwner * | pOwner | ) |

Sets UI control owner.

Parameters:

  | pOwner | [in] Pointer to interface of IRsUIControlOwner, which contains control owner.

HRESULT IRsUIControl::OnCtrlDestroy | ( | void |  | ) |

Handles destroy of control.

HRESULT IRsUIControl::UpdateByPropDlg | ( | void |  | ) |

Update control's properties by dialog input.

HRESULT IRsUIControl::GetSettingWindow | ( | [out] HWND * | wndSetting | ) |

Get handle of setting window.

Parameters:

  | wndSetting | [out] Pointer to a variable of type HWND, that retrieves handle to the setting window.

HRESULT IRsUIControl::GetPinRefPoint | ( | [in] RtUlong | ulPin,
|  | [out, retval] POINT * | pRefPoint |
| ) |  |  |

Get pins reference point:

- Useful for LE.

Parameters:

  | ulPin | [in] Index of pin.

Returns:
  pRefPoint [out, retval] Pointer to variable of type POINT that retrieves reference point for specific pin.

HRESULT IRsUIControl::SetUIUpdateAgent | ( | [in] const IID | iid | ) |

Set UI Update Agent.

Parameters:

  | iid | [in] Interface id of UI update agent.

HRESULT IRsUIControl::SetColors | ( |  | ) |

Reset control colors.