2001-07-20 Hans Breuer <hans@breuer.org>
* gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
gdk/gdkinput.c like the other backends
* gdk/win32/gdkinput-win32.h :
* gdk/win32/gdkinput.c :
* gdk/win32/gdkvisual-win32.c :
* gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
GdkVisual GObjectification. UNTESTED for pen-devices because
I simply have none.
* gdk/gdk.def :
* gtk/gtk.def : updated externals
* gtk/gtkiconfactory.c :
* gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL)
before passing &error to functions to avoid strange crashes
* gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
* gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
* gtk/makefile.msc.in : updated
Thu Jul 19 14:56:33 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkaccellabel.c (gtk_accel_label_class_init)
* gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
Use Shift/Ctrl instead of Shft/Ctl. (#53807)
Thu Jul 19 11:41:00 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkcolorsel.c: Add propery support (roughly
based on patch from Lee Mallabone, #51014)
* gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
deprecated, since we already g_warning() on it.
Thu Jul 19 14:24:34 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkentry.c (gtk_entry_set_positions): Fix
typo that sometimes caused selection not to work properly.
* gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
entry when tabbing in. (#57743)
* gtk/gtkentry.c (gtk_entry_motion_notify): If the
user drags up above or down below the entry, move
to the end or the beginning of the entry. (Suggestion
from Jay Cox, #50940)
* gtk/gtkentry.c (gtk_entry_move_cursor): If we have
a current selection, then when moving by chars or
words, move to the end of the selection rather than
from entry->current_pos. (Suggestion from Jay Cox,
#50942)
Sat Jul 7 02:50:14 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
the widget/child realization/mapping invariants.
* gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions
gtk_widget_[get/set]_child_visible() to control
whether visible children of a mapped window are
mapped.
* docs/widget_system.txt: Updated for changes in
container contract, and addition of GTK_CHILD_VISIBLE.
* gtk/gtkcontainer.c: Add generic map()/unmap()
functions that work for almost all containers.
* gtk/gtknotebook.c gtk/gtkpacker.c: Use
gtk_widget_set_child_visible() where necessary.
* gtk/*.c: Remove excess map(), unmap(), and
realization/mapping invariant enforcing code
from many containers.
Wed Jul 18 19:51:45 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.c (gtk_text_view_set_attributes_from_style):
Get the foreground color from 'text', nor 'base'. (#57568)
Wed Jul 18 19:28:46 2001 Owen Taylor <otaylor@redhat.com>
* gtk/*.c: Patch from Matthias Clasen to remove remove
all instances of g_return_if_fail (foo != NULL); that are
immediately before a g_return_if_fail (GTK_IS_FOO (foo));
since the second check catches the NULL anyways.
Wed Jul 18 18:23:05 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
gtktreeview.c: Fix idles and timeouts to be properly surrounded by
GDK_THREADS_ENTER()/LEAVE() pairs.
* gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
pairs. (Problem found by M. Meeks)
* gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
that we don't get a g_warning message every time we register a new
icon size.
* gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
using pixel variable of the correct type.
Sat Jul 14 12:47:35 2001 Tim Janik <timj@gtk.org>
* gtk/gtkrange.c:
(second_timeout):
(initial_timeout):
(update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
(gtk_range_calc_layout): compute the new layout based on an
adjustment->value being passed in as argument.
(gtk_range_button_press): for button2 slider warps, first recalc
the layout, then adjust the value. also, use update_slider_position()
for adjusting the value, so we keep pixel quantisation at which we
usually operate (upon motion or button releases). the reason for this
is that, we can't change the adjustment upon button2 presses to a non
quantised value and upon button2 release re-quantise the value since
that'd alter the value even if we didn't get any motion events (causing
unexpected scroll area warps upon release and/or slider pixel-jitter).
(gtk_range_motion_notify): update the slider position from queried
coordinates, not event coordinates.
Fri Jul 13 09:47:52 2001 Tim Janik <timj@gtk.org>
* gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
the default gc values are: width=0, CapBut, JoinMiter.
2001-07-13 Anders Carlsson <andersca@codefactory.se>
* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
into account the xpad and ypad when calculating the width and the
height of the pixbuf cell.
Thu Jul 12 16:51:34 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c: Replace a couple of inappropriate calls to
GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
Mon Jul 9 12:50:51 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
gtk_tree_model_get_iter_root.
* gtk/gtkliststore.c: Add a bunch of g_return statements.
(gtk_list_store_iter_n_children): Fix up.
* gtk/gtktreestore.c: Add a bunch of g_return statements.
* gtk/gtkwidget.c (gtk_widget_class_init):
G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
restore some workingness.
* gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix
handle of window type for input-only windows.
Thu Jul 5 21:53:46 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
Patch from Gregory Merchan to add
gtk_button_box_set_secondary(), which separates
the child into a separate group from the normal
buttons. (#56331)
* gtk/gtkdialog.c: Make help buttons secondary by
default.
* gtk/gtkbbox.c: Added a child property "secondary".
* gtk/testgtk.c: Turn on the help button for the
color selector to check that it properly appears
as secondary.
Thu Jul 5 08:57:07 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
in the right value of initial_emission to
gtk_widget_set_style_internal (#57091)
Wed Jul 4 23:17:04 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
Make compile.
* gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
with calling gtk_widget_set_style_internal() with
the old style, not the new style. (#56989)
Wed Jul 4 22:35:40 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
gtk/gtkwidget.c:
Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
not GTK_WIDGET_GET_ANCESTOR ... see
http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
Indicate the best practice in the docs for gtk_widget_get_toplevel().
* gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
so GtkPlug can give the correct signals when transforming
from a child to a toplevel.
* gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
reparentation correctly.
* gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
Propagate the previous_toplevel argument down properly.
* gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
of wrong atr list.
* gtk/gtkplug.[ch]: Add an "embedded" signal.
* gtk/gtksocket.[ch]: Add "child_added", "child_removed"
signals.
* gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add
functions gtk_plug_get_id(), gtk_socket_get_id(),
to avoid the user having to worry about realization,
and gdkx.h.
* tests/testsocket.c: Extend to try out the new signals
and gtk_plug/socket_get_id().
* gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
setting of underline attributes.
* gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
DestroyNotify events from SubstructureNotifyMask
* gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
Switch GDK_WINDOW_TYPE (window) as needed.
* gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
allow creation of toplevel windows as children of
foreign windows.
* gtk/gtkplug.c: Remove hacks involving changing private
fields of GdkWindow.
* gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make
exactly the same signals and notification
be emitted for local embedding as for inter-process
embedding.
Mon Jul 2 16:53:25 2001 Owen Taylor <otaylor@redhat.com>
* gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
XEMBED embedding add a _XEMBED_INFO property to the
client with version number and a "mapped" flags.
Use the mapped flag instead of the racy MapRequestEvent
* gtk/gtksocket.c: Clean up the gtk_socket_steal()
code to reliably set things (when the child is a passive
embedder participating in the XEMBED protocol) intead
of just being a hack for embedding non-participating
programs. Fix various bugs and race conditions.
* gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
work by simply making the GtkSocket the gtk parent
of the GtkPlug. Set a flag in this case and make
the GtkPlug work like a normal container by overriding
methods such as check_resize and "chaining past" GtkWindow
to GtkBin.
* gtk/gtkentry.c (gtk_entry_real_activate)
gtk/gtkmain.c (gtk_propagate_event):
Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
* gtk/gtkwidget.c (gtk_widget_get_toplevel,
gtk_widget_get_ancestor):
Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
might not give the expected result and recommend
an alternative.
* tests/testsocket.c tests/testsocket_child.c
tests/testsocket_common.c tests/Makefile.am: Extended
to test different type of adding plugs to sockets
(local,active,passive), and to test mapping/unmapping
the plug.
* gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
mark the window as destroyed until after we
called _gdk_windowing_window_destroy().
(_gdk_windowing_window_destroy() may use GDK functions
on the window.)
* gdk/x11/gdkinput.c: Remove the check for finalization -
devices can be finalized under some circumnstances.
* gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix
small problem with GDK_TYPE_DEVICE.
2001-07-02 James Henstridge <james@daa.com.au>
* gtk/gtktextview.c (gtk_text_view_class_init): same here for
PANGO_TYPE_TAB_ARRAY.
* gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
for PANGO_TYPE_TAB_ARRAY.
* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
* gtk/gtk-boxed.defs: move all the boxed definitions to the top of
the file. Remove Pango types from defs -- they are now defined in
libpango.
Sat Jun 30 20:44:48 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtktypeutils.c (gtk_type_class): Remove
change check for GTK_TYPE_OBJECT derivation to
G_TYPE_OBJECTS - it's Tim-approved to use this
for arbitary objects.
* gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
prefix gtk_container_dequeue_resize_handler().
* gtk/gtkwidget.[ch]: Add a previous_toplevel argument
to the hierarachy_changed signal, since you otherwise
have to always keep that around.
* gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
for extra argument to hierarchy_changed.
Sat Jun 30 17:13:51 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkliststore.c (gtk_list_store_newv): New function for
language bindings.
* gtk/gtkteststore.c (gtk_test_store_newv): New function for
language bindings.
Tue Jun 26 19:39:03 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
for style to mean "revert to default style"
* gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
gtk_widget_restore_default_style): Make this functions
deprecated aliases for gtk_widget_set_style (widget, NULL).
* gtk/gtkwidget.[ch]: Remove:
gtk_widget_set_default_style ()
gtk_widget_push_style ()
gtk_widget_pop_style ()
These functions interact are overriden by RC files, and
thus virtually useless, and complicated.
Fri Jun 22 18:49:48 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkrc.c: Add a GtkRcContext structure to hold
most of the previous global variables in gtkrc.c. This is
in preparation for multi-head, since each screen can
have different GtkSettings and RC information.
* gtk/gtkrc.[ch]:
* gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
GtkSettings parameter to GtkRcStyle::parse.
* gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c:
Add two new settings gtk-theme-name, gtk-key-theme-name,
for RC files that are loaded by name after reading
the default RC files.
* gtk/gtkrc.c: Allow priorities for styles, as wll as
bindings.
* gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
and use it by default for RC files loaded via
gtk-theme-name, gtk-key-theme-name.
* gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string)
tests/testgtkrc: Require pathnames to be absolute.
* gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
the source when parsing, since the operation of looking up a
pixmap from an RC file depends on the parsing context.
* gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
reset RC styles on all widgets when files are reparsed.
* tests/testgtk.c (create_rc_file)
gtk/gtkwindow.c (gtk_window_read_rcfiles):
Simplify, now that gtk_rc_reparse_all() resets styles on
all widgets itself.
* gtk/gtkmain.c (gtk_get_default_language): Fix broken
return value.
* gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
GtkSettings argument.
* gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
gtk_settings_get_global().
* gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
to get the appropriate GtkSettings for a widget. (For now,
just gets the default GtkSetttings.)
* gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
changes.
* gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
getting a style for a path without actually having a widget.
(Allows using a style for a subpart of a widget, for
example.)
* gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
the RC files to be reloaded for just one GtkSettings
(not sure how useful this really is.)
* gtk/gtkrc.h: Deprecate
gtk_rc_add_widget_name/widget_class/class_style
Fri Jun 29 22:13:28 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
to just plain new, fixing the number of columns, and column types
at creation time.
* gtk/gtkliststore.c (gtk_list_store_new): ditto.
* gtk/gtkcellrenderertext.c
(gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
height to a specific font.
* gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
* tests/*c: change to work with new store models.
Fri Jun 29 00:13:34 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
walk through a model in a depth first manner, with the option to
break out.
Fri Jun 8 18:52:10 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.[hc]: Patch Thomas Broyer from
<tbroyer@ltgt.net>. Expander arrows are now attached to a specific
column and follow it when draged, rather than a location in the
view. "expander_column" property and drawing functions changed
accordingly. Fixes bug #55942.
(gtk_tree_view_{set,get}_expander_column): Now works with a
GtkTreeViewColumn* instead of int.
2001-06-28 Havoc Pennington <hp@pobox.com>
* gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
image data to the screen, using a server grab to avoid race
conditions.
* gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove
check for NULL return from gtk_image_new_from_stock(), it never
returns NULL.
(gtk_item_factory_create_item): fix bug where we parsed the stock
ID as an inline pixbuf
* gtk/gtktext.c (gtk_text_key_press): numeric keypad support
* gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
support (should be using binding set here)
* gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
support (should be using binding set here)
* gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad
support
* gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
* gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
* gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
* gtk/gtkimcontextsimple.c
(gtk_im_context_simple_filter_keypress): keypad
* gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad
* gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
* gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
* gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
should be binding-setted)
* gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
* gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
* gtk/gtkcalendar.c: numeric keypad fixes
* gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
support
* gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
screwup
* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
clip the render area to the drawable's clip region in advance,
so we don't get data from the server that we don't need.
* gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
check return value of gdk_pixbuf_get_from_drawable(), fall back
to bilevel alpha if we can't get the pixbuf to composite against.
* gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
* gdk/gdkimage.c (gdk_image_get_colormap): add
gdk_image_set_colormap, gdk_image_get_colormap
* gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
take a region of the image, instead of converting the entire
image.
* gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
keybinding signal. Add default bindings for it. Add default
handler for show_help that shows the tooltip for the widget.
* gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
"close" keybinding signal, remove key press handler.
* gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
it's not our usual practice to leave a deprecated function around
with a runtime warning, plus we don't want it to appear in docs,
plus if we make them yellow no one will want to change them
anyhow.
Thu Jun 28 23:53:31 2001 Tim Janik <timj@gtk.org>
* gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
GTK_WIDGET_REALIZE() for resize queueing.
* gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
GTK_WIDGET_REALIZE() for post event delivery destruction upon
GDK_DESTROY.
* gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
sompensate for former (pre-2.0) connect_after() facility.
(gtk_widget_send_expose):
(gtk_widget_event): assert the widget is realized, since event delivery
to non-realized widgets is essentially a bug. event handlers should
be able to unconditionally rely on widget->window (unless they
emit events on their own which can trigger widget destruction).
(gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
logic. event delivery happens as follows:
a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
b) if !was_handled in (a) and the widget is still realized, emit event-
specific signal (RUN_LAST handler). returns was_handled.
c) emission of GtkWidget::event-after for notification if the widget is
still realized (regardless of was_handled from previous stages, no
class handler). no return value.
d) was_handled gets passed on to caller, to determine further
propagation. if the widget got unrealized meanwhile, was_handled
is returned as TRUE.
* gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
gdk_event_get_coords().
Thu Jun 28 17:18:41 2001 Tim Janik <timj@gtk.org>
* configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
age 0, binary age 0. depend on glib 1.3.7.
* gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
* gtk/gtkmenubar.c: same here.
* gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
* gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
* gtk/gtkentry.c (gtk_entry_focus_in): same here.
* gtk/gtkmenubar.c (add_to_window): likewise.
* gtk/gtktextbtree.c: and here...
* gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
* gtk/gtktoolbar.c (gtk_toolbar_init): once more.
* gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
* gtk/gtktreeviewcolumn.c:
(_gtk_tree_view_column_set_tree_view): yet again.
* demos/gtk-demo/images.c (progressive_timeout): demonstrate
signal connections without g_signal_connect_data().
* demos/gtk-demo/stock_browser.c (do_stock_browser): second
demo of the matter.
* demos/testpixbuf.c (main): running out of equality phrases for the
ChangeLog, but had to adapt connections here as well.
* demos/testanimation.c (progressive_timeout): and for the fun of it,
tackled this the same way.
* tests/testtext.c (create_view): ok, it's becoming a pain at this
point, but had enough enery for one more fix.
* tests/testtreecolumns.c (main): stand up man, do your work!
* tests/testtreeview.c (set_columns_type): ok, this is the last file i
fix, either that's been all of it or CVS gtk is broken yet again.
Wed Jun 27 19:40:31 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeviewcolumn.c
(gtk_tree_view_column_pack_start_cell_renderer): New function to
reflect that you can (hypothetically) pack cell renderers into a
column.
(gtk_tree_view_column_pack_end_cell_renderer): ditto.
(gtk_tree_view_column_cell_is_visible): Move more functionality to
the column.
(gtk_tree_view_column_cell_can_focus): Move more functionality to
the column.
* gtk/gtktreeview.c: Move to use new column-packing code.
(gtk_tree_view_real_expand_row): remove totally braindead code.
(gtk_tree_view_real_collapse_row): ditto.
Tue Jun 26 10:04:30 2001 Tim Janik <timj@gtk.org>
* gtk/gtkiconfactory.c:
* gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
item factory so inlined pixbufs actually work.
Tue Jun 26 10:04:30 2001 Tim Janik <timj@gtk.org>
* gtk/gtkiconfactory.c:
* gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
item factory so inlined pixbufs actually work.
Tue Jun 26 09:48:02 2001 Tim Janik <timj@gtk.org>
* Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
* gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
instead from gdk_pixbuf_new_from_inline().
* gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
installed API for applications that need to serialize/deserialize
on their own (gimp, BEAST).
* gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
program that can dump images in CSource format and Pixbuf
stream format. supports RLE encoding, MACRO formatting etc...
invoke with --help.
Tue Jun 26 12:59:28 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
stupid missing statement
* gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
private function for ATK. It notifies you of how many _visible_
children are deleted when a node is deleted. Should be used by
atk only.
Tue Jun 26 11:06:34 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
Use new pango_context_get_metrics() to fix problems
with font lists in descriptions. (#56184, reported by
Jonas Borgström)
Tue Jun 26 09:48:02 2001 Tim Janik <timj@gtk.org>
* Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
* gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
instead from gdk_pixbuf_new_from_inline().
* gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
installed API for applications that need to serialize/deserialize
on their own (gimp, BEAST).
* gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
program that can dump images in CSource format and Pixbuf
stream format. supports RLE encoding, MACRO formatting etc...
invoke with --help.
Tue Jun 26 10:04:30 2001 Tim Janik <timj@gtk.org>
* gtk/gtkiconfactory.c:
* gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
item factory so inlined pixbufs actually work.
Sun Jun 24 21:34:32 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
* gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
with un'reffing wrong list reported by Jeff Franks.
* gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
* gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
for the default icon. Remove inline XPM.
* gtk/gtkstock.h gtk/gtkiconfactory.c:
Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
is used for GTK_STOCK_DND, but it is a bit too small.)
* gtk/stock-icons/stock_dnd_multiple.png
gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
* gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
TRUE when starting a drag. In other cases, we are
just observing. (#52995)
* gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add
function to set the icon for a drag from a GdkPixbuf
or stock ID.
* gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}):
Likewise, for drag sources.
* gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
(Now should be done using the stock system.)
Sun Jun 24 12:06:47 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size):
Removed - didn't work and not particularly useful anyways
if it did.
Sun Jun 24 11:29:35 2001 Owen Taylor <otaylor@redhat.com>
* gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
introduced last night that was making things decidedly not work.
* gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
so that we have getter/setter pairing everywhere it makes
sense. (#55767)
* gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
deprecated compat macro. (#55516)
* gtk/gtklabel.[ch]: Add functions
gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
gtk_label_set_label(), which mirror the property API for GtkLabel.
Make gtk_label_get_attributes() only reflect the attributes
set by gtk_label_set_attributes.
* gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
from gtk_notebook_set_page().
Sat Jun 23 10:27:53 2001 Owen Taylor <otaylor@redhat.com>
* modules/input/gtkimcontextxim.c: Fixup some problems with
text length handling in error cases.
* gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
a bit to make test actually warn on attempt to allocation
a negative size. (#56101, Matthias Clasen)
Fri Jun 22 14:06:08 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
noticed by Brian Cameron.
(gtk_tree_view_real_expand_row): Fix bug noticed by Brian
Cameron.
2001-06-22 Hans Breuer <hans@breuer.org>
* gdk/gdk.def : updated externals
* gdk/win32/gdkdrawable-win32.c : corrected some casts
in GDK_NOTEs
* gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
to translate coordinates to the internal > 16 bit system
Try to handle WM_WINDOWPOSCHANGED to get better performance for
when moving/resizing
* gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
and gdk_keymap_get_direction (). The latter is untested for
the RTL case
* gtk/gtk.def : updated externals
* gtk/gtkmain.c : gtk_get_default_language () should reurn the result
from pango_language_from_string (), not an already freed pointer
* gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be
binary (-kb) to be useable on windoze
Thu Jun 21 02:13:40 2001 Tim Janik <timj@gtk.org>
* gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
gtk_container_child_get_property().
Wed Jun 20 19:19:15 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
(gtk_tree_view_move_cursor_page_up_down): implement.
Wed Jun 20 05:32:05 2001 Tim Janik <timj@gtk.org>
* gtk/gtkspinbutton.c: make maximum digits compile time configurable
via MAX_DIGITS and up to 20. 5 was just ridiculously small.
don't use automatic fixed size buffer for printf-ing floats, doubles
can expand to really _huge_ strings, use g_strdup_printf() instead.
Wed Jun 20 04:28:24 2001 Tim Janik <timj@gtk.org>
* gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
construct property in 1.2 and still needs to be.
* gtk/gtkwidget.c: "composite_child" is not a settable property.
Tue Jun 19 19:13:19 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtkliststore.c (gtk_list_store_clear):
* gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
clear a model.
Mon Jun 18 02:00:49 2001 Tim Janik <timj@gtk.org>
* gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
* gtk/Makefile.am:
* gtk/gtk.h: disabled GtkPacker compilation.
* gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
* gtk/gtknotebook.c:
* gtk/gtktable.c:
* gtk/gtkbox.c: ported this over to child properties.
* gtk/gtksettings.c: fetch class properties via
g_object_class_list_properties().
* gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
child arg interface. use gobjectnotifyqueue.c for child property
notification.
* gtk/gtkwidget.[hc]: provide necessary means for container child
properties, i.e. ::child_notify signal,
gtk_widget_freeze_child_notify(),
gtk_widget_child_notify(),
gtk_widget_thaw_child_notify().
* tests/testgtk.c: removed inferior property handling code, for
property editing, a generic module should be used, and GLE
coincidentally fullfills that purpose.
* docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
needs to be adapted to g_object_class_list_properties() before this
builds again.
Mon Jun 18 20:06:10 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
test if a node is expanded.
Mon Jun 18 19:41:38 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
where collapsing a selected row would result in the cursor/anchor
getting screwed up.
Fri Jun 15 18:53:48 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
gtk_tree_sortable_sort_column_id_set_func. It's much shorter now.
* gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
Now I can really reorder/sort all Store widgets. treesorttest
seems to just work now.
* gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
testtreesort worked through a big coincidence all this time.
* gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
code.
* tests/testtreecolumns.c: Big 'ol warning at the top letting
people know that this code should never ever ever be copied.
HA!
While everyone else was busy flaming eash other over configuration
engines, I secretly got sorting completely working with store widgets
and GtkTreeView. GtkTreeModelSort, here I come!!!!!
2001-06-15 Jonas Borgstrm <jonas@codefactory.se>
* gtk/gtkwindow.h: Fixed a small typo, it should be
GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
on line 134.
Thu Jun 14 19:21:27 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops. Forgot
this a couple months ago. Now GtkTreeStore sort of sorts. I'll
finish it off tonight, though it basically works now when it's a
list. Also, I have a sinking feeling neither GtkTreeStore or
GtkListStore actually resort when adding a new item. I'll look
into it.
2001-06-14 Havoc Pennington <hp@redhat.com>
* gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
* gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
* gtk/gtktextbtree.c: don't leak node data all over the place.
* demos/gtk-demo/main.c (main): create fontify tags for the right
buffer
* gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
to mention tags in the same table can't have the same name,
suggested by Skip Montanaro
2001-06-11 Havoc Pennington <hp@redhat.com>
* gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning
for trying to add two tags with same name to the tag table
* demos/gtk-demo/main.c (main): fix colors ;-)
Fri Jun 8 17:56:52 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
that allows grouping together multiple windows so that grabs
within that set of windows only affect those windows.
* gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
signal for notification when a widget becomes shadowed
by a grab or is no longer shadowed by a grab.
* gtk/gtkwidget.c (gtk_widget_propagate_state)
gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
insenstive widgets to maintain a grab.
Mon Jun 11 18:15:16 2001 Owen Taylor <otaylor@redhat.com>
* gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
* gtk/gtk[hv]scale.c: Include math.h, stdlib.h
* gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
to recent changes in Pango.
* tests/testgtk.c: Set language tags with gtk_label_set_markup()
to test whether the basic engine honors them.
Tue Jun 12 12:41:27 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
gtk_tree_model_get_flags by adding a second flag for atk.
* gtk/gtktreemodel.c: make cursor behavior interact better with
mouse presses.
Mon Jun 11 12:43:08 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_class_init): changed
expand_row/collapse_row to be 2 signals each -- test_expand_row
and row_expanded as well as test_collapse_row and row_collapsed.
2001-06-08 Havoc Pennington <hp@redhat.com>
* gtk/gtkentry.c (gtk_entry_class_init): add read-only
"scroll_offset" property for notification when the layout offsets
may have changed
(gtk_entry_adjust_scroll): add notify for scroll_offset
(gtk_entry_layout_index_to_text_index): function to compensate for
preedit string when doing coordinate stuff on the entry's layout
(gtk_entry_text_index_to_layout_index): inverse function
(gtk_entry_get_layout_offsets): hook to get current position of
the layout
(gtk_entry_get_layout): hook to get the layout itself.
* gtk/gtklabel.c (gtk_label_get_layout): new function
Fri Jun 8 18:41:30 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
clean up cursor handling.
Pretty much nailed single selection motion, and multi-selection
focus minus the fact that the anchor isn't quite right.
2001-06-08 Havoc Pennington <hp@redhat.com>
* gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
function
* gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
this function
2001-06-08 Havoc Pennington <hp@redhat.com>
* gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
don't call g_list funcs on GSList
* gtk/gtkwidget.c (gtk_widget_child_focus): replaces
gtk_container_focus(), since some widgets have focusable locations
which are not other widgets. These widgets should not have to be
containers just to manage the focus. For example, GtkHSV is
currently a container for no good reason. Also, this cleans
up the "if (is_container && is_sensitive && is_drawable)
container_focus ()" mess in widget implementations.
* gtk/gtkcontainer.c (gtk_container_focus): deprecate this
function, and have it just call gtk_widget_child_focus().
* gtk/gtkhsv.c: derive from widget not container
Throughout: fix to reflect GtkContainer::focus change
Fri Jun 8 12:38:49 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
range. Fix bug #55921
* gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
(#55920).
Fri Jun 8 12:38:49 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
range. Fix bug #55921
* gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
(#55920).
Fri Jun 8 12:03:07 2001 Owen Taylor <otaylor@redhat.com>
* gdk/gdkkeys.[ch]: Add a direction-changed signal,
and gdk_keymap_get_current_direction().
* gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
the current locked group, use it to set the keymap
direction.
* gtk/gtksettings.c: Add a new gtk-split-cursor setting
to determine whether we draw a split cursor or use
a jumping cursor based on the current direction.
* gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
Obey the split cursor setting.
Fri Jun 8 11:57:50 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkimmulticontext.c (activate_cb): Only activate
when toggling on, not when toggling off... (#55906)
Wed Jun 6 10:37:07 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwidget.c (gtk_widget_set_double_buffered):
s/gdk_window_begin_paint/gdk_window_begin_paint_region/
in docs. (#55812, Vitaly Tishkov)
Thu Jun 7 18:25:42 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeselection.c: Now it's a GObject instead of a
GtkObject. The GtkTreeSelection::selection_changed signal is now
the GtkTreeSelection::changed signal.
* gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
object.
* tests/gtktree*.c: Modified to deal with new GtkTreeSelection
object.
2001-06-07 Havoc Pennington <hp@redhat.com>
* gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
(not tested yet because with absolute path to srcdir I can't build
atk, but it was broken anyway so this may help)
Wed Jun 6 21:59:16 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
buttons. Fixes#55460 reported by matthiasc@poet.de.
Wed Jun 6 21:18:54 2001 Jonathan Blandford <jrb@webwynk.net>
* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
expansion/collapsing so it only happens in one place.
(gtk_tree_view_real_expand_row): ditto.
2001-06-07 Havoc Pennington <hp@redhat.com>
* m4macros/glib-2.0.m4: subst GLIB_GENMARSHAL, GOBJECT_QUERY,
GLIB_MKENUMS variables
* gmodule-2.0.pc.in: add gmodule_supported variable
* glib-2.0.pc.in: add glib_genmarshal, gobject_query,
glib_mkenums variables
* configure.in: put G_MODULE_SUPPORTED value into
.pc files
* autogen.sh: support AUTOGEN_SUBDIR_MODE
* Makefile.am: add -uninstalled.pc.in to EXTRA_DIST
2001-06-07 Havoc Pennington <hp@redhat.com>
* pango/Makefile.am: add libpango.la to _DEPENDENCIES for the
other libs
* configure.in: use AM_PATH_GLIB_2_0
* autogen.sh: support AUTOGEN_SUBDIR_MODE
* Makefile.am: dist the .pc.in files
2001-06-07 Havoc Pennington <hp@redhat.com>
* atk/Makefile.am: use @GLIB_GENMARSHAL@ so we can use uninstalled
glib-genmarshal
* configure.in: rearrange the library checks to support
uninstalled linking
* autogen.sh: add support for AUTOGEN_SUBDIR_MODE
* atk-uninstalled.pc.in: new file, allows linking to uninstalled
ATK in giant GTK tarball
2001-06-07 Havoc Pennington <hp@redhat.com>
* tests/Makefile.am: add missing -I flag
* gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
* configure.in: use pkg-config to see if GModule is
supported; fix to properly turn on included loaders
when GModule isn't supported; don't use AC_CHECK_LIB
when libs are not installed yet
* autogen.sh: add support for AUTOGEN_SUBDIR_MODE
* Makefile.am (SUBDIRS): add m4macros subdir
* gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
dependencies also.
Wed Jun 6 20:01:38 2001 Jonathan Blandford <jrb@redhat.com>
* gtk/gtktreeview.c
(gtk_tree_view_real_expand_collapse_cursor_row): Handle key
bindings to expand and collapse rows.
(gtk_tree_view_real_select_cursor_parent): New key binding.
(gtk_tree_view_real_toggle_cursor_row): New key binding.
* gtk/gtkmarshal.list: new
marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
2001-06-06 Havoc Pennington <hp@redhat.com>
* gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
* gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
Down to move visually rather than logically, since it confuses
people. Add -/+ and Ctrl--/+ bindings for logical movement.
Wed Jun 6 10:34:42 2001 Owen Taylor <otaylor@redhat.com>
* gtk/gtktooltips.h: Include gtkwidget.h
(#55798, Karl Nelson)
* gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
a valid latin-1 character. (Marc Lehmann, #35467)
* gdk/x11/gdkwindow-x11.c: Fix minor typo in comment.
(Marc Lehmann, #35467)