Class DisplayManager

All Implemented Interfaces:
PointerInterface

public class DisplayManager extends Object
A singleton object that offers notification when displays appear or
disappear.

You can use [func@Gdk.DisplayManager.get] to obtain the `GdkDisplayManager`
singleton, but that should be rarely necessary. Typically, initializing
GTK opens a display that you can work with without ever accessing the
`GdkDisplayManager`.

The GDK library can be built with support for multiple backends.
The `GdkDisplayManager` object determines which backend is used
at runtime.

In the rare case that you need to influence which of the backends
is being used, you can use [func@Gdk.set_allowed_backends]. Note
that you need to call this function before initializing GTK.

## Backend-specific code

When writing backend-specific code that is supposed to work with
multiple GDK backends, you have to consider both compile time and
runtime. At compile time, use the `GDK_WINDOWING_X11`, `GDK_WINDOWING_WIN32`
macros, etc. to find out which backends are present in the GDK library
you are building your application against. At runtime, use type-check
macros like GDK_IS_X11_DISPLAY() to find out which backend is in use:

```c
#ifdef GDK_WINDOWING_X11
if (GDK_IS_X11_DISPLAY (display))
{
// make X11-specific calls here
}
else
#endif
#ifdef GDK_WINDOWING_MACOS
if (GDK_IS_MACOS_DISPLAY (display))
{
// make Quartz-specific calls here
}
else
#endif
g_error ("Unsupported GDK backend");
```

https://docs.gtk.org/gdk4/class.DisplayManager.html

  • Field Details

  • Constructor Details

  • Method Details

    • getClassHandler

      public static ClassHandler getClassHandler()
    • getDefaultDisplay

      public Display getDefaultDisplay()
      Gets the default `GdkDisplay`.
      Returns:
      a `GdkDisplay`
    • listDisplays

      public SList listDisplays()
      List all currently open displays.
      Returns:
      a newly allocated `GSList` of `GdkDisplay` objects
    • openDisplay

      public Display openDisplay(@Nonnull Str name)
      Opens a display.
      Parameters:
      name - the name of the display to open
      Returns:
      a `GdkDisplay`, or %NULL if the display could not be opened
    • openDisplay

      public Display openDisplay(String name)
      Opens a display.
      Parameters:
      name - the name of the display to open
      Returns:
      a `GdkDisplay`, or %NULL if the display could not be opened
    • setDefaultDisplay

      public void setDefaultDisplay(@Nonnull Display display)
      Sets @display as the default display.
      Parameters:
      display - a `GdkDisplay`
    • onDisplayOpened

      public SignalHandler onDisplayOpened(DisplayManager.OnDisplayOpened signal)
      Connect to signal "display-opened".
      See DisplayManager.OnDisplayOpened.onDisplayOpened(ch.bailu.gtk.gdk.Display) for signal description.
      Field SIGNAL_ON_DISPLAY_OPENED contains original signal name and can be used as resource reference.
      Parameters:
      signal - callback function (lambda).
      Returns:
      SignalHandler. Can be used to disconnect signal and to release callback function.
    • get

      public static DisplayManager get()
      Gets the singleton `GdkDisplayManager` object.

      When called for the first time, this function consults the
      `GDK_BACKEND` environment variable to find out which of the
      supported GDK backends to use (in case GDK has been compiled
      with multiple backends).

      Applications can use [func@set_allowed_backends] to limit what
      backends wil be used.
      Returns:
      The global `GdkDisplayManager` singleton
    • getTypeID

      public static long getTypeID()
    • getParentTypeID

      public static long getParentTypeID()
    • getTypeSize

      public static TypeSystem.TypeSize getTypeSize()
    • getParentTypeSize

      public static TypeSystem.TypeSize getParentTypeSize()
    • getInstanceSize

      public static int getInstanceSize()