add new sigc++2 directory
[ardour.git] / libs / gtkmm2 / gdk / gdkmm / rgb.h
1 /* $Id$ */
2
3 /* Copyright 2004      The gtkmm Development Team
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Library General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Library General Public License for more details.
14  *
15  * You should have received a copy of the GNU Library General Public
16  * License along with this library; if not, write to the Free
17  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18  */
19
20 #ifndef _GDKMM_RGB_H
21 #define _GDKMM_RGB_H
22
23 #include <gdkmm/colormap.h>  
24 #include <gdkmm/visual.h>
25
26 namespace Gdk
27 {
28
29 /** Get the preferred colormap for rendering image data.
30  * Not a very useful function; historically, GDK could only render RGB image data to one colormap and visual,
31  * but in the current version it can render to any colormap and visual. So there's no need to call this function.
32  *
33  * @result The preferred colormap
34  */
35 Glib::RefPtr<Colormap> rgb_get_colormap();
36
37 /** Gets a "preferred visual" chosen by GdkRGB for rendering image data on the default screen.
38  * In previous versions of GDK, this was the only visual GdkRGB could use for rendering. In current versions,
39  * it's simply the visual GdkRGB would have chosen as the optimal one in those previous versions.
40  * GdkRGB can now render to drawables with any visual.
41  * @result The Gdk::Visual chosen by GdkRGB.
42  */
43 Glib::RefPtr<Visual> rgb_get_visual();
44
45 /** Determines whether the visual is ditherable.
46  * This function may be useful for presenting a user interface choice to the user about which dither mode is desired;
47  * if the display is not ditherable, it may make sense to gray out or hide the corresponding UI widget.
48  * result true if the visual is ditherable.
49  */
50 bool rgb_ditherable();
51
52 } //namespace Gdk
53
54 #endif //_GDKMM_RGB_H
55