Package limn.backend
Record Class Resolution
java.lang.Object
java.lang.Record
limn.backend.Resolution
- Record Components:
width- width in screen coordinates (> 0)height- height in screen coordinates (> 0)refreshRate- refresh rate in Hz, or0when unspecified/default
An immutable screen mode: a size and refresh rate. A normalized value
type shared across the toolkit:
Display lists the modes it supports
and reports its current one, and NativeWindow.enterFullscreen(Resolution)
consumes one.
The size is in screen coordinates, the unit of Display.bounds(),
and not always in pixels. It is pixels on Windows, X11 and Wayland. It is
points on macOS, where a HiDPI mode draws into a framebuffer of
width × Display.contentScale() pixels, which the system may
then scale to fit the panel: a built-in Retina display whose panel is
3456 × 2234 pixels reports its default mode as 1728 × 1117, and its "more
space" mode as 2056 × 1285, drawn at 4112 × 2570 and scaled down. So a mode's
size says what a window covering the screen measures in screen coordinates,
not how many pixels the panel has, and there is no single pixel size to
convert it to.
-
Constructor Summary
ConstructorsConstructorDescriptionResolution(int width, int height) A resolution with an unspecified (0) refresh rate.Resolution(int width, int height, int refreshRate) Creates an instance of aResolutionrecord class. -
Method Summary
Modifier and TypeMethodDescriptiondoublefinal booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.intheight()Returns the value of theheightrecord component.intReturns the value of therefreshRaterecord component.toString()Returns a string representation of this record class.intwidth()Returns the value of thewidthrecord component.
-
Constructor Details
-
Resolution
public Resolution(int width, int height, int refreshRate) Creates an instance of aResolutionrecord class.- Parameters:
width- the value for thewidthrecord componentheight- the value for theheightrecord componentrefreshRate- the value for therefreshRaterecord component
-
Resolution
public Resolution(int width, int height) A resolution with an unspecified (0) refresh rate.
-
-
Method Details
-
aspectRatio
public double aspectRatio()- Returns:
- width / height (e.g.
1.777…for 16:9).
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared with '=='. -
width
public int width()Returns the value of thewidthrecord component.- Returns:
- the value of the
widthrecord component
-
height
public int height()Returns the value of theheightrecord component.- Returns:
- the value of the
heightrecord component
-
refreshRate
public int refreshRate()Returns the value of therefreshRaterecord component.- Returns:
- the value of the
refreshRaterecord component
-