Release history
Release history
Major changes between versions of GtkImageView.
This chapter lists all major changes that has occured in
GtkImageView. Each version is sorted in reverse chronological
order.
Major changes in 1.6.4
Experimental support for the build tool waf.
Fix test failures when compiling with -O0. See r631.
Ensure that conversions from double to int are performed
correctly. Fixes for ticket31.
Clarify
what gtk_image_view_get_draw_rect()
and gtk_image_view_get_viewport()
returns when the view is not allocated.
Major changes in 1.6.3
Ensure that the header testlib.h is included in distributed
tarball. Fixes ticket30.
Major changes in 1.6.2
Fix for ticket11. The
tools mouse motion and button release event handlers should
return TRUE if they handled the event
themselves.
Fix for ticket29. The
static image is displayed instead of the first frame of an
animation in case that animation only has one frame. This
helps make progressive loading work better.
Fix for ticket23. To
small zoom factors are disallowed which should prevent the
filter matrices to become rediculously large and eat up all
memory.
Horizontal scrolls should not crash GtkImageView anymore.
gtk_image_view_image_to_widget_rect()
ceils the size of the output rectangle. See ticket24.
Major changes in 1.6.1
None, bugfix release only.
Major changes in 1.6.0
gtk_image_view_image_to_widget_rect()
was added to GtkImageView. It is a
utility function useful determining where on the widget a
certain part of the image is.
The
function gtk_image_view_damage_pixels()
was added. It is supposed to be used instead
of gtk_image_view_set_pixbuf to mark an
area as damaged.
gtk_iimage_tool_pixbuf_changed() got a
third argument which is a pointer either to the changed
rectangle in the pixbuf or NULL. This
was needed to accomodate for the new pixel damage system.
ImageViewDrawer was renamed
to GdkPixbufDrawCache and placed in
the file gdkpixbufdrawcache.c. It is
now part of the public interface. See its documentation page
for more information.
A new
function gtk_image_view_library_version()
was added to find out the runtime version of GtkImageView.
Major changes in 1.5.0
gtk_image_nav_get_pixbuf() was added
to GtkImageNav. It returns the
downsampled pixbuf the navigator is showing
or NULL. The function is mostly useful
for testing.
GtkImageNav aquired a flag variable
that controls that the downsampled pixbuf is not created
unless necessary. It makes
the GtkImageScrollWin faster to
instantiate, but may break ABI.
Major changes in 1.4.0
The
function gtk_image_view_get_draw_rect()
was added. It is a useful function used by both of the
tools.
The navigator button
in GtkImageScrollWin now has a cute
tooltip and the same prelight effect that gnome-panel
has.
Redraw speed has been improved greatly. In particular,
GtkImageToolSelector and redraws caused by moving other
windows on top of the widget should now be much quicker.
Killed
the gtk_image_view_set_offset_invalidating()
function.
Instead, gtk_image_view_set_offset()
has a boolean flag which indicates whether to do an
invalidating redraw or a fast scroll. This change breaks API
and maybe also ABI.
GtkFitMode was removed along
with gtk_image_view_set_fit_mode()
and gtk_image_view_get_fit_mode().
Since there were only two items in the enum (fit or not
fit), it was much cleaner to just pass a gboolean. The
accessor functions has also been renamed
to gtk_image_view_set_fitting()
and gtk_image_view_get_fit_mode() to
reflect this new and simpler interface. This change also
breaks API and perhaps even ABI.
Major changes in 1.3.0
The GtkImageView widget has
undergone major internal reconstruction work. I wanted to
support making rectangular selections on the view
area. Selections are useful for many reasons -- selecting,
cutting, cropping etc. I want to support exactly the kind
of selection tool that gThumb's image crop dialog has.
To implement this feature GtkImageView has been made
extensible via aggregation. It now uses an interface
called GtkIImageTool which
encapsulats certain behaviour. This means that it will be
possible to extend GtkImageView with other tools too, such
as drawing tools.
The feature isn't completed yet, but I'm checking it in
anyway to avoid having to check in a super-large changeset
at an even later date. See this
blog post for even more details.
There is currently two tools implemented,
GtkImageToolDragger and
GtkImageToolSelector. See their
respective manual pages.
The
function gtk_image_view_set_offset_invalidating()
was added. The function has the same purpose as
gtk_image_view_set_offset(), but queues
the redraw by invalidating the whole widget instead of
immediately repainting. The effect is that superfluous
redraws can sometimes be avoided at the expense of more cpu
usage.
Major changes in 1.2.0
The
functions gtk_image_view_get_check_colors()
and gtk_image_view_set_transp() was
added. These additions enable users to define how
GtkImageView should render transparent parts of images with
an alpha
channel. See ./tests/interactive.c for
an example.
Major changes in 1.1.0
gtk_image_view_set_pixbuf() was
changed to accept three parameters. The third parameter is
a gboolean that defines whether to reset fit
mode or not. It should almost always be TRUE.
This change replaces the old (and
undocumented) gtk_image_view_set_pixbuf_no_repaint()
function.