Interface OffscreenLayerSurface

  • All Known Implementing Classes:
    JAWTWindow

    public interface OffscreenLayerSurface
    Interface specifying the offscreen layer surface protocol.
    • Method Detail

      • attachSurfaceLayer

        void attachSurfaceLayer​(long layerHandle)
                         throws NativeWindowException
        Attach the offscreen layer to this offscreen layer surface.

        Implementation may realize all required resources at this point.

        Throws:
        NativeWindowException - if #isOffscreenLayerSurfaceEnabled() == false
        See Also:
        #isOffscreenLayerSurfaceEnabled()
      • detachSurfaceLayer

        void detachSurfaceLayer()
                         throws NativeWindowException
        Detaches a previously attached offscreen layer from this offscreen layer surface.
        Throws:
        NativeWindowException - if #isOffscreenLayerSurfaceEnabled() == false or no surface layer is attached.
        See Also:
        attachSurfaceLayer(long), #isOffscreenLayerSurfaceEnabled()
      • getAttachedSurfaceLayer

        long getAttachedSurfaceLayer()
        Returns the attached surface layer or null if none is attached.
      • isSurfaceLayerAttached

        boolean isSurfaceLayerAttached()
        Returns true if a surface layer is attached, otherwise false.
      • setChosenCapabilities

        void setChosenCapabilities​(CapabilitiesImmutable caps)
        Sets the capabilities of this instance, allowing upstream API's to refine it, i.e. OpenGL related settings.
      • getLock

        RecursiveLock getLock()
        Returns the recursive lock object of this surface, which synchronizes multithreaded access.
      • setCursor

        boolean setCursor​(PixelRectangle pixelrect,
                          PointImmutable hotSpot)
        Optional method setting cursor in the corresponding on-screen surface/window, if exists.
        Parameters:
        pixelrect - cursor pixels, maybe null for default cursor
        hotSpot - maybe null for default cursor
        Returns:
        true if successful, i.e. on-screen surface/window w/ cursor capabilities exists. Otherwise false.
      • hideCursor

        boolean hideCursor()
        Optional method hiding the cursor in the corresponding on-screen surface/window, if exists.
        Returns:
        true if successful, i.e. on-screen surface/window w/ cursor capabilities exists. Otherwise false.