Class: Gdk::DisplayManager

Inherits:
Object
  • Object
show all
Defined in:
(unknown)

Overview

A singleton object that offers notification when displays appear or
disappear.

You can use [funcGdk.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 [funcGdk.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:

#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");

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.getGdk::DisplayManager

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 [funcset_allowed_backends] to limit what
backends will be used.

Returns:

Instance Method Details

#default_displayGdk::Display

The default display.

Returns:

#default_display=(default_display) ⇒ Gdk::Display

The default display.

Parameters:

Returns:

#list_displaysGLib::SList<Gdk::Display>

List all currently open displays.

Returns:

  • (GLib::SList<Gdk::Display>)

    a newly
    allocated GSList of GdkDisplay objects

#open_display(name) ⇒ Gdk::Display

Opens a display.

Parameters:

  • name (String)

    the name of the display to open

Returns:

  • (Gdk::Display)

    a GdkDisplay, or nil
    if the display could not be opened