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

      • getDebug

         final Boolean getDebug()

        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.

      • setDebug

         final Unit setDebug(Boolean 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.

      • setMaxFPS

         final Unit setMaxFPS(Integer maxFPS)

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

      • 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.

      • getMasterIsFramebuffer

         final Boolean getMasterIsFramebuffer()

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

      • setMasterIsFramebuffer

         final Unit setMasterIsFramebuffer(Boolean masterIsFramebuffer)

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

      • getMinDrawablesForFramebuffer

         final Integer getMinDrawablesForFramebuffer()

        minimum number of drawables in a layout (and its children) 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(Integer minDrawablesForFramebuffer)

        minimum number of drawables in a layout (and its children) 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.

      • getDraggablesOnTop

         final Boolean getDraggablesOnTop()

        Weather or not the system should promote dragging drawables to the top of the render queue. This means they are rendered last so look correct.

        They will still retain their order relative to each other.

      • setDraggablesOnTop

         final Unit setDraggablesOnTop(Boolean draggablesOnTop)

        Weather or not the system should promote dragging drawables to the top of the render queue. This means they are rendered last so look correct.

        They will still retain their order relative to each other.

      • getFramebuffersEnabled

         final Boolean getFramebuffersEnabled()

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

      • setFramebuffersEnabled

         final Unit setFramebuffersEnabled(Boolean framebuffersEnabled)

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

      • getRenderPausingEnabled

         final Boolean getRenderPausingEnabled()

        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.

      • setRenderPausingEnabled

         final Unit setRenderPausingEnabled(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.

      • 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

      • getScrollMultiplier

         final Pair<Integer, Integer> 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(Pair<Integer, Integer> 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.

      • getWindowAspectRatio

         final Pair<Integer, Integer> getWindowAspectRatio()

        Set the window 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 window 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.

      • setWindowAspectRatio

         final Unit setWindowAspectRatio(Pair<Integer, Integer> windowAspectRatio)

        Set the window 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 window 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.

      • getCleanupAfterInit

         final Boolean getCleanupAfterInit()

        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.

      • setCleanupAfterInit

         final Unit setCleanupAfterInit(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.

      • getCleanupOnShutdown

         final Boolean getCleanupOnShutdown()

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

      • setCleanupOnShutdown

         final Unit setCleanupOnShutdown(Boolean cleanupOnShutdown)

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

      • getLoadTranslationsOnInit

         final Boolean getLoadTranslationsOnInit()

        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.

      • setLoadTranslationsOnInit

         final Unit setLoadTranslationsOnInit(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.