Re: Colormaps in pixbufs which are in treeview
- From: Emmanuele Bassi <ebassi gmail com>
- To: gtk-perl-list gnome org
- Subject: Re: Colormaps in pixbufs which are in treeview
- Date: Tue, 13 Feb 2007 23:17:41 +0000
hi;
On Tue, 2007-02-13 at 17:35 -0500, muppet wrote:
It looks like I need to call $gc->set_colormap($color_map), and
$color_map = Gtk2::Gdk::Colormap->new ($visual, $allocate) before
that,
but what should I use for $visual and $allocate?
How do I test those cases where I need to do that?
You are making it waaaaaaay too complicated. Try using this
function, instead:
#
# Width and height are in pixels.
# Red, green, and blue are assumed to be [0, 255].
#
sub create_solid_color_pixbuf {
my ($width, $height, $red, $green, $blue) = @_;
my $data = pack "C*", ($red, $green, $blue) x ($width *
$height);
return Gtk2::Gdk::Pixbuf->new_from_data ($data, 'rgb',
FALSE, 8,
$width, $height,
$width * 3)
}
even this might be seen as "complicated", when there's a nice method for
Gtk2::Gdk::Pixbuf like fill():
# $red, $green, $blue and $alpha preconditions hold as above
my $packed = $alpha
| $blue << 8
| $green << 16
| $red << 24;
my $pixbuf = Gtk2::Gdk::Pixbuf->new('rgb', TRUE, 8, $width, $height);
$pixbuf->fill($packed);
well, packing bits might prove to be complicated - but maybe it's just
me that had to check. ;-)
ciao,
Emmanuele.
--
Emmanuele Bassi, E: ebassi gmail com
W: http://www.emmanuelebassi.net
B: http://log.emmanuelebassi.net
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]