Class Settings

  • All Implemented Interfaces:

    
    public final class Settings
    
                        

    Settings for PolyUI.

    This contains many values that concern the rendering and event handling of PolyUI internally.

    • Constructor Detail

      • Settings

        Settings()
    • Method Detail

      • isDebugMode

         final <Error class: unknown class> isDebugMode()

        this enables the debug renderer and various other debug features, including more verbose checks and logging.

        It can be enabled using -Dpolyui.debug=true in the JVM arguments, or by pressing Ctrl+Shift+I in the application if enabled.

      • enableDebugMode

         final Unit )>enableDebugMode(<Error class: unknown class> debug)

        this enables the debug renderer and various other debug features, including more verbose checks and logging.

        It can be enabled using -Dpolyui.debug=true in the JVM arguments, or by pressing Ctrl+Shift+I in the application if enabled.

      • getMaxFPS

         final Integer getMaxFPS()

        set this to something other than 0 to set a framerate cap for the UI.

        Most implementations will only use this if vsync is disabled.

      • setMaxFPS

         final Unit setMaxFPS(Integer maxFPS)

        set this to something other than 0 to set a framerate cap for the UI.

        Most implementations will only use this if vsync is disabled.

      • getUnfocusedFPS

         final Integer getUnfocusedFPS()

        set this to something other than 0 to change the framerate from the current maxFPS to this value when it is unfocused.

      • setUnfocusedFPS

         final Unit setUnfocusedFPS(Integer unfocusedFPS)

        set this to something other than 0 to change the framerate from the current maxFPS to this value when it is unfocused.

      • isMasterFrameBuffer

         final Boolean isMasterFrameBuffer()

        If true, the renderer will render all layout and component to a 'master' framebuffer, then every frame, render that.

        Since:

        0.18.0

      • setMasterFrameBuffer

         final Unit setMasterFrameBuffer(@ApiStatus.Experimental() Boolean isMasterFrameBuffer)

        If true, the renderer will render all layout and component to a 'master' framebuffer, then every frame, render that.

        Since:

        0.18.0

      • getMinDrawablesForFramebuffer

         final Integer getMinDrawablesForFramebuffer()

        minimum number of drawables in a group before it will use a framebuffer.

        This value should be set to something relatively high, as the performance gain from using a framebuffer only works if there is a large amount of draw calls.

      • setMinDrawablesForFramebuffer

         final Unit setMinDrawablesForFramebuffer(@ApiStatus.Experimental() Integer minDrawablesForFramebuffer)

        minimum number of drawables in a group before it will use a framebuffer.

        This value should be set to something relatively high, as the performance gain from using a framebuffer only works if there is a large amount of draw calls.

      • framebuffersEnabled

         final Boolean framebuffersEnabled()

        Enable or disable framebuffers. Please note that PolyUI is designed to work with framebuffers, so disabling them may cause performance issues.

        Since:

        0.18.0

      • enableFramebuffers

         final Unit enableFramebuffers(@ApiStatus.Experimental() Boolean framebuffersEnabled)

        Enable or disable framebuffers. Please note that PolyUI is designed to work with framebuffers, so disabling them may cause performance issues.

        Since:

        0.18.0

      • isRenderPausingEnabled

         final Boolean isRenderPausingEnabled()

        This optimization enables "render pausing", or allowing the renderer to pause rendering when there are no changes to the UI.

        This requires a setup such as if (polyUI.drew) glfwSwapBuffers(handle) in your main loop.

        Since:

        0.12.0

      • enableRenderPausing

         final Unit enableRenderPausing(Boolean renderPausingEnabled)

        This optimization enables "render pausing", or allowing the renderer to pause rendering when there are no changes to the UI.

        This requires a setup such as if (polyUI.drew) glfwSwapBuffers(handle) in your main loop.

        Since:

        0.12.0

      • getComboMaxInterval

         final Long getComboMaxInterval()

        the time between clicks for them to be considered as a combo.

      • setComboMaxInterval

         final Unit setComboMaxInterval(Long comboMaxInterval)

        the time between clicks for them to be considered as a combo.

      • getMaxComboSize

         final Integer getMaxComboSize()

        maximum amount of clicks that can be combo-ed in any interval

      • getDragThreshold

         final Float getDragThreshold()

        The threshold for a drag to be considered a 'drag', meaning the drag event will begin to be dispatched, in pixels.

        Since:

        1.6.1

      • setDragThreshold

         final Unit setDragThreshold(Float dragThreshold)

        The threshold for a drag to be considered a 'drag', meaning the drag event will begin to be dispatched, in pixels.

        Since:

        1.6.1

      • getScrollMultiplier

         final Vec2 getScrollMultiplier()

        Scroll multiplier factor, which will multiply the returned value of the callback by this value. First value is the X scroll multiplier, with the second being the Y scroll multiplier.

      • setScrollMultiplier

         final Unit setScrollMultiplier(Vec2 scrollMultiplier)

        Scroll multiplier factor, which will multiply the returned value of the callback by this value. First value is the X scroll multiplier, with the second being the Y scroll multiplier.

      • getMinimumSize

         final Vec2 getMinimumSize()

        Set the minimum renderer size (width by height) that this instance can be resized to.

        Set to -1 to disable an axis.

        Since:

        0.18.4

      • setMinimumSize

         final Unit setMinimumSize(Vec2 minimumSize)

        Set the minimum renderer size (width by height) that this instance can be resized to.

        Set to -1 to disable an axis.

        Since:

        0.18.4

      • getMaximumSize

         final Vec2 getMaximumSize()

        Set the maximum renderer size (width by height) that this instance can be resized to.

        Set to -1 to disable an axis.

        Since:

        0.18.4

      • setMaximumSize

         final Unit setMaximumSize(Vec2 maximumSize)

        Set the maximum renderer size (width by height) that this instance can be resized to.

        Set to -1 to disable an axis.

        Since:

        0.18.4

      • getAspectRatio

         final Vec2 getAspectRatio()

        Set the renderer aspect ratio, with the ratio being width:height, e.g. 16 to 9 = 16:9.

        While PolyUI will resize the content to this aspect ratio, if the renderer is not at this aspect ratio it may look odd (content smaller than the window). To prevent this, you must ensure that the window implementation is only allowing resizes to this aspect ratio.

        Set to -1 to disable, or 0 to infer it automatically. Any other value is the aspect ratio.

        Since:

        0.18.4

      • setAspectRatio

         final Unit setAspectRatio(Vec2 aspectRatio)

        Set the renderer aspect ratio, with the ratio being width:height, e.g. 16 to 9 = 16:9.

        While PolyUI will resize the content to this aspect ratio, if the renderer is not at this aspect ratio it may look odd (content smaller than the window). To prevent this, you must ensure that the window implementation is only allowing resizes to this aspect ratio.

        Set to -1 to disable, or 0 to infer it automatically. Any other value is the aspect ratio.

        Since:

        0.18.4

      • willCleanupAfterInit

         final Boolean willCleanupAfterInit()

        This property will explicitly clean up after the initialization of PolyUI, calling the garbage collector to free up temporary objects created during initialization.

        This option will usually halve or more the memory usage, but takes time (~10ms). It is recommended for memory limited scenarios and in production.

        Since:

        0.20.0

      • enableInitCleanup

         final Unit enableInitCleanup(Boolean cleanupAfterInit)

        This property will explicitly clean up after the initialization of PolyUI, calling the garbage collector to free up temporary objects created during initialization.

        This option will usually halve or more the memory usage, but takes time (~10ms). It is recommended for memory limited scenarios and in production.

        Since:

        0.20.0

      • willCleanupOnShutdown

         final Boolean willCleanupOnShutdown()

        This property will run the cleanup() method in a shutdown hook which will free memory used by PolyUI.

        Since:

        0.20.1

      • enableShutdownCleanup

         final Unit enableShutdownCleanup(Boolean cleanupOnShutdown)

        This property will run the cleanup() method in a shutdown hook which will free memory used by PolyUI.

        Since:

        0.20.1

      • shouldLoadTranslationsOnInit

         final Boolean shouldLoadTranslationsOnInit()

        Set this to true to enable loading of translation keys upon startup, instead of the default behaviour of loading them when they are first used.

        Since:

        0.21.1

      • enableTranslationLoadingOnInit

         final Unit enableTranslationLoadingOnInit(Boolean loadTranslationsOnInit)

        Set this to true to enable loading of translation keys upon startup, instead of the default behaviour of loading them when they are first used.

        Since:

        0.21.1

      • forceSetsInitialSize

         final Boolean forceSetsInitialSize()

        This property will mean that, if force is true in the resize method, the initial size will be set to the size given.

        Since:

        1.1.63

      • enableForceSettingInitialSize

         final Unit enableForceSettingInitialSize(Boolean forceSetsInitialSize)

        This property will mean that, if force is true in the resize method, the initial size will be set to the size given.

        Since:

        1.1.63