1// -*- c++ -*-
2/* $Id: colormap.ccg,v 1.3 2005/11/29 16:38:10 murrayc Exp $ */
3
4/*
5 *
6 * Copyright 1998-2002 The gtkmm Development Team
7 *
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
12 *
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16 * Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free
20 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 */
22
23#include <gdk/gdk.h>
24
25namespace Gdk
26{
27
28Colormap::Colormap(const Glib::RefPtr<Visual>& visual, bool allocate)
29: Glib::Object( G_OBJECT( gdk_colormap_new(Glib::unwrap(visual), (gboolean)allocate) ) )
30  {}
31
32_DEPRECATE_IFDEF_START
33int Colormap::alloc_colors(ArrayHandle_Color& colors, int ncolors, bool writeable, bool best_match, Glib::ArrayHandle<bool>& success)
34{
35  return gdk_colormap_alloc_colors(gobj(), const_cast<GdkColor*>(colors.data()), ncolors, static_cast<int>(writeable), static_cast<int>(best_match), (gboolean*)(success.data()));
36}
37
38void Colormap::free_colors(Color& colors, int ncolors)
39{
40  gdk_colormap_free_colors(gobj(), (colors).gobj(), ncolors);
41}
42_DEPRECATE_IFDEF_END
43
44void Colormap::free_color(Color& color)
45{
46  gdk_colormap_free_colors(gobj(), color.gobj(), 1);
47}
48
49} // namespace Gdk
50
51
52