<ServerManagerConfiguration>

  <ProxyGroup name="3d_widget_representations">
    <Proxy
      class="vtkProportionalEditRepresentation"
      name="ProportionalEditRepresentation">
      <InputProperty command="SetSurface" label="Input Surface" name="Surface">
        <Documentation>
          This property specifies the input polydata that will be deformed, used
          to generate a preview.
        </Documentation>
        <ProxyGroupDomain name="groups">
          <Group name="sources" />
          <Group name="filters" />
        </ProxyGroupDomain>
        <DataTypeDomain name="input_type">
          <DataType value="vtkPolyData" />
        </DataTypeDomain>
      </InputProperty>
      <StringVectorProperty
        name="SurfaceID"
        command="SetSurfaceID"
        animateable="0"
        number_of_elements="1"
        panel_visibility="never">
      </StringVectorProperty>
      <IntVectorProperty
        animateable="1"
        command="SetVisibility"
        default_values="0"
        name="Visibility"
        number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <IntVectorProperty
        animateable="1"
        command="SetDrawRegion"
        default_values="0"
        name="DrawRegion"
        number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <DoubleVectorProperty
        command="SetRadius"
        default_values="1"
        information_property="InfluenceRadiusInfo"
        name="InfluenceRadius"
        number_of_elements="1">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty
        command="GetRadius"
        information_only="1"
        name="InfluenceRadiusInfo">
        <SimpleDoubleInformationHelper/>
      </DoubleVectorProperty>
      <DoubleVectorProperty
        argument_is_array="1"
        command="SetBottomPoint"
        default_values="0 0 0"
        information_property="AnchorPointInfo"
        name="AnchorPoint"
        number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty
        command="GetBottomPoint"
        information_only="1"
        name="AnchorPointInfo">
        <SimpleDoubleInformationHelper />
      </DoubleVectorProperty>
      <DoubleVectorProperty
        argument_is_array="1"
        command="SetTopPoint"
        default_values="1 0 0"
        information_property="DisplacementInfo"
        name="Displacement"
        number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty
        command="GetTopPoint"
        information_only="1"
        name="DisplacementInfo">
        <SimpleDoubleInformationHelper />
      </DoubleVectorProperty>
      <DoubleVectorProperty
        argument_is_array="1"
        command="SetProjectionPoint"
        default_values="0 1 0"
        information_property="ProjectionInfo"
        name="Projection"
        number_of_elements="3">
        <DoubleRangeDomain name="range" />
      </DoubleVectorProperty>
      <DoubleVectorProperty
        command="GetProjectionPoint"
        information_only="1"
        name="ProjectionInfo">
        <SimpleDoubleInformationHelper />
      </DoubleVectorProperty>
      <IntVectorProperty
        command="SetCylindrical"
        default_values="0"
        name="ProjectionEnabled"
        number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <DoubleVectorProperty command="SetEdgeColor"
                            default_values="1.0 1.0 0.0"
                            name="EdgeColor"
                            number_of_elements="3"
                            panel_visibility="never">
        <DoubleRangeDomain max="1 1 1"
                           min="0 0 0"
                           name="range" />
        <Hints>
          <PropertyLink group="settings" proxy="ColorPalette" property="EdgeColor" unlink_if_modified="1" />
        </Hints>
      </DoubleVectorProperty>
    </Proxy>
  </ProxyGroup>
<!-- ====================================================================== -->
  <ProxyGroup name="representations">
    <NewWidgetRepresentationProxy
      class="vtk3DWidgetRepresentation"
      name="ProportionalEditWidgetRepresentation">
      <IntVectorProperty
        command="SetEnabled"
        default_values="0"
        name="Enabled"
        number_of_elements="1">
        <BooleanDomain name="bool" />
        <Documentation>Enable/Disable widget interaction.</Documentation>
      </IntVectorProperty>
      <SubProxy>
        <Proxy
          name="Prop"
          proxygroup="3d_widget_representations"
          proxyname="ProportionalEditRepresentation"></Proxy>
        <ExposedProperties>
          <Property name="Surface" />
          <Property name="SurfaceID" />
          <Property name="Visibility" />
          <Property name="InfluenceRadiusInfo"/>
          <Property name="InfluenceRadius"/>
          <Property name="AnchorPointInfo" />
          <Property name="AnchorPoint" />
          <Property name="DisplacementInfo" />
          <Property name="Displacement" />
          <Property name="ProjectionInfo" />
          <Property name="Projection" />
          <Property name="ProjectionEnabled" />
          <Property name="DrawRegion" />
          <Property name="EdgeColor" />
        </ExposedProperties>
      </SubProxy>
      <SubProxy>
        <Proxy
          name="Widget"
          proxygroup="3d_widgets"
          proxyname="ProportionalEditWidget"></Proxy>
      </SubProxy>
    </NewWidgetRepresentationProxy>

  </ProxyGroup>
<!-- ====================================================================== -->
  <ProxyGroup name="3d_widgets">

    <Proxy
      base_proxygroup="3d_widgets"
      base_proxyname="WidgetBase"
      class="vtkProportionalEditWidget"
      name="ProportionalEditWidget">
    </Proxy>

  </ProxyGroup>

<!-- ====================================================================== -->
  <ProxyGroup name="implicit_functions">

    <Proxy
            name="ProportionalEditFilter"
            class="vtkProportionalEditFilter"
    >
      <DoubleVectorProperty
              name="InfluenceRadius"
              command="SetInfluenceRadius"
              default_values="1.0"
              number_of_elements="1">
        <DoubleRangeDomain name="range" min="0.0"/>
      </DoubleVectorProperty>
      <DoubleVectorProperty
        name="AnchorPointCoords"
        command="SetAnchorPointCoords"
        default_values="0.0 0.0 0.0"
        number_of_elements="3">
        <DoubleRangeDomain name="range"/>
      </DoubleVectorProperty>
      <DoubleVectorProperty
        name="AnchorPointDisplacement"
        command="SetAnchorPointDisplacement"
        default_values="0.0 0.0 1.0"
        number_of_elements="3">
        <DoubleRangeDomain name="range"/>
      </DoubleVectorProperty>
      <DoubleVectorProperty
              name="ProjectionDirection"
              command="SetProjectionDirection"
              default_values="0.0 0.0 1.0"
              number_of_elements="3">
        <DoubleRangeDomain name="range"/>
      </DoubleVectorProperty>
      <IntVectorProperty
              name="Projected"
              command="SetProjected"
              default_values="0"
              number_of_elements="1">
        <BooleanDomain name="bool" />
      </IntVectorProperty>
      <PropertyGroup
        label="Proportional Editing Filter Parameters"
        panel_widget="InteractiveProportionalEditFilter">
        <Property function="InfluenceRadius" name="InfluenceRadius" />
        <Property function="ProjectionEnabled" name="Projected" />
        <Property function="AnchorPoint" name="AnchorPointCoords" />
        <Property function="Displacement" name="AnchorPointDisplacement" />
        <Property function="Projection" name="ProjectionDirection" />
      </PropertyGroup>
    </Proxy>

  </ProxyGroup>

</ServerManagerConfiguration>
