Gtk2::Gdk::Pixbuf::Draw::Cache(3pm)

NAME

Gtk2::Gdk::Pixbuf::Draw::Cache - Cache for drawing scaled pixbufs

DESCRIPTION

Gtk2::Gdk::Pixbuf::Draw::Cache provides a cache that should be used by the Gtk2::ImageView::Tool when redrawing the Gtk2::ImageView.

HIERARCHY

Glib::Boxed
+----Gtk2::Gdk::Pixbuf::Draw::Cache

METHODS

cache = Gtk2::Gdk::Pixbuf::Draw::Cache->new
Returns a new pixbuf draw cache.
$cache->draw ($opts, $drawable)
o $opts (Gtk2::Gdk::Pixbuf::Draw::Opts)
o $drawable (Gtk2::Gdk::Drawable)
Redraws the area specified in the pixbuf draw options in an efficient
way by using caching.
cache : a GdkPixbufDrawCache
opts : the Gtk2::Gdk::Pixbuf::Draw::Opts to use in this draw
drawable : a GdkDrawable to draw on
$cache->free
Deallocates a pixbuf draw cache and all its data.
$cache->invalidate
Force the pixbuf draw cache to scale the pixbuf at the next draw.
Gtk2::Gdk::Pixbuf::Draw::Cache tries to minimize the number of scale
operations needed by caching the last drawn pixbuf. It would be
inefficient to check the individual pixels inside the pixbuf so it
assumes that if the memory address of the pixbuf has not changed, then the cache is good to use.
However, when the image data is modified, this assumtion breaks, which is why this method must be used to tell draw cache about it.
method = Gtk2::Gdk::Pixbuf::Draw::Cache->get_method ($old, $new)
o $old (Gtk2::Gdk::Pixbuf::Draw::Opts)
o $new (Gtk2::Gdk::Pixbuf::Draw::Opts)
Gets the fastest method to draw the specified draw options. old is
assumed to be the last PixbufDrawOpts used and new is the one to use
this time.

ENUMS AND FLAGS

enum Gtk2::Gdk::Pixbuf::Draw::Method
o 'scale' / 'GDK_PIXBUF_DRAW_METHOD_SCALE'
o 'contains' / 'GDK_PIXBUF_DRAW_METHOD_CONTAINS'
o 'scroll' / 'GDK_PIXBUF_DRAW_METHOD_SCROLL'

SEE ALSO

Gtk2::ImageView, Glib::Boxed

COPYRIGHT

Copyright (C) 2007 by Jeffrey Ratcliffe.

This software is licensed under the GPL-3; see Gtk2::ImageView for a
full notice.
Copyright © 2010-2025 Platon Technologies, s.r.o.           Index | Man stránky | tLDP | Dokumenty | Utilitky | O projekte
Design by styleshout