alternative to assert
[gtkD.git] / src / gdk / Screen.d
blobd9d412110497318b0c0d598aebdeea4b6322c9ff
1 /*
2 * This file is part of duit.
4 * duit is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU Lesser General Public License as published by
6 * the Free Software Foundation; either version 2.1 of the License, or
7 * (at your option) any later version.
9 * duit is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public License
15 * along with duit; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 // generated automatically - do not change
20 // find conversion definition on APILookup.txt
21 // implement new conversion functionalities on the wrap.utils pakage
24 * Conversion parameters:
25 * inFile = GdkScreen.html
26 * outPack = gdk
27 * outFile = Screen
28 * strct = GdkScreen
29 * realStrct=
30 * ctorStrct=
31 * clss = Screen
32 * interf =
33 * class Code: No
34 * interface Code: No
35 * template for:
36 * extend =
37 * implements:
38 * prefixes:
39 * - gdk_screen_
40 * omit structs:
41 * omit prefixes:
42 * omit code:
43 * imports:
44 * - cairoLib.cairoLibtypes
45 * - glib.Str
46 * - gdk.Screen
47 * - gdk.Colormap
48 * - gdk.Visual
49 * - gdk.Window
50 * - gdk.Display
51 * - glib.ListG
52 * - gdk.Rectangle
53 * - gdk.Event
54 * - gobject.Value
55 * structWrap:
56 * - GList* -> ListG
57 * - GValue* -> Value
58 * - GdkColormap* -> Colormap
59 * - GdkDisplay* -> Display
60 * - GdkEvent* -> Event
61 * - GdkRectangle* -> Rectangle
62 * - GdkScreen* -> Screen
63 * - GdkVisual* -> Visual
64 * - GdkWindow* -> Window
65 * local aliases:
68 module gdk.Screen;
70 private import gdk.gdktypes;
72 private import lib.gdk;
74 private import cairoLib.cairoLibtypes;
75 private import glib.Str;
76 private import gdk.Screen;
77 private import gdk.Colormap;
78 private import gdk.Visual;
79 private import gdk.Window;
80 private import gdk.Display;
81 private import glib.ListG;
82 private import gdk.Rectangle;
83 private import gdk.Event;
84 private import gobject.Value;
86 /**
87 * Description
88 * GdkScreen objects are the GDK representation of a physical screen. It is used
89 * throughout GDK and GTK+ to specify which screen the top level windows
90 * are to be displayed on.
91 * It is also used to query the screen specification and default settings such as
92 * the default colormap (gdk_screen_get_default_colormap()),
93 * the screen width (gdk_screen_get_width()), etc.
94 * Note that a screen may consist of multiple monitors which are merged to
95 * form a large screen area.
97 private import gobject.ObjectG;
98 public class Screen : ObjectG
101 /** the main Gtk struct */
102 protected GdkScreen* gdkScreen;
105 public GdkScreen* getScreenStruct()
107 return gdkScreen;
111 /** the main Gtk struct as a void* */
112 protected void* getStruct()
114 return cast(void*)gdkScreen;
118 * Sets our main struct and passes it to the parent class
120 public this (GdkScreen* gdkScreen)
122 super(cast(GObject*)gdkScreen);
123 this.gdkScreen = gdkScreen;
129 // imports for the signal processing
130 private import gobject.Signals;
131 private import gdk.gdktypes;
132 int[char[]] connectedSignals;
134 void delegate(Screen)[] onCompositedChangedListeners;
135 void addOnCompositedChanged(void delegate(Screen) dlg)
137 if ( !("composited-changed" in connectedSignals) )
139 Signals.connectData(
140 getStruct(),
141 "composited-changed",
142 cast(GCallback)&callBackCompositedChanged,
143 this,
144 null,
145 cast(ConnectFlags)0);
146 connectedSignals["composited-changed"] = 1;
148 onCompositedChangedListeners ~= dlg;
150 extern(C) static void callBackCompositedChanged(GdkScreen* screenStruct, Screen screen)
152 bit consumed = false;
154 foreach ( void delegate(Screen) dlg ; screen.onCompositedChangedListeners )
156 dlg(screen);
159 return consumed;
162 void delegate(Screen)[] onSizeChangedListeners;
163 void addOnSizeChanged(void delegate(Screen) dlg)
165 if ( !("size-changed" in connectedSignals) )
167 Signals.connectData(
168 getStruct(),
169 "size-changed",
170 cast(GCallback)&callBackSizeChanged,
171 this,
172 null,
173 cast(ConnectFlags)0);
174 connectedSignals["size-changed"] = 1;
176 onSizeChangedListeners ~= dlg;
178 extern(C) static void callBackSizeChanged(GdkScreen* screenStruct, Screen screen)
180 bit consumed = false;
182 foreach ( void delegate(Screen) dlg ; screen.onSizeChangedListeners )
184 dlg(screen);
187 return consumed;
193 * Gets the default screen for the default display. (See
194 * gdk_display_get_default()).
195 * Returns:
196 * a GdkScreen, or NULL if there is no default display.
197 * Since 2.2
199 public static Screen getDefault()
201 // GdkScreen* gdk_screen_get_default (void);
202 return new Screen( gdk_screen_get_default() );
206 * Gets the default colormap for screen.
207 * screen:
208 * a GdkScreen
209 * Returns:
210 * the default GdkColormap.
211 * Since 2.2
213 public Colormap getDefaultColormap()
215 // GdkColormap* gdk_screen_get_default_colormap (GdkScreen *screen);
216 return new Colormap( gdk_screen_get_default_colormap(gdkScreen) );
220 * Sets the default colormap for screen.
221 * screen:
222 * a GdkScreen
223 * colormap:
224 * a GdkColormap
225 * Since 2.2
227 public void setDefaultColormap(Colormap colormap)
229 // void gdk_screen_set_default_colormap (GdkScreen *screen, GdkColormap *colormap);
230 gdk_screen_set_default_colormap(gdkScreen, (colormap is null) ? null : colormap.getColormapStruct());
234 * Gets the system's default colormap for screen
235 * screen:
236 * a GdkScreen
237 * Returns:
238 * the default colormap for screen.
239 * Since 2.2
241 public Colormap getSystemColormap()
243 // GdkColormap* gdk_screen_get_system_colormap (GdkScreen *screen);
244 return new Colormap( gdk_screen_get_system_colormap(gdkScreen) );
248 * Get the system's default visual for screen.
249 * This is the visual for the root window of the display.
250 * The return value should not be freed.
251 * screen:
252 * a GdkScreen.
253 * Returns:
254 * the system visual
255 * Since 2.2
257 public Visual getSystemVisual()
259 // GdkVisual* gdk_screen_get_system_visual (GdkScreen *screen);
260 return new Visual( gdk_screen_get_system_visual(gdkScreen) );
264 * Gets the preferred colormap for rendering image data on screen.
265 * Not a very useful function; historically, GDK could only render RGB
266 * image data to one colormap and visual, but in the current version
267 * it can render to any colormap and visual. So there's no need to
268 * call this function.
269 * screen:
270 * a GdkScreen.
271 * Returns:
272 * the preferred colormap
273 * Since 2.2
275 public Colormap getRgbColormap()
277 // GdkColormap* gdk_screen_get_rgb_colormap (GdkScreen *screen);
278 return new Colormap( gdk_screen_get_rgb_colormap(gdkScreen) );
282 * Gets a "preferred visual" chosen by GdkRGB for rendering image data
283 * on screen. In previous versions of
284 * GDK, this was the only visual GdkRGB could use for rendering. In
285 * current versions, it's simply the visual GdkRGB would have chosen as
286 * the optimal one in those previous versions. GdkRGB can now render to
287 * drawables with any visual.
288 * screen:
289 * a GdkScreen
290 * Returns:
291 * The GdkVisual chosen by GdkRGB.
292 * Since 2.2
294 public Visual getRgbVisual()
296 // GdkVisual* gdk_screen_get_rgb_visual (GdkScreen *screen);
297 return new Visual( gdk_screen_get_rgb_visual(gdkScreen) );
301 * Gets a colormap to use for creating windows or pixmaps with an
302 * alpha channel. The windowing system on which GTK+ is running
303 * may not support this capability, in which case NULL will
304 * be returned. Even if a non-NULL value is returned, its
305 * possible that the window's alpha channel won't be honored
306 * when displaying the window on the screen: in particular, for
307 * X an appropriate windowing manager and compositing manager
308 * must be running to provide appropriate display.
309 * screen:
310 * a GdkScreen.
311 * Returns:
312 * a colormap to use for windows with an alpha channel
313 * or NULL if the capability is not available.
314 * Since 2.8
316 public Colormap getRgbaColormap()
318 // GdkColormap* gdk_screen_get_rgba_colormap (GdkScreen *screen);
319 return new Colormap( gdk_screen_get_rgba_colormap(gdkScreen) );
323 * Gets a visual to use for creating windows or pixmaps with an
324 * alpha channel. See the docs for gdk_screen_get_rgba_colormap()
325 * for caveats.
326 * screen:
327 * a GdkScreen
328 * Returns:
329 * a visual to use for windows with an alpha channel
330 * or NULL if the capability is not available.
331 * Since 2.8
333 public Visual getRgbaVisual()
335 // GdkVisual* gdk_screen_get_rgba_visual (GdkScreen *screen);
336 return new Visual( gdk_screen_get_rgba_visual(gdkScreen) );
340 * Returns whether windows with an RGBA visual can reasonably
341 * be expected to have their alpha channel drawn correctly on
342 * the screen.
343 * On X11 this function returns whether a compositing manager is
344 * compositing screen.
345 * screen:
346 * a GdkScreen
347 * Returns:
348 * Whether windows with RGBA visuals can reasonably be
349 * expected to have their alpha channels drawn correctly on the screen.
350 * Since 2.10
352 public int isComposited()
354 // gboolean gdk_screen_is_composited (GdkScreen *screen);
355 return gdk_screen_is_composited(gdkScreen);
359 * Gets the root window of screen.
360 * screen:
361 * a GdkScreen
362 * Returns:
363 * the root window
364 * Since 2.2
366 public Window getRootWindow()
368 // GdkWindow* gdk_screen_get_root_window (GdkScreen *screen);
369 return new Window( gdk_screen_get_root_window(gdkScreen) );
373 * Gets the display to which the screen belongs.
374 * screen:
375 * a GdkScreen
376 * Returns:
377 * the display to which screen belongs
378 * Since 2.2
380 public Display getDisplay()
382 // GdkDisplay* gdk_screen_get_display (GdkScreen *screen);
383 return new Display( gdk_screen_get_display(gdkScreen) );
387 * Gets the index of screen among the screens in the display
388 * to which it belongs. (See gdk_screen_get_display())
389 * screen:
390 * a GdkScreen
391 * Returns:
392 * the index
393 * Since 2.2
395 public int getNumber()
397 // gint gdk_screen_get_number (GdkScreen *screen);
398 return gdk_screen_get_number(gdkScreen);
402 * Gets the width of screen in pixels
403 * screen:
404 * a GdkScreen
405 * Returns:
406 * the width of screen in pixels.
407 * Since 2.2
409 public int getWidth()
411 // gint gdk_screen_get_width (GdkScreen *screen);
412 return gdk_screen_get_width(gdkScreen);
416 * Gets the height of screen in pixels
417 * screen:
418 * a GdkScreen
419 * Returns:
420 * the height of screen in pixels.
421 * Since 2.2
423 public int getHeight()
425 // gint gdk_screen_get_height (GdkScreen *screen);
426 return gdk_screen_get_height(gdkScreen);
430 * Gets the width of screen in millimeters.
431 * Note that on some X servers this value will not be correct.
432 * screen:
433 * a GdkScreen
434 * Returns:
435 * the width of screen in millimeters.
436 * Since 2.2
438 public int getWidthMm()
440 // gint gdk_screen_get_width_mm (GdkScreen *screen);
441 return gdk_screen_get_width_mm(gdkScreen);
445 * Returns the height of screen in millimeters.
446 * Note that on some X servers this value will not be correct.
447 * screen:
448 * a GdkScreen
449 * Returns:
450 * the heigth of screen in millimeters.
451 * Since 2.2
453 public int getHeightMm()
455 // gint gdk_screen_get_height_mm (GdkScreen *screen);
456 return gdk_screen_get_height_mm(gdkScreen);
460 * Lists the available visuals for the specified screen.
461 * A visual describes a hardware image data format.
462 * For example, a visual might support 24-bit color, or 8-bit color,
463 * and might expect pixels to be in a certain format.
464 * Call g_list_free() on the return value when you're finished with it.
465 * screen:
466 * the relevant GdkScreen.
467 * Returns:
468 * a list of visuals; the list must be freed, but not its
469 * contents
470 * Since 2.2
472 public ListG listVisuals()
474 // GList* gdk_screen_list_visuals (GdkScreen *screen);
475 return new ListG( gdk_screen_list_visuals(gdkScreen) );
479 * Obtains a list of all toplevel windows known to GDK on the screen screen.
480 * A toplevel window is a child of the root window (see
481 * gdk_get_default_root_window()).
482 * The returned list should be freed with g_list_free(), but
483 * its elements need not be freed.
484 * screen:
485 * The GdkScreen where the toplevels are located.
486 * Returns:
487 * list of toplevel windows, free with g_list_free()
488 * Since 2.2
490 public ListG getToplevelWindows()
492 // GList* gdk_screen_get_toplevel_windows (GdkScreen *screen);
493 return new ListG( gdk_screen_get_toplevel_windows(gdkScreen) );
497 * Determines the name to pass to gdk_display_open() to get
498 * a GdkDisplay with this screen as the default screen.
499 * screen:
500 * a GdkScreen
501 * Returns:
502 * a newly allocated string, free with g_free()
503 * Since 2.2
505 public char[] makeDisplayName()
507 // gchar* gdk_screen_make_display_name (GdkScreen *screen);
508 return Str.toString(gdk_screen_make_display_name(gdkScreen) );
512 * Returns the number of monitors which screen consists of.
513 * screen:
514 * a GdkScreen.
515 * Returns:
516 * number of monitors which screen consists of.
517 * Since 2.2
519 public int getNMonitors()
521 // gint gdk_screen_get_n_monitors (GdkScreen *screen);
522 return gdk_screen_get_n_monitors(gdkScreen);
526 * Retrieves the GdkRectangle representing the size and position of
527 * the individual monitor within the entire screen area.
528 * Note that the size of the entire screen area can be retrieved via
529 * gdk_screen_get_width() and gdk_screen_get_height().
530 * screen:
531 * a GdkScreen.
532 * monitor_num:
533 * the monitor number.
534 * dest:
535 * a GdkRectangle to be filled with the monitor geometry
536 * Since 2.2
538 public void getMonitorGeometry(int monitorNum, Rectangle dest)
540 // void gdk_screen_get_monitor_geometry (GdkScreen *screen, gint monitor_num, GdkRectangle *dest);
541 gdk_screen_get_monitor_geometry(gdkScreen, monitorNum, (dest is null) ? null : dest.getRectangleStruct());
545 * Returns the monitor number in which the point (x,y) is located.
546 * screen:
547 * a GdkScreen.
548 * x:
549 * the x coordinate in the virtual screen.
550 * y:
551 * the y coordinate in the virtual screen.
552 * Returns:
553 * the monitor number in which the point (x,y) lies, or
554 * a monitor close to (x,y) if the point is not in any monitor.
555 * Since 2.2
557 public int getMonitorAtPoint(int x, int y)
559 // gint gdk_screen_get_monitor_at_point (GdkScreen *screen, gint x, gint y);
560 return gdk_screen_get_monitor_at_point(gdkScreen, x, y);
564 * Returns the number of the monitor in which the largest area of the
565 * bounding rectangle of window resides.
566 * screen:
567 * a GdkScreen.
568 * window:
569 * a GdkWindow
570 * Returns:
571 * the monitor number in which most of window is located,
572 * or if window does not intersect any monitors, a monitor,
573 * close to window.
574 * Since 2.2
576 public int getMonitorAtWindow(Window window)
578 // gint gdk_screen_get_monitor_at_window (GdkScreen *screen, GdkWindow *window);
579 return gdk_screen_get_monitor_at_window(gdkScreen, (window is null) ? null : window.getWindowStruct());
583 * On X11, sends an X ClientMessage event to all toplevel windows on
584 * screen.
585 * Toplevel windows are determined by checking for the WM_STATE property,
586 * as described in the Inter-Client Communication Conventions Manual (ICCCM).
587 * If no windows are found with the WM_STATE property set, the message is
588 * sent to all children of the root window.
589 * On Windows, broadcasts a message registered with the name
590 * GDK_WIN32_CLIENT_MESSAGE to all top-level windows. The amount of
591 * data is limited to one long, i.e. four bytes.
592 * screen:
593 * the GdkScreen where the event will be broadcasted.
594 * event:
595 * the GdkEvent.
596 * Since 2.2
598 public void broadcastClientMessage(Event event)
600 // void gdk_screen_broadcast_client_message (GdkScreen *screen, GdkEvent *event);
601 gdk_screen_broadcast_client_message(gdkScreen, (event is null) ? null : event.getEventStruct());
605 * Retrieves a desktop-wide setting such as double-click time
606 * for the GdkScreen screen.
607 * FIXME needs a list of valid settings here, or a link to
608 * more information.
609 * screen:
610 * the GdkScreen where the setting is located
611 * name:
612 * the name of the setting
613 * value:
614 * location to store the value of the setting
615 * Returns:
616 * TRUE if the setting existed and a value was stored
617 * in value, FALSE otherwise.
618 * Since 2.2
620 public int getSetting(char[] name, Value value)
622 // gboolean gdk_screen_get_setting (GdkScreen *screen, const gchar *name, GValue *value);
623 return gdk_screen_get_setting(gdkScreen, Str.toStringz(name), (value is null) ? null : value.getValueStruct());
627 * Gets any options previously set with gdk_screen_set_font_options().
628 * screen:
629 * a GdkScreen
630 * Returns:
631 * the current font options, or NULL if no default
632 * font options have been set.
633 * Since 2.10
635 public cairo_font_options_t* getFontOptions()
637 // const cairo_font_options_t* gdk_screen_get_font_options (GdkScreen *screen);
638 return gdk_screen_get_font_options(gdkScreen);
642 * Sets the default font options for the screen. These
643 * options will be set on any PangoContext's newly created
644 * with gdk_pango_context_get_for_screen(). Changing the
645 * default set of font options does not affect contexts that
646 * have already been created.
647 * screen:
648 * a GdkScreen
649 * options:
650 * a cairo_font_options_t, or NULL to unset any
651 * previously set default font options.
652 * Since 2.10
654 public void setFontOptions(cairo_font_options_t* options)
656 // void gdk_screen_set_font_options (GdkScreen *screen, const cairo_font_options_t *options);
657 gdk_screen_set_font_options(gdkScreen, options);
661 * Gets the resolution for font handling on the screen; see
662 * gdk_screen_set_resolution() for full details.
663 * screen:
664 * a GdkScreen
665 * Returns:
666 * the current resolution, or -1 if no resolution
667 * has been set.
668 * Since 2.10
670 public double getResolution()
672 // gdouble gdk_screen_get_resolution (GdkScreen *screen);
673 return gdk_screen_get_resolution(gdkScreen);
677 * Sets the resolution for font handling on the screen. This is a
678 * scale factor between points specified in a PangoFontDescription
679 * and cairo units. The default value is 96, meaning that a 10 point
680 * font will be 13 units high. (10 * 96. / 72. = 13.3).
681 * screen:
682 * a GdkScreen
683 * dpi:
684 * the resolution in "dots per inch". (Physical inches aren't actually
685 * involved; the terminology is conventional.)
686 * Since 2.10
688 public void setResolution(double dpi)
690 // void gdk_screen_set_resolution (GdkScreen *screen, gdouble dpi);
691 gdk_screen_set_resolution(gdkScreen, dpi);
695 * Returns the screen's currently active window.
696 * On X11, this is done by inspecting the _NET_ACTIVE_WINDOW property
697 * on the root window, as described in the Extended Window
698 * Manager Hints. If there is no currently currently active
699 * window, or the window manager does not support the
700 * _NET_ACTIVE_WINDOW hint, this function returns NULL.
701 * On other platforms, this function may return NULL, depending on whether
702 * it is implementable on that platform.
703 * The returned window should be unrefed using g_object_unref() when
704 * no longer needed.
705 * screen:
706 * a GdkScreen
707 * Returns:
708 * the currently active window, or NULL.
709 * Since 2.10
711 public Window getActiveWindow()
713 // GdkWindow* gdk_screen_get_active_window (GdkScreen *screen);
714 return new Window( gdk_screen_get_active_window(gdkScreen) );
718 * Returns a GList of GdkWindows representing the current
719 * window stack.
720 * On X11, this is done by inspecting the _NET_CLIENT_LIST_STACKING
721 * property on the root window, as described in the Extended Window
722 * Manager Hints. If the window manager does not support the
723 * _NET_CLIENT_LIST_STACKING hint, this function returns NULL.
724 * On other platforms, this function may return NULL, depending on whether
725 * it is implementable on that platform.
726 * The returned list is newly allocated and owns references to the
727 * windows it contains, so it should be freed using g_list_free() and
728 * its windows unrefed using g_object_unref() when no longer needed.
729 * screen:
730 * a GdkScreen
731 * Returns:
732 * a list of GdkWindows for the current window stack,
733 * or NULL.
734 * Since 2.10
736 public ListG getWindowStack()
738 // GList* gdk_screen_get_window_stack (GdkScreen *screen);
739 return new ListG( gdk_screen_get_window_stack(gdkScreen) );
743 * Like g_spawn_async(), except the child process is spawned in such
744 * an environment that on calling gdk_display_open() it would be
745 * returned a GdkDisplay with screen as the default screen.
746 * This is useful for applications which wish to launch an application
747 * on a specific screen.
748 * screen:
749 * a GdkScreen
750 * working_directory:
751 * child's current working directory, or NULL to
752 * inherit parent's
753 * argv:
754 * child's argument vector
755 * envp:
756 * child's environment, or NULL to inherit parent's
757 * flags:
758 * flags from GSpawnFlags
759 * child_setup:
760 * function to run in the child just before exec()
761 * user_data:
762 * user data for child_setup
763 * child_pid:
764 * return location for child process ID, or NULL
765 * error:
766 * return location for error
767 * Returns:
768 * TRUE on success, FALSE if error is set
769 * Since 2.4
771 public int gdkSpawnOnScreen(char[] workingDirectory, char** argv, char** envp, GSpawnFlags flags, GSpawnChildSetupFunc childSetup, void* userData, int* childPid, GError** error)
773 // gboolean 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);
774 return gdk_spawn_on_screen(gdkScreen, Str.toStringz(workingDirectory), argv, envp, flags, childSetup, userData, childPid, error);
778 * Like g_spawn_async_with_pipes(), except the child process is
779 * spawned in such an environment that on calling gdk_display_open()
780 * it would be returned a GdkDisplay with screen as the default
781 * screen.
782 * This is useful for applications which wish to launch an application
783 * on a specific screen.
784 * screen:
785 * a GdkScreen
786 * working_directory:
787 * child's current working directory, or NULL to
788 * inherit parent's
789 * argv:
790 * child's argument vector
791 * envp:
792 * child's environment, or NULL to inherit parent's
793 * flags:
794 * flags from GSpawnFlags
795 * child_setup:
796 * function to run in the child just before exec()
797 * user_data:
798 * user data for child_setup
799 * child_pid:
800 * return location for child process ID, or NULL
801 * standard_input:
802 * return location for file descriptor to write to
803 * child's stdin, or NULL
804 * standard_output:
805 * return location for file descriptor to read child's
806 * stdout, or NULL
807 * standard_error:
808 * return location for file descriptor to read child's
809 * stderr, or NULL
810 * error:
811 * return location for error
812 * Returns:
813 * TRUE on success, FALSE if an error was set
814 * Since 2.4
816 public int gdkSpawnOnScreenWithPipes(char[] workingDirectory, char** argv, char** envp, GSpawnFlags flags, GSpawnChildSetupFunc childSetup, void* userData, int* childPid, int* standardInput, int* standardOutput, int* standardError, GError** error)
818 // gboolean 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);
819 return gdk_spawn_on_screen_with_pipes(gdkScreen, Str.toStringz(workingDirectory), argv, envp, flags, childSetup, userData, childPid, standardInput, standardOutput, standardError, error);
823 * Like g_spawn_command_line_async(), except the child process is
824 * spawned in such an environment that on calling gdk_display_open()
825 * it would be returned a GdkDisplay with screen as the default
826 * screen.
827 * This is useful for applications which wish to launch an application
828 * on a specific screen.
829 * screen:
830 * a GdkScreen
831 * command_line:
832 * a command line
833 * error:
834 * return location for errors
835 * Returns:
836 * TRUE on success, FALSE if error is set.
837 * Since 2.4
838 * Property Details
839 * The "font-options" property
840 * "font-options" gpointer : Read / Write
841 * The default font options for the screen.
843 public int gdkSpawnCommandLineOnScreen(char[] commandLine, GError** error)
845 // gboolean gdk_spawn_command_line_on_screen (GdkScreen *screen, const gchar *command_line, GError **error);
846 return gdk_spawn_command_line_on_screen(gdkScreen, Str.toStringz(commandLine), error);