Class Window

java.lang.Object
com.mojang.blaze3d.platform.Window
All Implemented Interfaces:
AutoCloseable

public final class Window extends Object implements AutoCloseable
  • Field Details

    • LOGGER

      private static final org.slf4j.Logger LOGGER
    • MIN_WINDOW_WIDTH

      public static final int MIN_WINDOW_WIDTH
      See Also:
    • MIN_WINDOW_HEIGHT

      public static final int MIN_WINDOW_HEIGHT
      See Also:
    • BASE_WIDTH

      public static final int BASE_WIDTH
      See Also:
    • BASE_HEIGHT

      public static final int BASE_HEIGHT
      See Also:
    • BORDERLESS_FULLSCREEN_PADDING

      private static final int BORDERLESS_FULLSCREEN_PADDING
      See Also:
    • eventHandler

      private final WindowEventHandler eventHandler
    • monitorManager

      private final MonitorManager monitorManager
    • handle

      private final long handle
    • windowedX

      private int windowedX
    • windowedY

      private int windowedY
    • windowedWidth

      private int windowedWidth
    • windowedHeight

      private int windowedHeight
    • preferredFullscreenVideoMode

      private Optional<VideoMode> preferredFullscreenVideoMode
    • fullscreenRequested

      private boolean fullscreenRequested
    • fullscreen

      private boolean fullscreen
    • x

      private int x
    • y

      private int y
    • width

      private int width
    • height

      private int height
    • framebufferWidth

      private int framebufferWidth
    • framebufferHeight

      private int framebufferHeight
    • guiScaledWidth

      private int guiScaledWidth
    • guiScaledHeight

      private int guiScaledHeight
    • guiScale

      private int guiScale
    • errorSection

      private String errorSection
    • dirty

      private boolean dirty
    • iconified

      private boolean iconified
    • focused

      private boolean focused
    • shouldClose

      private boolean shouldClose
    • closeCallback

      private @Nullable Runnable closeCallback
    • allowCursorChanges

      private boolean allowCursorChanges
    • quitShortcuts

      private boolean quitShortcuts
    • currentCursor

      private CursorType currentCursor
    • exclusiveFullscreen

      private boolean exclusiveFullscreen
    • borderlessFullscreen

      private boolean borderlessFullscreen
  • Constructor Details

  • Method Details

    • getPlatform

      public static String getPlatform()
    • createIconSurface

      private static @Nullable org.lwjgl.sdl.SDL_Surface createIconSurface(NativeImage image)
    • createWindow

      private long createWindow(GpuBackend backend, int width, int height, String title)
    • getActiveVideoMode

      public @Nullable VideoMode getActiveVideoMode()
    • getActiveDisplayMode

      private @Nullable org.lwjgl.sdl.SDL_DisplayMode getActiveDisplayMode()
    • shouldClose

      public boolean shouldClose()
    • handleEvent

      public void handleEvent(org.lwjgl.sdl.SDL_Event event)
    • onDisplayModeChanged

      private void onDisplayModeChanged(int displayId)
    • onQuitRequested

      private void onQuitRequested()
    • updateFullscreenState

      private void updateFullscreenState()
    • requestClose

      private void requestClose()
    • setIcon

      public void setIcon(PackMetadataResources resources, IconSet iconSet) throws IOException
      Throws:
      IOException
    • setIcon

      private void setIcon(List<IoSupplier<InputStream>> iconStreams) throws IOException
      Throws:
      IOException
    • createIconSurface

      private static @Nullable org.lwjgl.sdl.SDL_Surface createIconSurface(IoSupplier<InputStream> iconStream, List<NativeImage> images) throws IOException
      Throws:
      IOException
    • getErrorSection

      public String getErrorSection()
    • setErrorSection

      public void setErrorSection(String string)
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
    • onMove

      private void onMove(int x, int y)
    • onResize

      private void onResize(int newWidth, int newHeight)
    • onFramebufferResize

      private void onFramebufferResize(int newWidth, int newHeight)
    • refreshFramebufferSize

      private void refreshFramebufferSize()
    • framebufferWidthPadding

      private int framebufferWidthPadding()
    • queryFramebufferSize

      public Window.FramebufferSize queryFramebufferSize()
    • onFocus

      private void onFocus(boolean focused)
    • onIconified

      private void onIconified(boolean iconified)
    • updateFullscreenIfChanged

      public void updateFullscreenIfChanged()
    • getPreferredFullscreenVideoMode

      public Optional<VideoMode> getPreferredFullscreenVideoMode()
    • setPreferredFullscreenVideoMode

      public void setPreferredFullscreenVideoMode(Optional<VideoMode> preferredFullscreenVideoMode)
    • changeFullscreenVideoMode

      public void changeFullscreenVideoMode()
    • setMode

      private void setMode()
    • updateWindowMouseGrab

      private void updateWindowMouseGrab()
    • isWindowFullscreen

      private boolean isWindowFullscreen()
    • isExclusiveFullscreen

      public boolean isExclusiveFullscreen()
    • applyFullscreen

      private boolean applyFullscreen()
    • useBorderlessFullscreenWindow

      private boolean useBorderlessFullscreenWindow()
    • applySdlBorderlessFullscreen

      private boolean applySdlBorderlessFullscreen()
    • leaveBorderlessFullscreenWindow

      private void leaveBorderlessFullscreenWindow()
    • applyFullscreenMode

      private boolean applyFullscreenMode()
    • applyExclusiveFullscreen

      private boolean applyExclusiveFullscreen()
    • applyWindowed

      private boolean applyWindowed()
    • applyBorderlessFullscreenWindow

      private boolean applyBorderlessFullscreenWindow()
    • restoreWindow

      private void restoreWindow()
    • syncWindow

      private void syncWindow()
    • setWindowSizeAndPosition

      private boolean setWindowSizeAndPosition(int windowX, int windowY, int windowWidth, int windowHeight)
    • applyBorderlessFullscreen

      private boolean applyBorderlessFullscreen()
    • setExclusiveFullscreen

      public void setExclusiveFullscreen(boolean exclusiveFullscreen)
    • setWindowed

      public void setWindowed(int width, int height)
    • calculateScale

      public int calculateScale(int maxScale, boolean enforceUnicode)
    • setTitle

      public void setTitle(String title)
    • setWindowMaxSize

      public void setWindowMaxSize(int width, int height)
    • handle

      public long handle()
    • setFullscreen

      public void setFullscreen(boolean fullscreen)
    • isIconified

      public boolean isIconified()
    • isFocused

      public boolean isFocused()
    • getWidth

      public int getWidth()
    • setWidth

      public void setWidth(int width)
    • getHeight

      public int getHeight()
    • setHeight

      public void setHeight(int height)
    • getScreenWidth

      public int getScreenWidth()
    • getScreenHeight

      public int getScreenHeight()
    • getGuiScaledWidth

      public int getGuiScaledWidth()
    • getGuiScaledHeight

      public int getGuiScaledHeight()
    • getX

      public int getX()
    • getY

      public int getY()
    • getGuiScale

      public int getGuiScale()
    • setGuiScale

      public void setGuiScale(int guiScale)
    • getPixelDensity

      public float getPixelDensity()
    • findBestMonitor

      public @Nullable Monitor findBestMonitor()
    • setWindowCloseCallback

      public void setWindowCloseCallback(Runnable task)
    • setAllowCursorChanges

      public void setAllowCursorChanges(boolean value)
    • setQuitShortcuts

      public void setQuitShortcuts(boolean value)
    • selectCursor

      public void selectCursor(CursorType cursor)
    • getAppropriateLineWidth

      public float getAppropriateLineWidth()
    • allowedWindowMinSize

      private static int allowedWindowMinSize(int size, int minSize)