File: ColorChooserIF.d

package info (click to toggle)
gtk-d 3.10.0-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 20,204 kB
  • sloc: javascript: 565; sh: 71; makefile: 23
file content (158 lines) | stat: -rw-r--r-- 4,399 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
/*
 * This file is part of gtkD.
 *
 * gtkD is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License
 * as published by the Free Software Foundation; either version 3
 * of the License, or (at your option) any later version, with
 * some exceptions, please read the COPYING file.
 *
 * gtkD is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with gtkD; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA
 */

// generated automatically - do not change
// find conversion definition on APILookup.txt
// implement new conversion functionalities on the wrap.utils pakage


module gtk.ColorChooserIF;

private import gdk.RGBA;
private import glib.MemorySlice;
private import gobject.ObjectG;
private import gobject.Signals;
private import gtk.c.functions;
public  import gtk.c.types;
public  import gtkc.gtktypes;
private import std.algorithm;


/**
 * #GtkColorChooser is an interface that is implemented by widgets
 * for choosing colors. Depending on the situation, colors may be
 * allowed to have alpha (translucency).
 * 
 * In GTK+, the main widgets that implement this interface are
 * #GtkColorChooserWidget, #GtkColorChooserDialog and #GtkColorButton.
 *
 * Since: 3.4
 */
public interface ColorChooserIF{
	/** Get the main Gtk struct */
	public GtkColorChooser* getColorChooserStruct(bool transferOwnership = false);

	/** the main Gtk struct as a void* */
	protected void* getStruct();

	/**
	 * Gets the currently-selected color.
	 *
	 * Returns: a gdk.RGBA to fill in with the current color.
	 *
	 * Since: 3.4
	 */
	public final RGBA getRgba()
	{
		RGBA color;
		getRgba(color);
		return color;
	}

	/**
	 */

	/** */
	public static GType getType()
	{
		return gtk_color_chooser_get_type();
	}

	/**
	 * Adds a palette to the color chooser. If @orientation is horizontal,
	 * the colors are grouped in rows, with @colors_per_line colors
	 * in each row. If @horizontal is %FALSE, the colors are grouped
	 * in columns instead.
	 *
	 * The default color palette of #GtkColorChooserWidget has
	 * 27 colors, organized in columns of 3 colors. The default gray
	 * palette has 9 grays in a single row.
	 *
	 * The layout of the color chooser widget works best when the
	 * palettes have 9-10 columns.
	 *
	 * Calling this function for the first time has the
	 * side effect of removing the default color and gray palettes
	 * from the color chooser.
	 *
	 * If @colors is %NULL, removes all previously added palettes.
	 *
	 * Params:
	 *     orientation = %GTK_ORIENTATION_HORIZONTAL if the palette should
	 *         be displayed in rows, %GTK_ORIENTATION_VERTICAL for columns
	 *     colorsPerLine = the number of colors to show in each row/column
	 *     colors = the colors of the palette, or %NULL
	 *
	 * Since: 3.4
	 */
	public void addPalette(GtkOrientation orientation, int colorsPerLine, RGBA[] colors);

	/**
	 * Gets the currently-selected color.
	 *
	 * Params:
	 *     color = a #GdkRGBA to fill in with the current color
	 *
	 * Since: 3.4
	 */
	public void getRgba(out RGBA color);

	/**
	 * Returns whether the color chooser shows the alpha channel.
	 *
	 * Returns: %TRUE if the color chooser uses the alpha channel,
	 *     %FALSE if not
	 *
	 * Since: 3.4
	 */
	public bool getUseAlpha();

	/**
	 * Sets the color.
	 *
	 * Params:
	 *     color = the new color
	 *
	 * Since: 3.4
	 */
	public void setRgba(RGBA color);

	/**
	 * Sets whether or not the color chooser should use the alpha channel.
	 *
	 * Params:
	 *     useAlpha = %TRUE if color chooser should use alpha channel, %FALSE if not
	 *
	 * Since: 3.4
	 */
	public void setUseAlpha(bool useAlpha);

	/**
	 * Emitted when a color is activated from the color chooser.
	 * This usually happens when the user clicks a color swatch,
	 * or a color is selected and the user presses one of the keys
	 * Space, Shift+Space, Return or Enter.
	 *
	 * Params:
	 *     color = the color
	 *
	 * Since: 3.4
	 */
	gulong addOnColorActivated(void delegate(RGBA, ColorChooserIF) dlg, ConnectFlags connectFlags=cast(ConnectFlags)0);
}