2000-12-16 Havoc Pennington <hp@pobox.com>
* gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c:
Port to GObject, can go back in gdk-pixbuf after setting up
a gdk-pixbuf-marshal.h header over there.
* gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
(gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
args
(gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
set
(gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
here, do it when we create the buttons later
(gtk_tree_view_realize_buttons): add some g_return_if_fail
(gtk_tree_view_map): paranoia checks that column->button is shown
and unmapped
(gtk_tree_view_size_request): only request visible children.
Move header size calculation in here, for cleanliness, and
to maintain invariants for child widgets if we eventually
let users set different children inside the buttons
(gtk_tree_view_map_buttons): factor out code to map buttons,
since it was being called several times
(gtk_tree_view_size_allocate_buttons): move_resize the drag
windows instead of just moving them; their height may change
if we allow random widgets in there, or the theme changes.
(gtk_tree_view_size_allocate): move button size allocation
above emitting the scroll signals, to ensure a sane state when we
hit user code
(gtk_tree_view_button_release): remove queue_resize after
tree_view_set_size(), set_size() will handle any resize queuing
that's needed
(gtk_tree_view_focus_in): just queue a draw, don't fool with
draw_focus goo
(gtk_tree_view_focus): use gtk_get_current_event() and
gdk_event_get_state()
(gtk_tree_view_deleted): don't queue_resize() after calling set_size()
(gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
semicolon
(gtk_tree_view_create_button): show the button here
(gtk_tree_view_button_clicked): actually emit the clicked signal
on the column
(_gtk_tree_view_set_size): return right away if the size is
unchanged, as a cheesy optimization
(gtk_tree_view_setup_model): rename set_model_realized to
setup_model to match the flag that indicates whether we've
called it
(gtk_tree_view_get_hadjustment): create adjustment if it doesn't
exist, because set_scroll_adjustment does that and it shouldn't
matter what order you call these in
(gtk_tree_view_get_vadjustment): ditto
(gtk_tree_view_set_headers_visible): canonicalize the bool,
for paranoia
(gtk_tree_view_set_headers_visible): call
gtk_tree_view_map_buttons() instead of using cut-and-paste code
(gtk_tree_view_append_column): clarify whether the return value
is the count of columns before or after, and do the increment
separately from the return statement so you can tell from the code.
(gtk_tree_view_remove_column): ditto
(gtk_tree_view_insert_column): ditto
(gtk_tree_view_get_column): remove g_return_if_fail for columns
outside the existing range, the docs say that outside-range
columns are allowed, so we handle them as documented. (Presumably
this allows a nice loop with column != NULL as test.)
(gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments
mean (left/right/center etc.).
(gtk_tree_view_collapse_all): only queue a draw if we're mapped
(gtk_tree_view_expand_row): add docs
(gtk_tree_view_collapse_row): add docs
* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
function to emit the clicked signal on a column
* gdk/gdkevents.c (gdk_event_get_state): new function, to get the
state of an event
(gdk_event_get_time): don't treat GDK_SCROLL
as a button event, remove default case from switch so gcc
will whine if we don't explicitly handle all event types
* gtk/gtktreeselection.h: added some FIXME
* gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
"columns" to "n_columns" and "column" to "columns" for clarity
2000-11-13 Havoc Pennington <hp@redhat.com>
* gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug
where GC didn't always get updated properly
* demos/gtk-demo/textview.c (create_tags): Use subattributes
of fonts instead of setting the entire font
* gtk/testtext.c (fill_example_buffer): Use "size" instead of
setting entire font
* gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
* gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into
a bunch of individually-settable font attributes. You can still
use the "font" and "font_desc" args, they just set all the font
attributes at once.
2000-11-11 Tor Lillqvist <tml@iki.fi>
* io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
mktemp() and open()).
* io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
2000-11-01 Havoc Pennington <hp@pobox.com>
* gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
a pixbuf pointing to a subregion of another pixbuf.
2000-11-01 Havoc Pennington <hp@pobox.com>
* gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
on a label
(gtk_label_finalize): unref the attr list if any.
* gtk/testgtk.c (create_get_image): close test on second click
(make_message_dialog): close dialog if it exists
* gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
* gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
gdk-pixbuf
* gtk/gtklabel.c (gtk_label_set_markup): new function to set label
from Pango markup format
(gtk_label_set_markup_with_accel): ditto but with accelerator
parsing
* gtk/gtkimage.c (gtk_image_expose): reformatting.
* gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
reflect current state of GDK - use gdk_drawable_get_colormap, etc.
Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to
call gdk_window_get_origin().
* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
implement GDK_PIXBUF_ALPHA_FULL
2000-10-22 Tor Lillqvist <tml@iki.fi>
* gtk/makefile.mingw.in
* gtk/gtk.def: Updates.
* gtk/testgtk.c: sleep() is called _sleep in MS's C
library.
* gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
* gtk/makefile.msc: Remove
* gtk/makefile.msc.in: New file, like makefile.mingw.in.
* gtk/Makefile.am: Add it.
* configure.in: Generate it.
* gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
* gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
something even if not implemented, to satisfy picky MSVC.
2000-10-18 Havoc Pennington <hp@redhat.com>
* gtk/gtk-sections.txt: Some updates
* gdk/gdk-sections.txt: remove GdkPixbufAlphaMode
* gdk-pixbuf/gdk-pixbuf-sections.txt: Add new API, remove
GdkPixbufClass/GdkAnimationClass since those are private
* gdk-pixbuf/Makefile.am (IGNORE_HFILES): ignore more headers
2000-10-18 Havoc Pennington <hp@redhat.com>
* gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug
where any number of empty lines would get skipped
* gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
edge.
* gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
warning about invalid iterators (explain more thoroughly)
(gtk_text_iter_in_region): rename gtk_text_iter_in_range
* gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
big
* demos/*.c: Add error handling
* gtk/gtktextbuffer.c: don't modify const iterators
* gtk/gdk-pixbuf-loader.c: Add full error handling here
* gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
on file load
* gtk/gtkiconfactory.c: Update to reflect addition of error
handling to gdk-pixbuf loaders
2000-10-16 Havoc Pennington <hp@redhat.com>
* gdk-pixbuf-io.c (gdk_pixbuf_get_module)
(gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
add error reporting here also
* make-inline-pixbuf.c (main): use GError
* io-xpm.c: include unistd.h
* gdk-pixbuf-util.c: include string.h
* io-*.c: add error reporting
* gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
error reporting
* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
* gdk-pixbuf-io.h: Add GError** to load_increment and load
methods
* gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
a G_FILE_ERROR if we fail to write or close the file.
* gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
the GError naming rules. Add GError** to load functions.
2000-10-06 Havoc Pennington <hp@redhat.com>
* Makefile.am (SRC_SUBDIRS): contrib subdir
* gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
so it can be used in Xlib version
* demos/testpixbuf.c (update_timeout): error checking from 1.0
tree
* gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
change from 1.0 tree that returns first frame of animation
if the loaded file is an animation.
* contrib: add new directory to hold stuff that comes with GTK+
but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
* configure.in: add contrib/*
2000-10-06 Havoc Pennington <hp@redhat.com>
* gdk-pixbuf.h: add GdkPixbufAlphaMode
2000-10-06 Havoc Pennington <hp@redhat.com>
This entry is a summary of the merged-in changes from 1.0.
Relevant original ChangeLog entries are spliced in after
this entry; the files they refer to are from the 1.0
gdk-pixbuf sources.
* pixops/pixops.c (pixops_composite_nearest): sync a small fix
from 1.0
* io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
Add progressive loader from 1.0
* io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
from 1.0 tree
* io-pnm.c: new version from 1.0 tree
* io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
malloc not g_malloc
* io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
g_warning
(gif_get_next_step): return 0 here, sync from 1.0
* gdk-pixbuf-util.c: sync email address change for Cody
Russell
2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
* gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
last nights code was still "broken". Should now properly handle
all error conditions gracefully.
2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
* gdk-pixbuf/io-pnm.c: Rewrote.
2000-09-09 Federico Mena Quintero <federico@helixcode.com>
* gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
the correct dest offset.
2000-08-25 Federico Mena Quintero <federico@helixcode.com>
* gdk-pixbuf/io-xpm.c: #include <unistd.h>
2000-08-05 Larry Ewing <lewing@helixcode.com>
* gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
* gdk-pixbuf/io-xpm.c: same as above.
2000-07-26 Michael Meeks <michael@helixcode.com>
* gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
g_malloc a malloc.
2000-07-21 Larry Ewing <lewing@helixcode.com>
* gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
xpm at least supports the progressive interface like the one in
io-tiff.c. This should be reimplemented as an actual progressive
loader.
2000-07-19 Jonathan Blandford <jrb@redhat.com>
* demo/pixbuf-demo.c (update_timeout): changed scaling level to
make it look better.
* gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
meeks to handle errors better.
2000-10-06 Havoc Pennington <hp@redhat.com>
* gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
consistent with gdk_pixbuf_loader_new_with_type().
Return runtime error if a module is missing.
* gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
2000-10-03 Tor Lillqvist <tml@iki.fi>
* makefile.mingw.in: Add rule for make-inline-pixbuf. Use
gdk-pixbuf's version number in the rule for makefile.mingw itself.
* gdk_pixbuf.def: Add new entry points.
2000-09-26 Havoc Pennington <hp@redhat.com>
* gtk/Makefile.am (gtk_private_h_sources): Move more text widget
headers into the private header list
* Makefile.am (pkgconfig_DATA): install pkg-config files
* configure.in: add pkg-config files
* gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
* gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
outstanding icon caches on theme change.
* gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three
important types:
(GtkIconSource): Specification for creating a pixbuf
appropriate for a direction/state/size triplet from
a source pixbuf or filename
(GtkIconSet): List of GtkIconSource objects that are used to
create the "same" icon (e.g. an OK button icon), and cache for
rendered icons
(GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
up the icon set for a given stock ID. GTK maintains a stack of
GtkIconFactory to search, and applications or libraries can add
additional icon factories on top of the stack
* gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse
the set of GtkIconSource specified for a given stock ID into
a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the
RcStyle, under the specified stock ID.
* gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
render_icon used to derive a GdkPixbuf from a GtkIconSource.
This allows people to theme how prelight, insensitive, etc. are
done.
(gtk_style_lookup_icon_set): Look up a stock ID in the list of
icon factories for a style, and return the resulting
icon set if any.
(gtk_style_render_icon): Render an icon using the render_icon
method in the GtkStyleClass.
* gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon):
Use the style for a given widget to look up a stock ID, get the
icon set, and render an icon using the render_icon method
of the style
* gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
(contains information about a stock item), the built-in stock item
IDs, and functions to add/lookup stock items.
* gtk/stock-icons/*: Stock icons that come with GTK
* gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
a button based on a GtkStockItem
(gtk_button_new_accel): Takes a uline string and accel group, and
installs the accelerator.
* gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
image-display widget.
2000-09-07 Tor Lillqvist <tml@iki.fi>
* gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
* gdk/win32/gdkwin32.h: Add more definitions missing from the free
w32api headers.
* gdk/win32/gdkprivate-win32.h: Add a couple of missing
declarations.
* gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
(gdk_win32_get_colormap): A line had been deleted by mistake.
* gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
(gdk_event_translate): Handle more virtual keycodes to be able to
generate GDK events for Control-comma, Control-period, etc.
* gtk/gtk.def: Add some missing entry points.
2000-09-07 Tor Lillqvist <tml@iki.fi>
* makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
like on Unix.
2000-08-12 Tor Lillqvist <tml@iki.fi>
* gdk/gdk.def
* gtk/gtk.def: Add missing entries.
* gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
OUT_TT_ONLY_PRECIS, try to get a TrueType font.
* gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
function. Dummy implementation at this point.
* gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
rules. Undefine GTK_COMPILATION when compiling the test programs.
* gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
* gdk_pixbuf.def: Add missing entry point.
2000-08-10 Havoc Pennington <hp@redhat.com>
* Makefile.am (snapshot): Change the format of the snapshot
version to match glib
* gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
from EXTRA_DIST since it doesn't seem to exist
2000-08-10 Havoc Pennington <hp@redhat.com>
* Makefile.am (EXTRA_DIST): The *.def files had the wrong names
(s/pixbuf_/pixbufloader_)
2000-08-02 Tor Lillqvist <tml@iki.fi>
* configure.in: Check for <unistd.h>.
2000-08-02 Tor Lillqvist <tml@iki.fi>
* io-bmp.c
* io-ico.c
* io-ras.c
* io-tiff.c
* io-wbmp.c: Conditionalise inclusion of <unistd.h>.
* makefile.mingw.in: List loaders alphabetically. Add the wbmp
one. Fix names of DLLs to have '-' instead of '_'.
2000-07-27 Elliot Lee <sopwith@redhat.com>
* gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
function, to allow handling image formats that cannot be detected
by looking at content alone.
gdk-pixbuf/
2000-07-27 Elliot Lee <sopwith@redhat.com>
* gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add gdk_pixbuf_get_named_module() function to facilitate above change
* io-bmp.c: Don't malloc a temporary buffer - use stack instead.
* io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile: Implement loader for WBMP format.
**NOTE: I haven't tested this yet, I need to sync it to another machine, but it if it is broken
I'm already working on fixing it
2000-07-23 Tor Lillqvist <tml@iki.fi>
Win32 build setup:
* makefile.mingw.in
* pixops/makefile.mingw.in
* pixbuf_*.def: New files.
* Makefile.am
* pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
* gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
New function, to get the GTK+ installation directory from
the Windows Registry, where the installation program
for whatever software includes GTK+ has stored it.
Used to avoid having hardcoding the directory where to look for
loaders. This function is needed by gtk, too, so it should
really be just in one place. Maybe a small static library
one level up from here?
* gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
Open file in binary mode. This *is* standard C. (No-op on Unix,
of course.)
* io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
* io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
mktemp() and open().
(gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
* pixops/*.S: The Gas from mingw32 doesn't like the .type
pseudo-op. Conditionalise on __MINGW32__, but probably
should conditionalise on Gas version instead? Or could we
do without .type on all systems?
* pixops/timescale.c: Use g_get_current_time()
instead of gettimeofday().
Sat Jul 22 11:16:05 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.c (changed_handler): Fix bug where
redraw wasn't being done properly when height of
dirty region changed.
* demos/Makefile.am: Remove various references to
-lgmodule
* Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
Fri Jul 14 16:21:26 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextlayout.c: use FALSE for size_only most
of the time when calling gtk_text_layout_get_line_display()
to avoid causing double reshapes when a redraw follows
immediately after.
Tue Jul 11 11:13:40 2000 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
appropriate region and gdk_window_process_updates() so trough
updating doesn't lag behind the window being scrolled.
* gdk/gdkgc.c: Make parent_class pointer static.
Sun Jul 9 21:31:23 2000 Owen Taylor <otaylor@redhat.com>
* gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
include <string.h>.
* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
cut-and-paste error in computing memory offset for 4 channels.
Tue Jul 11 06:38:42 2000 Tim Janik <timj@gtk.org>
* gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
add the necessary tokens.
* gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
(gtk_rc_style_to_style): copy thicknesses.
(gtk_rc_init_style): apply thicknesses.
(gtk_rc_parse_style): parse xthickness and ythickness.
* gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
* gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new):
(gdk_window_new):
(_gdk_windowing_window_init):
* gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new):
(gdk_pixmap_create_from_data):
(gdk_bitmap_create_from_data):
(gdk_pixmap_new):
* gdk/x11/gdkimage-x11.c (gdk_image_get):
(gdk_image_new):
* gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new):
* gdk/x11/gdkdnd-x11.c (gdk_drag_context_new):
* gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
(gdk_colormap_get_system):
(gdk_colormap_new):
* gdk/gdkwindow.c (gdk_window_init):
* gtk/gtkstyle.c (gtk_style_new):
* gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
* gdk/gdkpixmap.c (gdk_pixmap_init):
* gtk/gtkrc.c (gtk_rc_style_new):
use g_object_new() instead of g_type_create_instance() which
is a private function for fundamental type implementations.
Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
* io-gif.c (gdk_pixbuf__gif_image_load_animation):
* gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
* gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
use g_object_new() instead of g_type_create_instance() which
is a private function for fundamental type implementations.
2000-06-21 Havoc Pennington <hp@pobox.com>
* gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
(i.e. derivation is not allowed, and there are no virtual methods
anyway).
(gdk_pixbuf_preinit): Call g_type_init() here.
(gdk_pixbuf_init): Add a user-friendly init function, for users
of standalone gdk-pixbuf
* gdk-pixbuf-animation.c: Convert to GObject, in the same
way GdkPixbufAnimation was done.
* gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
gdk_pixbuf_finalize() from API, since these are broken and don't
make sense with new GObject stuff.
2000-06-21 Havoc Pennington <hp@pobox.com>
* gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
we didn't check window->bg_pixmap != GDK_NO_BG.
* gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
gdk-pixbuf
Wed Jun 21 16:38:13 2000 Owen Taylor <otaylor@redhat.com>
* gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
gdk-pixbuf.
* gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
fixups for GObject.
* gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of
gdk-pixbuf with GDK dependencies moved into GDK.
* gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
move gdk-pixbuf-loader here until GObject has signals.
* demos/: New directory of demos. Move demos from
gdk-pixbuf here.
* demos/pixbuf-init.c: Small bit of code to check for
loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
set GDK_PIXBUF_MODULEDIR appropriately.
* gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
define which no longer makes sense.
2000-06-10 Federico Mena Quintero <federico@helixcode.com>
* demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
so I needed something to warm my thighs. Running plain infinite
loops on your laptop to make it hot is not very much fun. A demo
of the gdk-pixbuf scaling functions is way better, and looks
prettier, too.
* configure.in (AC_OUTPUT): Added the demo Makefile.
* Makefile.am (SUBDIRS): Added the demo directory.
2000-06-09 Larry Ewing <lewing@helixcode.com>
* gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
setjmp for the png error handler. It seems setting the error
handling functions does not avoid the jump, and so not calling
setjmp was causing the incremental loader to jump into lala land.
(gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
not sure this one is actually required but the docs say it must be
set for every call to a png_* function.
Also changed the comment to reflect the fact that setting the
error handlers does _not_ avoid the longjmp.
2000-06-06 Larry Ewing <lewing@helixcode.com>
* gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
take frame offest into account when trying to calculate the
animation bbox. Also set the width to the width not the height.
(gdk_pixbuf_loader_frame_done): cycle over the frames to calculate
bbox since only now do we have all the offset information for each
frame.
2000-05-30 Not Zed <NotZed@HelixCode.com>
* gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
Initialise the error handler exit routine to our own. Note this
means that every function that accesses the jpeg lib on this
object MUST do a setjmp.
(gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
lib for handling fatal error.
(gdk_pixbuf__jpeg_image_load_increment): And here too. So now
your applications dont quit if there's a jpeg error!
2000-05-30 Federico Mena Quintero <federico@helixcode.com>
* gdk-pixbuf.spec.in: Include all the loader libraries. Patch
from Frank de Lange <frank@unternet.org>.
Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
* gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
detailed information about the structure and algorithms
of pixops so people can fix it instead of breaking it.
CvS: Added Files:
* gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
(composite_pixel), (composite_line):
* gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
Now that Owen explained the algorithm, I think I implemented it
right for the cases where the destination pixbuf is not opaque.
The test does seem to confirm it.
* gdk-pixbuf/.cvsignore:
* gdk-pixbuf/Makefile.am:
* gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
(load_pixel), (simple_composite_test_one),
(simple_composite_test_one_type), (simple_composite_test), (main):
Added some tests of composite to highlight problems in the old
implementation. These tests run without any user interaction.
Just do "make check".
* gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
(composite_pixel), (composite_line): Fix composite to do a textbook
"A over B" composite. This was clearly the intent, and it was easy
to fix the code to do it. (Note to those that read my earlier tries
at a patch; this version fixes typos that were present in all
my patch attempts. I checked the final version by adding more tests.)
2000-04-22 James Henstridge <james@daa.com.au>
* gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
package to the devel package. The only file installed in bin is
gdk-pixbuf-config, which belongs in -devel. This should allow having
multiple versions of the main gdk-pixbuf package installed.
2000-04-14 Tomasz K³opczko <kloczek@pld.org.pl>
* gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
$(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
2000-04-13 James Henstridge <james@daa.com.au>
* configure.in: when performing the configure check to see if
gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
rather than the other way round. Also, call AC_MSG_RESULT in the
even that dynamic modules were not supported.
Your eyes are bloodshot.
Your mouth starts to foam.
Your hands are shaking.
You know your need your fix.
NEED MORE ABSTRACTION!
2000-04-12 Federico Mena Quintero <federico@helixcode.com>
This comes from an excellent idea by Tim Janik (timj@gtk.org) to
hook to the last unref operation.
* gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
function to set the last unref handler for a pixbuf.
(gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
It calls the pixbuf's destroy notification function and frees the
GdkPixbuf structure itself.
(gdk_pixbuf_unref): Use the last unref function of the pixbuf if
available.
* gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
for the last unref handler and its user data.
* gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
g_new0() to allocate the pixbuf.
* gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
Fixed the call to gtk_signal_new() for the "frame_done" signal; it
was not specifying the `frame' argument.
* gdk-pixbuf/gdk-pixbuf-animation.c
(gdk_pixbuf_animation_get_width): Fixed docstring.
(gdk_pixbuf_animation_get_height): Likewise.
(gdk_pixbuf_animation_get_num_frames): Likewise.
(gdk_pixbuf_animation_get_frames): Likewise.
* doc/gdk-pixbuf-sections.txt: Updated with the new functions and
types.
* doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
* doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
* doc/tmpl/refcounting.sgml: Updated with the information about
the last unref handler.
* doc/tmpl/*.sgml: Markup tweaks.
* gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
update the libtool version number for libgnomecanvaspixbuf as
well.
(libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
as well, or the old ones won't work with the new stuff. Also,
renamed the modules as follows.
* gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
modules are called "libpixbufloader-<format>.so" instead of
"libpixbuf-<format>.so". They needed renaming so that the new
loaders won't overwrite the old ones; even with the versioning
stuff, the new .so symlink to the .so.1.0.0 would overwrite the
old real .so file.