Xfce Gdk extensions
3
LIBXFCEGUI4 Library

# Xfce Gdk extensions

Additional Gdk related functions.

## Synopsis

    #include <libxfcegui4/libxfcegui4.h>

    gchar*              xfce_gdk_display_get_fullname       (GdkDisplay *display);
    GdkScreen*          xfce_gdk_display_locate_monitor_with_pointer
                                                            (GdkDisplay *display,
                                                             gint *monitor_return);
    gchar*              xfce_gdk_screen_get_fullname        (GdkScreen *screen);
    gboolean            xfce_gdk_spawn_on_screen            (GdkScreen *screen,
                                                             const gchar *working_directory,
                                                             gchar **argv,
                                                             gchar **envp,
                                                             GSpawnFlags flags,
                                                             GSpawnChildSetupFunc child_setup,
                                                             gpointer user_data,
                                                             gint *child_pid,
                                                             GError **error);
    gboolean            xfce_gdk_spawn_on_screen_with_pipes (GdkScreen *screen,
                                                             const gchar *working_directory,
                                                             gchar **argv,
                                                             gchar **envp,
                                                             GSpawnFlags flags,
                                                             GSpawnChildSetupFunc child_setup,
                                                             gpointer user_data,
                                                             gint *child_pid,
                                                             gint *standard_input,
                                                             gint *standard_output,
                                                             gint *standard_error,
                                                             GError **error);
    gboolean            xfce_gdk_spawn_command_line_on_screen
                                                            (GdkScreen *screen,
                                                             const gchar *command_line,
                                                             GError **error);

## Description

## Details

### xfce_gdk_display_get_fullname ()

    gchar*              xfce_gdk_display_get_fullname       (GdkDisplay *display);

Determines the full qualified name of `display`. The full name includes both the hostname of the Xserver node and the display number of the Xserver.

`display` :

  A valid Gdk display.

Returns :

  The full qualified name of `display`.

Since 4.2

### xfce_gdk_display_locate_monitor_with_pointer ()

    GdkScreen*          xfce_gdk_display_locate_monitor_with_pointer
                                                            (GdkDisplay *display,
                                                             gint *monitor_return);

Locates the monitor and the screen which contains the pointer. If it is not possible to determine the current pointer position, `NULL` is returned.

`display` :

  A Gdk display or `NULL` to choose the default display.

`monitor_return` :

  Address to store the monitor number to or `NULL`.

Returns :

  The screen that contains the pointer.

Since 4.2

### xfce_gdk_screen_get_fullname ()

    gchar*              xfce_gdk_screen_get_fullname        (GdkScreen *screen);

Like `xfce_gdk_display_get_fullname()`, but also includes the screen number.

`screen` :

  A Gdk screen.

Returns :

  The full qualified name of `screen`.

Since 4.2

### xfce_gdk_spawn_on_screen ()

    gboolean            xfce_gdk_spawn_on_screen            (GdkScreen *screen,
                                                             const gchar *working_directory,
                                                             gchar **argv,
                                                             gchar **envp,
                                                             GSpawnFlags flags,
                                                             GSpawnChildSetupFunc child_setup,
                                                             gpointer user_data,
                                                             gint *child_pid,
                                                             GError **error);

Like `g_spawn_async()`, except the child process is spawned in such an environment that on calling `gdk_display_open()` it would be returned a GdkDisplay with `screen` as the default screen.

This is useful for applications which wish to launch an application on a specific screen.

`screen` :

  a GdkScreen

`working_directory` :

  child's current working directory, or `NULL` to inherit parent's

`argv` :

  child's argument vector

`envp` :

  child's environment, or `NULL` to inherit parent's

`flags` :

  flags from GSpawnFlags

`child_setup` :

  function to run in the child just before `exec()`

`user_data` :

  user data for `child_setup`

`child_pid` :

  return location for child process ID, or `NULL`

`error` :

  return location for error

Returns :

  `TRUE` on success, `FALSE` if error is set

Since 4.2

### xfce_gdk_spawn_on_screen_with_pipes ()

    gboolean            xfce_gdk_spawn_on_screen_with_pipes (GdkScreen *screen,
                                                             const gchar *working_directory,
                                                             gchar **argv,
                                                             gchar **envp,
                                                             GSpawnFlags flags,
                                                             GSpawnChildSetupFunc child_setup,
                                                             gpointer user_data,
                                                             gint *child_pid,
                                                             gint *standard_input,
                                                             gint *standard_output,
                                                             gint *standard_error,
                                                             GError **error);

Like `g_spawn_async_with_pipes()`, except the child process is spawned in such an environment that on calling `gdk_display_open()` it would be returned a GdkDisplay with `screen` as the default screen.

This is useful for applications which wish to launch an application on a specific screen.

`screen` :

  a GdkScreen

`working_directory` :

  child's current working directory, or `NULL` to inherit parent's

`argv` :

  child's argument vector

`envp` :

  child's environment, or `NULL` to inherit parent's

`flags` :

  flags from GSpawnFlags

`child_setup` :

  function to run in the child just before `exec()`

`user_data` :

  user data for `child_setup`

`child_pid` :

  return location for child process ID, or `NULL`

`standard_input` :

  return location for file descriptor to write to child's stdin, or `NULL`

`standard_output` :

  return location for file descriptor to read child's stdout, or `NULL`

`standard_error` :

  return location for file descriptor to read child's stderr, or `NULL`

`error` :

  return location for error

Returns :

  `TRUE` on success, `FALSE` if an error was set

Since 4.2

### xfce_gdk_spawn_command_line_on_screen ()

    gboolean            xfce_gdk_spawn_command_line_on_screen
                                                            (GdkScreen *screen,
                                                             const gchar *command_line,
                                                             GError **error);

Like `g_spawn_command_line_async()`, except the child process is spawned in such an environment that on calling `gdk_display_open()` it would be returned a GdkDisplay with `screen` as the default screen.

This is useful for applications which wish to launch an application on a specific screen.

`screen` :

  a GdkScreen

`command_line` :

  a command line

`error` :

  return location for errors

Returns :

  `TRUE` on success, `FALSE` if error is set.

Since 4.2

## See Also

Gdk reference manual