Interface SyWindowType

All Superinterfaces:
SyBoundedReadableType<SySpaceViewportType>, SySizedReadableType<SySpaceViewportType>, SyWindowReadableType

public interface SyWindowType extends SyWindowReadableType
The type of windows.
  • Method Details

    • screen

      SyScreenType screen()
      Returns:
      The screen to which this window belongs.
    • layout

      void layout(SyLayoutContextType layoutContext)
      Execute a layout pass on the window.
      Parameters:
      layoutContext - The layout context
    • eventSend

      void eventSend(SyWindowEventType event)
      Send an event to the window.
      Parameters:
      event - The event
    • componentForViewportPosition

      Optional<SyComponentType> componentForViewportPosition(com.io7m.jtensors.core.parameterized.vectors.PVector2I<SySpaceViewportType> position, SyComponentQuery query)
      Find a component given a viewport position.
      Parameters:
      position - The position
      query - The type of position query
      Returns:
      A component, if any
      See Also:
    • transformViewportRelative

      com.io7m.jtensors.core.parameterized.vectors.PVector2I<SySpaceWindowType> transformViewportRelative(com.io7m.jtensors.core.parameterized.vectors.PVector2I<SySpaceViewportType> viewportPosition)
      Transform the given viewport position to a window-relative position.
      Parameters:
      viewportPosition - The viewport position
      Returns:
      A window-relative position
    • componentForWindowPosition

      Optional<SyComponentType> componentForWindowPosition(com.io7m.jtensors.core.parameterized.vectors.PVector2I<SySpaceWindowType> w_position, SyComponentQuery query)
      Find the component under the given window-relative position.
      Parameters:
      w_position - The window-relative position
      query - The type of position query
      Returns:
      The component, if any
      See Also:
    • setMaximizeToggle

      void setMaximizeToggle(com.io7m.jregions.core.parameterized.sizes.PAreaSizeI<SySpaceViewportType> viewportSize)
      Toggle the "maximized" nature of the window.
      Parameters:
      viewportSize - The size of the maximized window
    • decorated

      com.io7m.jattribute.core.AttributeType<Boolean> decorated()
      Specified by:
      decorated in interface SyWindowReadableType
      Returns:
      An attribute indicating if the window is decorated
    • setPosition

      void setPosition(com.io7m.jtensors.core.parameterized.vectors.PVector2I<SySpaceViewportType> newPosition)
      Set the window position.
      Parameters:
      newPosition - The new position
    • setSize

      void setSize(com.io7m.jregions.core.parameterized.sizes.PAreaSizeI<SySpaceViewportType> newSize)
      Set the window size.
      Parameters:
      newSize - The new size
    • contentArea

      SyComponentType contentArea()
      Returns:
      The content area component
    • title

      com.io7m.jattribute.core.AttributeType<SyText> title()
      Specified by:
      title in interface SyWindowReadableType
      Returns:
      An attribute representing the window title
    • positionSnapping

      com.io7m.jattribute.core.AttributeType<Integer> positionSnapping()
      Description copied from interface: SyWindowReadableType
      An attribute that, when set to a non-zero value, specifies a snapping value for position values. For a non-zero snapping value n, the resulting position values will be k * n for some non-negative k.
      Specified by:
      positionSnapping in interface SyWindowReadableType
      Returns:
      The position snapping value
    • sizeSnapping

      com.io7m.jattribute.core.AttributeType<Integer> sizeSnapping()
      Description copied from interface: SyWindowReadableType
      An attribute that, when set to a non-zero value, specifies a snapping value for size values. For a non-zero snapping value n, the resulting size values will be k * n for some non-negative k.
      Specified by:
      sizeSnapping in interface SyWindowReadableType
      Returns:
      The size snapping value
    • closeButtonBehaviour

      com.io7m.jattribute.core.AttributeType<SyWindowCloseBehaviour> closeButtonBehaviour()
      Specified by:
      closeButtonBehaviour in interface SyWindowReadableType
      Returns:
      A property denoting the window close button behaviour
    • closeButtonVisibility

      com.io7m.jattribute.core.AttributeType<SyVisibility> closeButtonVisibility()
      Specified by:
      closeButtonVisibility in interface SyWindowReadableType
      Returns:
      An attribute denoting the visibility of the window's close button
    • maximizeButtonVisibility

      com.io7m.jattribute.core.AttributeType<SyVisibility> maximizeButtonVisibility()
      Specified by:
      maximizeButtonVisibility in interface SyWindowReadableType
      Returns:
      An attribute denoting the visibility of the window's maximize button