Class AbstractGui

java.lang.Object
gaiasky.interafce.AbstractGui
All Implemented Interfaces:
com.badlogic.gdx.utils.Disposable, IObserver, IGui
Direct Known Subclasses:
ControllerGui, CrashGui, DebugGui, FullGui, LoadingGui, RenderGui, SpacecraftGui, StereoGui, VRControllerInfoGui, VRInfoGui, VRSelectionGui, WelcomeGui, WelcomeGuiVR

public abstract class AbstractGui extends Object implements IObserver, IGui
Provides general methods and attributes that all GUIs should have
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected com.badlogic.gdx.backends.lwjgl3.Lwjgl3Graphics
    Graphics instance
    protected int
    Horizontal offset, for VR
    protected com.badlogic.gdx.utils.Array<IGuiInterface>
    The GUI interfaces, if any
    protected Object
    Lock for sync
    protected String
    The name of this GUI
    protected com.badlogic.gdx.scenes.scene2d.ui.Skin
    The skin to use
    protected com.badlogic.gdx.scenes.scene2d.Stage
    The user interface stage
    protected float
    Units per pixel, 1/uiScale This only works with a screen viewport
    protected boolean
    Whether we're in VR mode
  • Constructor Summary

    Constructors
    Constructor
    Description
    AbstractGui​(com.badlogic.gdx.backends.lwjgl3.Lwjgl3Graphics graphics, Float unitsPerPixel)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Removes the focus from this GUI and returns true if the focus was in the GUI, false otherwise.
    void
     
    com.badlogic.gdx.scenes.scene2d.Actor
    findActor​(String name)
    Returns the first actor found with the specified name.
    com.badlogic.gdx.scenes.scene2d.Stage
    Returns the stage
     
    boolean
    Returns whether this GUI must be drawn or not
    void
    notify​(Events event, Object... data)
     
    protected abstract void
    Adds the already created GUI objects to the stage.
    void
    render​(int rw, int rh)
    Renders this GUI
    void
    resize​(int width, int height)
    Resizes this GUI to the given values at the end of the current loop
    void
    resizeImmediate​(int width, int height)
    Resizes without waiting for the current loop to finish
    void
    setHoffset​(int hoffset)
    Sets the horizontal offset, for VR
    void
    Sets the visibility state of the component entities
    void
    setVr​(boolean vr)
    Whether this GUI is to be used in VR mode
    void
    update​(double dt)
    Updates the GUI
    boolean
    updateUnitsPerPixel​(float upp)
    Updates the units-per-pixel value of this GUI.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface gaiasky.interafce.IGui

    doneLoading, initialize
  • Field Details

    • graphics

      protected com.badlogic.gdx.backends.lwjgl3.Lwjgl3Graphics graphics
      Graphics instance
    • ui

      protected com.badlogic.gdx.scenes.scene2d.Stage ui
      The user interface stage
    • skin

      protected com.badlogic.gdx.scenes.scene2d.ui.Skin skin
      The skin to use
    • interfaces

      protected com.badlogic.gdx.utils.Array<IGuiInterface> interfaces
      The GUI interfaces, if any
    • name

      protected String name
      The name of this GUI
    • vr

      protected boolean vr
      Whether we're in VR mode
    • hoffset

      protected int hoffset
      Horizontal offset, for VR
    • unitsPerPixel

      protected float unitsPerPixel
      Units per pixel, 1/uiScale This only works with a screen viewport
    • lock

      protected Object lock
      Lock for sync
  • Constructor Details

    • AbstractGui

      public AbstractGui(com.badlogic.gdx.backends.lwjgl3.Lwjgl3Graphics graphics, Float unitsPerPixel)
  • Method Details

    • update

      public void update(double dt)
      Description copied from interface: IGui
      Updates the GUI
      Specified by:
      update in interface IGui
      Parameters:
      dt - Time in seconds since the last frame
    • render

      public void render(int rw, int rh)
      Description copied from interface: IGui
      Renders this GUI
      Specified by:
      render in interface IGui
      Parameters:
      rw - The render width
      rh - The render height
    • getGuiStage

      public com.badlogic.gdx.scenes.scene2d.Stage getGuiStage()
      Description copied from interface: IGui
      Returns the stage
      Specified by:
      getGuiStage in interface IGui
      Returns:
      The stage
    • getName

      public String getName()
    • dispose

      public void dispose()
      Specified by:
      dispose in interface com.badlogic.gdx.utils.Disposable
    • resize

      public void resize(int width, int height)
      Description copied from interface: IGui
      Resizes this GUI to the given values at the end of the current loop
      Specified by:
      resize in interface IGui
      Parameters:
      width - The new width
      height - The new height
    • resizeImmediate

      public void resizeImmediate(int width, int height)
      Description copied from interface: IGui
      Resizes without waiting for the current loop to finish
      Specified by:
      resizeImmediate in interface IGui
      Parameters:
      width - The new width
      height - The new height
    • rebuildGui

      protected abstract void rebuildGui()
      Adds the already created GUI objects to the stage.
    • cancelTouchFocus

      public boolean cancelTouchFocus()
      Description copied from interface: IGui
      Removes the focus from this GUI and returns true if the focus was in the GUI, false otherwise.
      Specified by:
      cancelTouchFocus in interface IGui
      Returns:
      true if the focus was in the GUI, false otherwise.
    • findActor

      public com.badlogic.gdx.scenes.scene2d.Actor findActor(String name)
      Description copied from interface: IGui
      Returns the first actor found with the specified name. Note this recursively compares the name of every actor in the GUI.
      Specified by:
      findActor in interface IGui
      Returns:
      The actor if it exists, null otherwise.
    • setVisibilityToggles

      public void setVisibilityToggles(ComponentTypes.ComponentType[] entities, ComponentTypes visible)
      Description copied from interface: IGui
      Sets the visibility state of the component entities
      Specified by:
      setVisibilityToggles in interface IGui
      Parameters:
      entities - The entities
      visible - The states
    • notify

      public void notify(Events event, Object... data)
      Specified by:
      notify in interface IObserver
    • setHoffset

      public void setHoffset(int hoffset)
      Description copied from interface: IGui
      Sets the horizontal offset, for VR
      Specified by:
      setHoffset in interface IGui
      Parameters:
      hoffset - The horizontal offset in pixels
    • setVr

      public void setVr(boolean vr)
      Description copied from interface: IGui
      Whether this GUI is to be used in VR mode
      Specified by:
      setVr in interface IGui
      Parameters:
      vr - Vr mode is active
    • mustDraw

      public boolean mustDraw()
      Description copied from interface: IGui
      Returns whether this GUI must be drawn or not
      Specified by:
      mustDraw in interface IGui
      Returns:
      Whether this is visible
    • updateUnitsPerPixel

      public boolean updateUnitsPerPixel(float upp)
      Description copied from interface: IGui
      Updates the units-per-pixel value of this GUI. The units-per-pixel is the same as 1/UI_SCALE.
      Specified by:
      updateUnitsPerPixel in interface IGui