]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-6
Include radio buttons when setting relief for button items.
[~andy/gtk] / ChangeLog.pre-2-6
1 1998-11-24  Andrew T. Veliath  <andrewtv@usa.net>
2
3         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
4         buttons when setting relief for button items.
5         (gtk_toolbar_set_button_relief): Same.
6
7 1998-11-23  Jeff Garzik  <jgarzik@pobox.com>
8
9         * gdk/Makefile.am, gtk/Makefile.am:
10         Removed DEFS "+=" mess that breaks recent automakes.
11         INCLUDES is the correct way to add to CFLAGS from Makefile.am.
12
13         * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
14         gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
15         gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
16         gtk/testthreads.c:
17         Include "config.h" instead of "../config.h".
18         Now that DEFS works again, automake will automatically pass us
19         the location of config.h in -I.
20
21 Mon Nov 23 22:10:09 1998  Owen Taylor  <otaylor@redhat.com>
22
23         * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
24         gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
25
26         Added layout widget for scrolling arbitrarily big areas.
27         Added plug/socket widgets for interprocess embedding.
28
29         These widgets still, at some point, need to be
30         made more pure in their use of GDK, as opposed
31         to raw X.
32
33         * gtk/testgtk.c: Added test for layout widget.
34         
35 1998-11-23  Jeff Garzik  <jgarzik@pobox.com>
36
37         * gtk/gtkclist.c: (gtk_clist_swap_rows):  Bugfix from
38         Brandon Long <blong@fiction.net> - do the right thing with first
39         and last, which are the absolute values of row arguments row1
40         and row2.
41
42 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
43
44         * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
45         default adjustment (from 0 to 100) instead. I'm not sure if this
46         is the correct level for the fix, but gtk_progress_bar_new()'s
47         original default behavior is restored.
48
49 1998-11-23  Martin Baulig  <martin@home-of-linux.org>
50
51         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
52         we can check for latest GTK features.
53
54 1998-11-23  Havoc Pennington  <hp@pobox.com>
55
56         * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
57         (gtk_toolbar_insert_element): When setting relief, also affect
58         toggle buttons.
59
60 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
61
62         * gtk/gtkobject.h: remove extraneous comma
63
64 Mon Nov 23 05:21:50 1998  Tim Janik  <timj@gtk.org>
65
66         * gtk/gtkcontainer.c:
67         (gtk_container_add_with_args): 
68         (gtk_container_addv): 
69         (gtk_container_add): removed assertements for constructed containers
70         again, since this essentially breaks the "child" arg.
71
72         * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
73         reference count, we don't need to reference toplevels that already have
74         destroy notifiers.
75
76         * gtk/gtkscrolledwindow.c: check for the composites existance in
77         _forall since we might not be already constructed.
78
79 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
80
81         * Released GTK+ 1.1.5
82
83         * configure.in: require GLib 1.1.5
84
85 Mon Nov 23 03:21:17 1998  Tim Janik  <timj@gtk.org>
86
87         * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
88         2 * hadj.
89         (gtk_text_finalize): only unref the current_font if we have
90         been realized.
91
92 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
93
94         * configure.in:
95           INSTALL:
96           NEWS:
97           README:
98           gtk+.spec:
99           docs/gtk-config.1: Version incremented to 1.1.5
100
101 Sun Nov 22 16:21:28 1998  Tim Janik  <timj@gtk.org>
102
103         * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
104         ::text_yalign, ::activity_mode.
105
106         * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
107         ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
108         ::activity_blocks.
109         (gtk_progress_bar_new):
110         (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
111         (gtk_progress_bar_construct): deprecated.
112
113         * gtk/gtkvscrollbar.c:
114         (gtk_vscrollbar_draw_step_back): 
115         (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
116         gtk_paint_arrow, to be consistent with hscrollbar.
117
118         * gtk/gtktext.c
119         added construct args ::hadjustment, ::vadjustment.
120         added args ::line_wrap, ::word_wrap.
121         (gtk_text_class_init): added scroll_adjustments signal.
122         (gtk_text_new): use gtk_widget_new.
123         (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
124         so we don't screw the reference counts and don't leave signals connected.
125         (gtk_text_destroy): disconnect adjustments signals.
126         (gtk_text_finalize): unref adjustments.
127
128         * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
129         added args ::indent, ::spacing, ::show_stub, ::reorderable,
130         ::use_drag_icons, ::line_style and ::expander_style.
131         (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
132         deprecated now.
133
134         * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
135         * gtk/gtkclist.c:
136         removed ::vadjustment and ::hadjustment args, introduced
137         ::scroll_adjustments signal.
138         added ::shadow_type, ::selection_mode and ::row_height args.
139         added n_columns construct arg.
140         (gtk_clist_construct): call gtk_object_constructed().
141         (gtk_clist_set_row_height): if height is passed as 0,
142         revert to automatic height calculation.
143         (gtk_clist_destroy): before unrefing the adjustments, disconnect our
144         signal handlers.
145
146 Fri Nov 21 22:34:58 1998  Tim Janik  <timj@gtk.org>
147
148         * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
149         like gtk_object_new.
150         (gtk_widget_destroy): assert that we only destroy constructed widgets.
151
152         * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
153         to identify args that may only be used for construction.
154         GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
155         time.
156         * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
157         at the end if the object is not fully constructed.
158         (gtk_object_newv): likewise.
159         (gtk_object_destroy): assert that we only destroy constructed objects.
160         (gtk_object_init): setup GTK_CONSTRUCTED from the
161         objects real klass.
162         (gtk_object_default_construct): new function to complete default
163         construction of an object by applying missing construtor args with
164         default values of 0, 0.0 or NULL.
165         (gtk_object_constructed): new function to mark an object as being
166         constructed (used from within constructors).
167
168         * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
169         so it is immediatedly available for the caller.
170
171         * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
172         the object initilizer (GtkObjectInitFunc takes a second arg now, the
173         real klass), and asure that object initializers may temporarily alter
174         the class pointer.
175
176 Fri Nov 20 08:00:30 1998  Tim Janik  <timj@gtk.org>
177
178         * gtk/testgtk.c: change all occourances of gtk_container_add (
179         scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
180         for widget!=(clist, ctree, text, viewport).
181
182         * gtk/gtkcombo.c:
183         (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
184         to add children to the scrolled window.
185
186         * gtk/gtkscrolledwindow.h:
187         * gtk/gtkscrolledwindow.c:
188         changed scrolled_window->viewport to scrolled_window->child, and use
189         gtk_widget_scroll_adjustements() to set the scroll adjustments for the
190         widget, we do not create an additional viewport anymore.
191         added ::hadjustment and ::vadjustment constructor args.
192         (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
193         (gtk_scrolled_window_set_hadjustment):
194         (gtk_scrolled_window_set_vadjustment): new functions that superceed
195         gtk_scrolled_window_construct.
196         (gtk_scrolled_window_construct): deprecated this function.
197         
198         * gtk/gtkhscrollbar.c:
199         * gtk/gtkvscrollbar.c:
200         * gtk/gtkhscale.c:
201         * gtk/gtkvscale.c:
202         support a constructor arg "::adjustment", and use gtk_widget_new() for
203         the widget creation.
204
205         * gtk/gtkrange.c: added ::update_policy arg.
206         (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
207         a default adjustment so this function can be used for derived widgets
208         that depend on the adjustment's existance.
209         (gtk_range_destroy): disconnect the adjustment signal, so we don't
210         get called after we got destroyed, we don't destroy the adjustment
211         in here, because it might have been provided from another widget.
212
213         * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
214         (gtk_viewport_destroy): same as gtk_range_destroy.
215
216         * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
217
218         * gtk/gtkwidget.h: 
219         * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
220         gboolean, indicating whether this widget supports activation.
221         added gtk_widget_scroll_adjustements() to set the scrolling
222         adjustments of a widget.
223
224 Wed Nov 19 01:22:42 1998  Tim Janik  <timj@gtk.org>
225
226         * gtk/gtkoptionmenu.c:
227         (gtk_option_menu_remove_contents):
228         (gtk_option_menu_update_contents): removed
229         gtk_container_[un]block_resize() pairs.
230
231         * gtk/gtknotebook.h: 
232         * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
233         be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
234         wrtie-only argument.
235
236         * *.c: made deprecated functions issue a message:
237         gtk_clist_set_border, gtk_container_block_resize,
238         gtk_container_unblock_resize, gtk_container_need_resize,
239         gtk_object_class_add_user_signal, gtk_spin_button_construct,
240         gtk_scrolled_window_construct.
241         removed non-functional functions:
242         gtk_container_disable_resize, gtk_container_enable_resize,
243         gtk_clist_set_policy.
244
245 Wed Nov 18 22:54:36 1998  Tim Janik  <timj@gtk.org>
246
247         * gtk/gtkbox.c (gtk_box_init): 
248         * gtk/gtkdrawingarea.c (gtk_drawing_area_init): 
249         * gtk/gtkeventbox.c (gtk_event_box_init): 
250         * gtk/gtkfixed.c (gtk_fixed_init): 
251         * gtk/gtkframe.c (gtk_frame_init): 
252         * gtk/gtkhandlebox.c (gtk_handle_box_init): 
253         * gtk/gtkpacker.c (gtk_packer_init): 
254         * gtk/gtkmisc.c (gtk_misc_init): 
255         * gtk/gtkpreview.c (gtk_preview_init): 
256         * gtk/gtkprogress.c (gtk_progress_init): 
257         * gtk/gtkprogressbar.c (gtk_progress_bar_init): 
258         * gtk/gtkseparator.c (gtk_separator_init): 
259         * gtk/gtktable.c (gtk_table_init): 
260         * gtk/gtkviewport.c (gtk_viewport_init): 
261         * gtk/gtkalignment.c (gtk_alignment_init): 
262         removed setting of the GTK_BASIC flag.
263
264         * gtk/gtkwidget.h:
265         * gtk/gtkwidget.c:
266         removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
267
268         * miscellaneous GtkType and macro fixups.
269
270 Sat Nov 21 18:53:13 1998  Owen Taylor  <otaylor@redhat.com>
271
272         * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin): 
273         Fixed so it at least works with window managers other
274         than Enlightenment, though it probably needs to be
275         removed altogether.
276
277 1998-11-21  Andrew T. Veliath  <andrewtv@usa.net>
278
279         * gtk/gtkhandlebox.[ch]: Add shadow_type and
280         gtk_handle_box_set_shadow_type function (plus a
281         GtkHandleBox::shadow arg) to allow configuration of shadow in the
282         bin window.
283
284 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
285
286         * gtk/gtkcalendar.c: Fix for marking days from 
287           Dan Reish <dreish@izzy.net>.
288
289 Thu Nov 19 00:15:27 1998  Lars Hamann  <lars@gtk.org>
290
291         * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
292         in row_list. (from Samuel Solon <ssolon@usa.net>)
293         
294         * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
295         (gtk_clist_get_column_widget): return column widget
296
297 Wed Nov 18 11:54:57 1998  Owen Taylor  <otaylor@redhat.com>
298
299         * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
300         that are sent to a toplevel but are not within the
301         toplevels bounds.
302
303         * gdk/gdkdnd.c gdk/gdk.h: Added support for a
304         XdndProxy atom which proxies the drag to another window.
305
306 1998-11-17  Federico Mena Quintero  <federico@nuclecu.unam.mx>
307
308         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
309         that it is not needed.
310
311 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
312         * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
313           function to correctly determine gdk window position relative to
314           its "root window" - contains check for an Enlightenment
315           virtual root window.
316         * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
317           gdk_window_get_deskrelative_origin to get the origin of dragged
318           handleboxes correctly. Now it works correctly with E.
319           
320 Tue Nov 17 1998  Tuomas Lukka <lukka@iki.fi>
321
322         * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
323           getting types even though we were not using real type names,
324           just the index.  This caused random crashes when more than 
325           256 types were defined.
326
327 1998-11-17  Martin Baulig  <martin@home-of-linux.org>
328
329         * gtk/genmarshal.pl: Put output files in the current directory
330         and not in the $(srcdir) since the VPATH is ignored for built
331         sources.
332
333 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
334
335         * gtk/genmarshal.pl
336         * gtk/Makefile.am: check for unchanged autogenerated files, so
337         we don't rebuild everything just for adding a new function
338
339 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
340
341         * gtk/gtkpixmap.h
342           gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
343           code thanks to GNOME stock by Eckehard Berns.  New function
344           gtk_pixmap_set_build_insensitive to provide ability to turn 
345           this off.
346
347 Tue Nov 17 00:06:29 1998  Lars Hamann  <lars@gtk.org>
348
349         * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
350         new guints : tab_hborder, tab_vborder; marked tab_border deprecated
351         (struct _GtkNotebookPage): new flags : expand, fill, pack
352
353         * gtk/gtknotebook.h/c
354         (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
355         tabs
356         (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
357         (gtk_notebook_set_tab_hborder): new function. set tab_hborder
358         (gtk_notebook_set_tab_vborder): new function. set tab_vborder
359         (gtk_notebook_query_tab_label): new function. get tab_label widget.
360         (gtk_notebook_set_tab_label): new function. set tab_label widget.
361         (gtk_notebook_set_tab_label_text): new function. set tab_label text.
362         (gtk_notebook_query_menu_label): new function. get tab_label widget.
363         (gtk_notebook_set_menu_label): new function. set tab_label widget.
364         (gtk_notebook_set_menu_label_text): new function. set tab_label text.
365         (gtk_notebook_set_tab_label_packing): new function. set tab_label
366         fill, expand, fill_type
367         (gtk_notebook_query_tab_label_packing): new function. get tab_label
368         fill, expand, fill_type
369
370         (gtk_notebook_real_page_position): return logic page number
371         (gtk_notebook_search_page) search next/prev logic page
372         (gtk_notebook_update_labels): set logic page number.
373         (gtk_notebook_page_compare): renamed gtk_notebook_find_page
374         (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
375         CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
376         (gtk_notebook_button_press) (gtk_notebook_key_press)
377         (gtk_notebook_focus) (gtk_notebook_pages_allocate)
378         (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
379         use gtk_notebook_search_page
380         (gtk_notebook_page_allocate): fixed allocation bug
381         (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
382         (gtk_notebook_init): unset GTK_NO_WINDOW flag
383         (gtk_notebook_size_request): check whether page->child is visible.
384         changes due to tab h/vborder, homogeneous tabs
385         (gtk_notebook_paint): don't draw invisible tabs
386         (gtk_notebook_switch_page): calculate page_num if it's less than 0
387         (gtk_notebook_append_*) (gtk_notebook_prepend_*)
388         (gtk_notebook_insert_page): removed sanity checks
389
390         * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
391
392 Mon Nov 16 15:10:33 1998  Owen Taylor  <otaylor@redhat.com>
393
394         * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
395         (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
396
397         * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was 
398         broken. (GtkWidget's default unmap handler should work fine).
399         Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
400
401 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
402
403         * gtk/gtkmenubar.[ch]: added shadow_type setting and
404         gtk_menu_bar_set_shadow_type function to allow shadow
405         configurability for menubars
406
407         * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
408         guint
409
410 Mon Nov 16 00:17:53 1998  Tim Janik  <timj@gtk.org>
411
412         * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
413         class creation and parent class' object initializer.
414
415 1998-11-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
416
417         * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
418         have assigned it to the window -- there is no point in keeping it around.
419         (gtk_paned_unrealize): No need to destroy the cursor here.
420
421         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
422         it is not needed.
423
424 Fri Nov 13 11:22:38 1998  Owen Taylor  <otaylor@redhat.com>
425
426         * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
427         (gtk-blizzard-981005-0. 
428          Christopher Blizzard <blizzard@applied-theory.com)
429
430         * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
431         gdk_pixmap_foreign_new to gdkx.h.
432
433 Fri Nov 13 16:06:48 1998  Owen Taylor  <otaylor@redhat.com>
434
435         * gtk/Makefile.am: Added rules to generate an empty
436         GTK+ theme called "Default" upon installation.
437         
438         * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
439         of fonts and fontsets. 
440         (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
441
442         * gtk/gtkmain.c: Change test to detect glibc's
443         utf8 based mb* functions to be more specific.
444
445         * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation 
446         cleanups.
447
448 Fri Nov 13 16:43:36 1998  Lars Hamann  <lars@gtk.org>
449
450         * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
451         show event_window
452         (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
453         event_window if draw_indicator is set
454         (gtk_toggle_button_set_mode):
455
456 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
457
458         * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
459         ensure proper type (SunPro cc complains)
460
461         * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
462
463         * gtk/gtktogglebutton.c: use our own draw method so we get proper
464         redraws on active state
465
466 Thu Nov 12 00:26:13 1998  Lars Hamann  <lars@gtk.org>
467
468         * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
469         defines.
470
471         * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
472         GTP_POS_RIGHT
473
474 Wed Nov 11 19:54:58 1998  Lars Hamann  <lars@gtk.org>
475
476         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
477         (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
478         added ARG_WINDOW_PLACEMENT
479
480         * gtk/gtkclist.c (size_allocate_columns): resize column if column
481         button > column width and auto_resize is set
482         (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
483         consider column button width of auto resized columns
484         (gtk_clist_parent_set): removed 
485
486         * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
487         (auto_resize_columns): auto_resize all columns
488         (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
489         (column_auto_resize): respect column button width of auto resized
490         columns
491
492 1998-11-10  Martin Baulig  <baulig@merkur.uni-trier.de>
493
494         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
495         we can check for latest GTK features.
496
497 Mon Nov  9 00:39:20 1998  Lars Hamann  <lars@gtk.org>
498
499         * gtk/gtkenums.h : new enum GtkCornerType 
500         * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
501         window_placement.
502         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement): 
503         new method to set window_placement.
504         (gtk_scrolled_window_viewport_allocate)
505         (gtk_scrolled_window_size_allocate): few changes due to
506         window_placement.
507         * gtk/testgtk.c (remove_selection): fixed while loop.
508
509 Sat Nov  7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
510
511         * gtk/gtkclist.c: check if column[i].button is valid before calling
512         gtk_widget_intersect on it in gtk_clist_draw
513
514         * gtk/gtkdnd.c: removed unused variable empty_bits
515
516         * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
517
518         * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
519         a boolean (thanks to Elrond for noticing this)
520
521 1998-11-07  Jay Cox  <jaycox@earthlink.net>
522
523         * gtk/gtkwindow.c: forward declaration for gtk_window_paint
524         * gdk/gdkxid.c: declare xid_ht static
525         * examples/*/Makefile: get the link ordering right.
526
527 Sat Nov  7 16:31:56 1998  Stefan Jeske  <stefan@gtk.org>
528
529         * gtk/gtkclist.c (gtk_clist_realize): Set background of
530         title button window to GTK_STATE_NORMAL instead of
531         GTK_STATE_SELECTED to avoid ugly flicker.
532
533 Fri Nov  6 23:29:40 1998  Lars Hamann  <lars@gtk.org>
534
535         * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
536         if adjustments are NULL and list size has changed
537         (gtk_clist_size_request): return real list requsition,
538         if adjustments are NULL.
539         (size_allocate_columns): use button->requisition.with, if column
540         width is not set.
541         (list_requisition_width): new function. return full list width.
542         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
543         auto create adjustments.
544         (gtk_clist_motion) (move_vertical) (move_horizontal):
545         check adjustment != NULL.
546
547 Thu Nov  5 12:06:16 1998  Owen Taylor  <otaylor@redhat.com>
548
549         * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
550         a clear/redraw, not just a redraw, so the focus
551         gets undrawn properly.
552
553         * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize): 
554         Chain to gtk_widget_unrealize() instead of duplicating
555         code.
556
557 Wed Nov  4 14:34:51 1998  Owen Taylor  <otaylor@redhat.com>
558
559         * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
560         last vestiges of old DND.
561
562 Tue Nov  3 12:27:52 1998  Owen Taylor  <otaylor@redhat.com>
563
564         * gtk/gtkentry.c: Restored inner border to entries,
565         erase cursors to background image.
566
567 Fri Oct 30 12:09:21 1998  Owen Taylor  <otaylor@redhat.com>
568
569         * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
570         it was identical to paint_flat_box().
571
572         * gtk/gtkstyle.c: Coding style fixups.
573
574         * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
575         test.
576
577         * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c: 
578         Change 'side' for paint_[box/shadow]_gap and paint_extension
579         to be GtkPositionType instead of a random int.
580
581         * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use 
582         "frame" as detail - an aspectframe should draw identical
583         to a frame.
584
585 Tue Oct 27 09:58:11 1998  Owen Taylor  <otaylor@redhat.com>
586
587         * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
588         from combine_child_shapes().
589
590         * gdk/gdkwindow.c: Merge propagate_shapes() and
591         propagate_combine_shapes() to remove code duplication.
592
593 Thu Nov  5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
594
595         * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
596         gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
597         So allocate some mem if it's not already done.
598
599         * clist scrollbar merges from HEAD
600
601 Tue Nov  3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
602
603         * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
604
605         * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
606         of 0x80000000, so we stay within the bounds of a postive signed
607         int (it broke some compilers)
608
609         * gtk/gtkmenushell.c
610         * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
611         when some of the menuitems are hidden
612
613         * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
614         care of that
615
616         * gtk/gtkwidget.c: add a dummy continue after the line label
617         next_rect, since some compilers don't like label: }
618
619 Sun Nov  1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
620
621         * Okay, so we need the X11R6 keysyms so programs don't have to
622         worry about them. They don't conflict anyway. Reverted the #ifdef
623         changes to gtk/*.c
624
625         * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
626         special rule for them (X-derived-headers)
627
628 Sun Nov  1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
629
630         * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
631         and gdkkeysyms.h into sed scripts, since the awk scripts weren't
632         portable, and we really shouldn't be using awk anyway.
633
634         * makecursors.awk
635         * makekeysyms.awk: bye bye
636
637         * gtk/gtkaccelgroup.c
638         * gtk/gtkclist.c
639         * gtk/gtknotebook.c
640         * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
641
642 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
643
644         * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
645         and gdkkeysyms.h. Remove those files from CVS.
646
647 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
648
649         * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
650         of the USE_XIM #ifdef
651
652         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
653         even with --include-deps. Slightly different from timj's fix, to avoid
654         circular dependency with gtkmarshal.c
655
656         * autogen.sh
657         * gtk/gtkclist.[ch]
658         * gtk/gtkctree.c
659         * gtk/gtkfontsel.[ch]
660         * gtk/gtklist.c
661         * gtk/gtklistitem.c
662         * gtk/gtkobject.[ch]
663         * gtk/testgtk.c: merges from HEAD
664
665         * gtk/gtkmenubar.c
666         * gtk/gtkradiomenuitem.c
667         * gtk/gtktreeitem.c: cleanups
668
669 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
670
671         * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
672
673 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
674
675         * configure.in: AIX has libpthreads, to make sure you can have
676         more than one thread. Also add -D_THREAD_SAFE, and reorder
677         configure.in so CFLAGS doesn't get clobbered when we actually
678         want to modify it
679
680         * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
681         in gdk_image_get
682
683         * gtk/testdnd.c: removed unused variable "buf"
684
685 Mon Oct 26 16:46:15 1998  Owen Taylor  <otaylor@redhat.com>
686
687         * gtk/gtkcontainer.c (gtk_container_unregister_toplevel): 
688         remove_link(), not remove()
689
690 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
691
692         * gdk/gdkrgb.c: use glib endian stuff
693
694         * configure.in: don't need to check for endianness anymore
695
696         * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
697
698 Wed Oct 21 17:44:27 1998  Owen Taylor  <otaylor@redhat.com>
699
700         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
701         all toplevel widgets, not toplevel windows. (I.e.,
702         plugs should be reset)
703
704         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
705         _do_ need to notify the other toplevels - by the time
706         the get the client messages, the RC file dates will
707         have been updated.
708
709         * gtk/gtkcontainer.h: Added a function call to list
710         every toplevel widget.
711
712         * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse): 
713         Don't send client messages to _every_ window on display!
714         
715 Tue Oct 20 16:21:04 1998  Owen Taylor  <otaylor@redhat.com>
716
717         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags 
718         when dragging across widgets, only in drags
719         starting in widget.
720
721 Tue Oct 20 15:59:49 1998  Owen Taylor  <otaylor@redhat.com>
722
723         * gtk/gtkdnd.c (gtk_drag_source_info_destroy): 
724         Emit "drag_end" signal at end of drag.
725
726 Tue Oct 20 13:07:54 1998  Owen Taylor  <otaylor@redhat.com>
727
728         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
729         for "gtk-embedded" data currently set by 
730         GtkSocket, and use that to forward client message
731         on to embedded windows. Only reset our own toplevel -
732         the others will handle themselves. (Now that
733         GtkMenus live in GtkWindows)
734
735 Mon Oct 19 16:40:40 1998  Owen Taylor  <otaylor@redhat.com>
736
737         * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
738         client window finding code so that it works with
739         WM's other than fvwm.
740  
741 Sun Oct 18 22:48:27 1998  Owen Taylor  <otaylor@redhat.com>
742
743         * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
744         the "GtkDrawWindow" class, which is a descendent
745         of the Window class which leaves its background alone.
746         Essentially, a toplevel drawing area, though it does
747         allow adding a child.
748
749 Sat Oct 17 00:40:51 1998  Owen Taylor  <otaylor@redhat.com>
750
751         * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
752         merging RC styles. Report new share/themes path for
753         themes directory. Deref theme engines when appropriate.
754
755         * gtk/gtkclist.c: Set all backgrounds in _style_set().
756         Make sure that pixel for xor_gc is never 0.
757
758         * gtk/gtkctree.c: Choose colors for plus/minus more
759         carefully, in a hopefully style-independent fashion.
760         (Still needs a bit more work)
761
762         * gtk/gtkwidget.c: Don't send expose events to widgets
763         which are about to be resized and redrawn. (Needs a
764         bit more thought.)
765
766         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
767         drawing on tabs for newly allocated, un-sized
768         pages - we'll get the size wrong.
769
770 Thu Oct  1 17:38:07 1998  Owen Taylor  <otaylor@redhat.com>
771
772         * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
773         up stupidities in last commit.
774
775 Thu Oct  1 14:25:43 1998  Owen Taylor  <otaylor@redhat.com>
776
777         * gtk/gtkwidget.c: When handling queued resizes, account
778         for handleboxes, where the widget heirarchy is different
779         than the window heirarchy by just queueing a resize on
780         the entire handlebox if the detached child is changed.
781
782         - Remove widgets from the redraw queue when reparenting,
783         even if not unrealizing. We queue a resize/redraw in
784         any case.
785
786 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
787         * gtk/gtkstyle.c: added check to see if the widget has been shaped
788         byt the app via gtk_widget_shape_combine_mask and if it has does
789         not reset the shape on theme change.
790         
791 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
792
793         * gtk/gtkfilesel.c: Keep a list of directories in which we never
794         want to stat the entries (like /afs), and assume everything in
795         those directories is a subdirectory.
796
797         - When following a path, try to open components even when
798         we don't find them in their parent's directory to
799         support automounters.
800
801 Fri Sep 11 15:36:33 1998  Owen Taylor  <otaylor@redhat.com>
802
803         * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
804         now at least compiles again.
805
806         * gdk/gdk.c (gdk_event_translate): Don't pass events
807         on destroyed widgets to the gdk_input layer.
808
809 Thu Sep  3 19:45:34 1998  Owen Taylor  <otaylor@redhat.com>
810
811         * gtk/gtkthemes.c: Use g_module instead of dlopen()
812
813 Thu Sep  3 19:30:11 1998  Owen Taylor  <otaylor@redhat.com>
814
815         * gtk/gtktooltips.c (gtk_tooltips_expose): Check
816         if we've changed widgets since the expose event
817         was queued.
818
819 Mon Aug 31 15:33:13 1998  Owen Taylor  <otaylor@redhat.com>
820
821         * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
822         to restore approximate bin compatibility with the
823         non-themes branch. (This does break bin compat
824         within the themes branch.)
825
826 Sun Aug 30 16:48:27 1998  Owen Taylor  <otaylor@gtk.org>
827
828         * gtk/gtklabel.c (gtk_label_set): Eliminate a 
829         gdk_window_clear_area() that snuck in with the
830         menu underlines merge.
831
832 Mon Aug 24 23:37:26 1998  Owen Taylor  <otaylor@redhat.com>
833
834         * gtk/gtktext.c: Fixed some remaining background drawing,
835           merges from main branch, cleanups.
836
837 Mon Aug 24 10:55:51 1998  Owen Taylor  <otaylor@redhat.com>
838
839         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
840           dereference NULL focus tab.
841
842         * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
843           functions since we need to both show/hide and 
844           queue a redraw. (There's some duplication of drawing here, 
845           we probably should only be queuing a redraw on the
846           "value" portion of the scale.)
847
848 Fri Aug 21 19:02:30 1998  Owen Taylor  <otaylor@redhat.com>
849
850         * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
851           into the theme-drawing framework. We do this by making them,
852           like check/radio-buttons, no-window widgets with subwindows. We
853           then move the value by calling gtk_widget_queue_clear() and only
854           redraw the value in our draw() / expose() handler.  A virtual
855           function clear_background is added which queues a clear on the
856           "background" portion of the widget.
857
858 Fri Aug 21 13:04:27 1998  Owen Taylor  <otaylor@redhat.com>
859
860         * gtk/gtktext.c (mark_bg_gc): Make background colors work
861           again. (We can't always paint the background with a
862           paint() function - only do that for selected text)
863
864 Mon Aug 17 20:31:01 1998  Owen Taylor  <otaylor@redhat.com>
865
866         * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
867           gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
868
869         * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
870           the themes can't be built as part of the same build since
871           they depend on gdk_imlib.
872
873 Fri Aug 14 12:44:30 1998  Owen Taylor  <otaylor@redhat.com>
874
875         * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
876           from gtkthemes.c.
877                 
878         * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
879           gtk/
880
881           - Upgrade to libtool-1.2b + patch to add shared library dependencies
882             for Linux. (Needs to be extended to other platforms where they
883             are safe)
884
885          - Check for -ldl so this branch should build on all platforms, though
886            themes will work on all platforms they could work on.
887
888          - Use -version and -release simultaneously: sonames stay as they are
889            in the current scheme, but -lgtk-1.1 changes to -lgtk.
890
891          - Added in extra -l flags to library LDFLAGS so we get shared library
892            dependencies against X libs and -ldl. (But not libgtk against 
893            libgdk or libglib yet, since dependencies against uninstalled
894            libraries aren't portable)
895
896 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
897         * gtkrc.c - added api calls to find module and theme paths from gtk.
898           nuked gtk_install_prefix global.
899         
900 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
901         * fixed gtk_install_prefix global.
902           
903 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
904         * added gtk_install_prefix global const variabel to find where gtk is
905           installed.
906           
907 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
908         * added ~/.gtk/lib/themes/engines/ to the default searchpath for
909           gtk theme engines
910         
911 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
912         * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
913
914 Mon Aug 10 23:03:55 1998  The Rasterman <raster@redhat.com>
915         * Fixed minor problem in gtkhandlebox.c with drawing, and some
916           notebook stuff. Also pixmap theme is now "clean" again.
917           
918 Mon Aug 10 23:03:55 1998  Owen Taylor  <otaylor@redhat.com>
919         * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up 
920           queued area resizing once more.
921
922 Mon Aug 10 23:09:30 EDT 1998
923         * Added a few drawing fixes for notebook and other widgets. finished
924           pixmap theme up to the level that can be supported so far. (need to
925           add path discovery 9ie where is the rc fiel from - add to pixmap 
926           path so we can get theimages from there too). then we can package 
927           themes. After that need to add to theme seartch path stuff in users 
928           home dir.
929           
930 Thu Aug  6 16:49:25 1998  Owen Taylor  <otaylor@redhat.com>
931
932         * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
933           drawing area, draw in an expose handler.
934
935         * gtk/gtknotebook.c (gtk_notebook_expose): Check for
936           empty current page.
937
938 Wed Aug  5 16:13:15 1998  Owen Taylor  <otaylor@redhat.com>
939
940         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
941           creation of GC's so that they will be set before
942           they are used for map events (why are they used there?)
943
944         * gtk/gtkwidget.c: Fixed mistake that caused widgets to
945           be queued in multiple times in the queue.
946
947 Wed Aug  5 14:23:52 1998  Owen Taylor  <otaylor@redhat.com>
948
949         * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
950           clip rects (or do anything) for shadow_none.
951
952 Wed Aug  5 13:14:57 1998  Owen Taylor  <otaylor@redhat.com>
953
954         * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
955           Yes, it was needed. draw() and expose() are _not_
956           identical.
957
958 Sat Aug  1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
959         * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
960
961 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
962         * YES YES YES YES YES clist borders work again! YES! YES YES! gimme 
963           more baby oooh yeah more more MORE YES YES.
964
965 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
966         * hopefully fixed problem wiht togglebuttons acting like
967           radiobuttons in gtktogglebutton.c
968
969 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
970         * fixed another drawing buglet in the frame drawing code (actually
971           in the clearing code but anyway in gtkstyle.c)
972
973 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
974         * Fixed warning from colorsel widget...
975
976 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
977         * Fixed defautl drawing code to no longer clobber the original style
978           pixmap bgs as it did and added a helper funciton og gtkstyle.c to
979           help with this.
980
981 Thu Jul 30 18:09:21 1998  Owen Taylor  <otaylor@redhat.com>
982
983         * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
984
985         * gtk/gtktooltips.c: Pass a widget (the window) to the
986           drawing function instead of the GtkTooltips.
987
988 Thu Jul 30 17:27:10 1998  Owen Taylor  <otaylor@redhat.com>
989
990         * gdk/gdkwindow.c: Abstract out checking for shape
991           extension into a function.
992
993         * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
994           Remove extra callls to gtk_window_draw().
995
996 Thu Jul 30 11:18:43 1998  Owen Taylor  <otaylor@redhat.com>
997
998         * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
999
1000         * themes/th_main.c: Moved messages around so they are
1001           printed before destroying strings.
1002
1003 Wed Jul 29 16:56:07 1998  Owen Taylor  <otaylor@redhat.com>
1004
1005         * gdk/gdk.c: Fairly simple implementation of expose compression.
1006           (No GraphicsExpose compression yet, always compress
1007           with the equivalent of XtCompressMultiple - no compression
1008           of Expose events across non-Expose events)
1009         
1010         * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
1011           Find rectangle bounding two rectangles.
1012
1013         * gtk/gtkstyle.c: Set clip rects for a few extra GC's
1014           in gdk_default_draw_shadow()
1015         
1016 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
1017         * Fixed drawing functions to handle switching themes on the fly 
1018           gracefully and look decent.
1019           
1020 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
1021         * Added all the theme drawing code to all widgets, fixed up minor
1022           nigglies in some widgets when it comes to themes, seem to be
1023           running into some funky behavior with clipping rects in GC's. Too
1024           many files to list here. (all files that now use gtk_paint_* are
1025           affected).
1026
1027 Tue Jul 28 22:49:16 1998  Owen Taylor  <otaylor@redhat.com>
1028
1029         * themes/th_main.c themes/th_draw.c gtk/testgtkrc: 
1030           Set up the demo theme so it is loaded from the RC file.
1031
1032         * themes/th_draw.c: Alleviate the hardcoded paths a wee
1033           bit. (use $HOME/themes/)
1034
1035         * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in 
1036           the RC file via dlopen()
1037
1038 Tue Jul 28 20:30:56 1998  Owen Taylor  <otaylor@redhat.com>
1039
1040         Internal handling of styles and RC styles pretty much
1041         completely reworked for Theme work.
1042
1043         * gtkthemes.[ch]: 
1044          - Added routines for virtualization of RcStyle and Style handling.
1045          - Temporary "sample" inline theme-engine. (Does nothing
1046            but print out a few messages.
1047         
1048         * gtkrc.[ch]
1049          - Made GtkRcStyle public, added flags to tell if particular
1050            colors have been set.
1051          - RC Styles are "transparent", and the final style for
1052            a widget is the composition of all matching styles
1053          - Added pointer to GtkThemeEngine, and gpointer engine_data
1054            to RC style and style.
1055          - Parse "engine" keyword, load the appropriate theme engine
1056            and call the engine's parser.
1057         
1058         *  gtkstyle.[ch]
1059          - Keep a GtkRcStyle * in styles created from Rc Styles.
1060          - Load up images from RC file at style attachment time.
1061          - Call ->engine->foo() at appropriate times.
1062          - Don't use a GCache. All incarnations for a style are
1063            just linked together in a list, depend on the RC style 
1064            code to find the existing copy.
1065
1066 Tue Jul 28 14:41:54 1998  Owen Taylor  <otaylor@redhat.com>
1067
1068         * gtk/gtkwidget.[ch]: Added the concept of queued redraws
1069           of partial areas. This can be done either relative
1070           to the existing windows (gtk_widget_queue_clear[_area]())
1071           or relative to the future allocation of the widget
1072           (gtk_widget_queue_draw[_area]). 
1073
1074           The initial implementation is pretty braindead, but
1075           can be improved.
1076
1077         * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
1078           in favor of gtk_widget_queue_clear().
1079         
1080         * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
1081           flags in favor of gtk_widget_queue_clear()
1082         
1083 Tue Aug  4 19:12:14 1998  Owen Taylor  <otaylor@redhat.com>
1084
1085         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
1086           handling of partially clipped areas.
1087
1088 Thu Nov  5 18:52:35 1998  Lars Hamann  <lars@gtk.org>
1089
1090         * gtk/gtkclist.h (struct _GtkCListClass)
1091         * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
1092
1093 Thu Nov  5 16:00:32 1998  Lars Hamann  <lars@gtk.org>
1094
1095         * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
1096         vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
1097
1098         * gtk/gtkclist.c (gtk_clist_class_init): added new args types
1099         "hadjustment" & "vadjustment"
1100          (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
1101         set/get_arg functions
1102         (gtk_clist_construct): don't create/adjust scrollbars.
1103         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
1104         to set h/vadjustments
1105         (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
1106         to query h/vadjustments
1107         (create_scrollbars): removed.
1108         (create_adjustments): replacement for create_scrollbars
1109         (gtk_clist_new): call gtk_clist_new_with_titles
1110         (gtk_clist_new_with_titles): don't warn on titles == NULL
1111         (move_horizontal): use CLAMP instead
1112         (gtk_clist_set_policy): deprecated method.
1113         use gtk_scrolled_window_set_policy instead.
1114         (vadjustment_value_changed): use clist->vadj.
1115         (adjust_scrollbars): renamed to adjust_adjustments
1116         (adjust_adjustments): former adjust_scrollbars
1117         (gtk_clist_destroy): unref adjustments
1118         (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
1119         (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
1120         (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
1121         (gtk_clist_thaw) (real_insert_row) (real_remove_row)
1122         (gtk_clist_set_row_height) (real_resize_column):
1123         call adjust_adjustments
1124         (gtk_clist_moveto): return if clist has no adjustments yet.
1125         (gtk_clist_parent_set): new GtkWidget::parent_set function.
1126         Autogenerate h/vadjustments if needed.  
1127         (move_horizontal) (move_vertical): some cleanups
1128
1129         * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
1130         call only gtk_viewport_set_h/vadjustment and let these functions
1131         do the work.
1132         (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
1133         generate a new adjustment if needed
1134
1135         * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
1136         use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
1137         
1138         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
1139         queue_resize if visibility of scrollbars changes
1140         (gtk_scrolled_window_remove): only call container_remove with
1141         scrolled_window->viewport automatically if viewport was autogenerated
1142         (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
1143         auto create a viewport only if widget does not take h/vadjustments.
1144         (gtk_scrolled_window_construct): don't generate a viewport
1145         automatically.
1146         (gtk_scrolled_window_forall): call callback with viewport in any case
1147         (gtk_scrolled_window_set_arg): call gtk_container_add in case of
1148         ARG_VIEWPORT
1149         (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
1150         (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
1151         viewport != NULL
1152
1153         * gtk/testgtk.c 
1154         (create_ctree) (export_ctree) (create_clist): use a scrolled_window
1155         in conjunction with clists/ctrees
1156
1157         * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
1158         in conjunction with clists
1159
1160         * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
1161         in conjunction with clists
1162
1163 Wed Nov  4 21:52:57 1998  Lars Hamann  <lars@gtk.org>
1164
1165         * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
1166         (gtk_ctree_remove_node): select focus_row if needed
1167         (cell_size_request): only get pixmap size if pixmap != NULL
1168
1169 Wed Nov  4 04:30:37 1998  Tim Janik  <timj@gtk.org>
1170
1171         * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
1172         GTK_IS_WIDGET (widget):
1173
1174 Wed Nov  4 02:02:07 1998  Lars Hamann  <lars@gtk.org>
1175
1176         * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
1177         focus_row after a remove_row call.
1178
1179 Sun Nov  1 21:00:06 GMT 1998  Austin Donnelly  <austin@greenend.org.uk>
1180
1181         * gtk/gtkoptionmenu.c
1182         * gtk/gtkmenushell.c: make option menus work when some of the
1183         menuitems are hidden - previously, option menu would popup too
1184         high.
1185
1186 1998-10-31  Raja R Harinath  <harinath@cs.umn.edu>
1187
1188         * gtk/gtkfeatures.h.in: Remove `#pragma }'.
1189
1190         * gdk/gdki18n.h: Update to use new `glib' widechar defines.
1191
1192         * configure.in (CFLAGS): Don't use test -z "echo .. | grep".  Use
1193         case instead.
1194         (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
1195         (GDK_WLIBS): New variable.  Lists extra libraries needed to use
1196         widechar functions.
1197         * gtk-config.in (--libs): List $GDK_WLIBS, too.
1198
1199 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1200
1201         * Released GTK+ 1.1.3
1202         
1203         * INSTALL:
1204         * NEWS:
1205         * README:
1206         * gtk+.spec:
1207         * docs/gtk-config.1: updated for v1.1.3
1208
1209         * Makefile.am
1210         * sanity_check
1211         * docs/Makefile.am: Includes new 'make release' as well as
1212           'make sanity'.  Also handles html and text creation from html,
1213           and puts them into the distribution
1214
1215         * docs/Makefile.sgml: removed, similar functionality is now in 
1216           the Makefile.am file
1217
1218         * docs/.cvsignore: ignore html and text directories
1219         * docs/glib.texi: removed (now in glib dist)
1220
1221 Fri Oct 30 20:02:36 1998  Lars Hamann  <lars@gtk.org>
1222
1223         * gtk/gtklist.c (gtk_list_remove_items_internal): 
1224         free undo_un/selection, unselect list_item before disconnect
1225         signal functions
1226         (gtk_list_destroy): removed. gtk_list_shutdown clears the list
1227         already
1228         (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
1229         (gtk_list_signal_item_toggle)   (gtk_list_signal_scroll_horizontal)
1230         (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
1231         (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
1232         (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
1233         (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
1234         (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
1235         new functions. These functions are signal connected to inserted
1236         list_items, to handle key bindings and GtkItem::de/select/toggle
1237         signals.
1238
1239         * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
1240         gtk_object_class_add_signals call.
1241         (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
1242         (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
1243         (gtk_list_item_start_selection) (gtk_list_item_end_selection)
1244         (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
1245         (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
1246         removed. These functions are handled via connected
1247         gtk_list_signal_* functions now
1248
1249 Fri Oct 30 05:24:43 1998  Tim Janik  <timj@gtk.org>
1250
1251         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1252         even with --include-deps:
1253         $(libgtk_la_SOURCES): $(BUILT_SOURCES)
1254
1255 Fri Oct 30 01:56:08 1998  Tim Janik  <timj@gtk.org>
1256
1257         * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
1258         gtk_object_data_set_destroy to fit the gtkobject.h API.
1259
1260         * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
1261         * gtk/gtkfontsel.h:
1262         * gtk/gtkfontsel.c:
1263         Added support for an extra 'base' filter which an application can
1264         set to restrict the fonts available to the user (e.g. a terminal
1265         program only wants the user to be able to select fixed-width fonts).
1266         The type of font (bitmap/scalable/scaled bitmap) is now
1267         also a part of the filter, so that an application can
1268         request that only scalable fonts are shown.
1269         There are new functions to set the base & user filters.
1270         I've also stopped the up/down key press signals getting
1271         to the clists since the font selection widget handles
1272         them itself. It acted a bit strangely before.
1273
1274 Sun Oct 25 20:27:02 1998  Tim Janik  <timj@gtk.org>
1275
1276         * gtk/gtkmain.c (gtk_init): support an environment variable
1277         GTK_MODULES= which takes a colon sperated list of module names
1278         automatically loaded at gtk_init() startup.
1279
1280 Sun Oct 25 08:04:33 1998  Tim Janik  <timj@gtk.org>
1281
1282         * gtk/gtkwidget.c: added more g_return_if_fail() statements.
1283
1284 Thu Oct 22 22:40:35 1998  Lars Hamann  <lars@gtk.org>
1285
1286         * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
1287         is sufficient
1288
1289 Thu Oct 22 16:22:55 1998  Lars Hamann  <lars@gtk.org>
1290
1291         * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
1292         columns
1293
1294 Thu Oct 22 02:29:53 1998  Tim Janik  <timj@gtk.org>
1295
1296         * gtk/gtkfilesel.h: GtkType and macro fixups
1297         * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
1298         for the file selection widget to try a completion on (set the
1299         initial filter).
1300
1301 Wed Oct 14 14:34:04 1998  Tim Janik  <timj@gtk.org>
1302
1303         * gtk/gtkmain.c: implement idle functions via GHook. this gives a
1304         slight speed improvement and lessens code duplication.
1305
1306 Tue Oct 20 14:53:28 1998  Owen Taylor  <otaylor@redhat.com>
1307
1308         * gtk/gtkdnd.c: Always send "drag_leave" to dests
1309         without GTK_DEST_DEFAULT_MOTION. 
1310
1311 Tue Oct 20 11:55:24 1998  Owen Taylor  <otaylor@redhat.com>
1312
1313         * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
1314         on destroyed windows so we clear the XID table properly.
1315         Finish up restructure of return value handling that
1316         was half-done before.
1317
1318 Tue Oct 20 12:57:10 1998  Owen Taylor  <otaylor@redhat.com>
1319
1320         * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
1321         the window tree more comprehensively, so that we find
1322         client windows hidden under non-toplevels.
1323
1324 Tue Oct 20 12:43:04 1998  Owen Taylor  <otaylor@redhat.com>
1325
1326         * gtk/gtkselection.c (gtk_selection_data_set): 
1327         Maintain the null-termintation guarantee, even when 
1328         data = NULL, length = 0. (Warn on data = NULL, 
1329         length > 0)
1330
1331 Mon Oct 19 16:41:44 1998  Owen Taylor  <otaylor@redhat.com>
1332
1333         * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
1334         into function prototype for drag_data_received. 
1335
1336 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
1337
1338         * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
1339
1340 Mon Oct 19 23:44:41 1998  Lars Hamann  <lars@gtk.org>
1341
1342         * gtk/gtkclist.c: rearranged some functions
1343         (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
1344         flag of column
1345         (gtk_clist_set_column_resizeable): if resizeable disable auto_resize 
1346         (gtk_clist_set_border): deprecated function, use
1347         gtk_clist_set_shadow_type instead.
1348         (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
1349         (adjust_scrollbars): some cleanups
1350         (select_row) (unselect_row): removed. replaced by equivalent
1351         gtk_signal_emit calls
1352         (add_style_data): removed, use gtk_clist_style_set instead
1353         (gtk_clist_style_set): fill in size data, after style was set. 
1354         (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
1355         (gtk_clist_set_cell_style): auto_resize columns if needed
1356         (column_auto_resize): resize column if needed for auto_resize 
1357         (real_clear): disable auto_resize while list destroy
1358         (resize_column): removed
1359
1360         * gtk/gtkctree.c : (gtk_ctree_remove_node)
1361         (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
1362         (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
1363         (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
1364         (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
1365         (real_tree_collapse) (real_tree_expand) (column_auto_resize):
1366         auto_resize columns if needed
1367         (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
1368         (real_clear): disable auto_resize while processing the tree
1369
1370         * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
1371         for one column
1372
1373 Mon Oct 19 08:31:36 1998  Owen Taylor  <otaylor@redhat.com>
1374
1375         * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
1376         typo - look for right atom on transfer failures.
1377
1378 Sun Oct 18 20:52:22 1998  Owen Taylor  <otaylor@gtk.org>
1379
1380         * gtk/gtkwidget.c gtkmarshal.list: Change signal 
1381         for drag_data_get to match the use that was being
1382         made of it everywhere else...
1383
1384 Sun Oct 18 18:16:39 1998  Owen Taylor  <otaylor@gtk.org>
1385
1386         * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
1387         mechanism, that is used for the DND messages.
1388
1389           Removed all the old DND code.
1390
1391         * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
1392         get the visual of a given colormap.
1393         
1394         * gtk/gtkcolorsel.c: Conversion to new DND, drag 
1395         a color-swatch.
1396
1397         * gdk/gdk.h gdk/gdkdnd.c: The low-level
1398         X oriented portions of drag and drop protocols.
1399         Sending and receiving client messages, and navigating
1400         window trees.
1401
1402         * gdk/gdkimage.c: added a gdk_flush() when destroying
1403         SHM images to hopefully make it more likely that
1404         X will gracefully handle the segment being destroyed.
1405
1406         * gdk/gdkprivate.h gtk/gtkdebug.h: Add new 
1407         DND debugging flags.
1408
1409         * gtk/gtkeditable.[ch]: Updates for the selection handling
1410         changes.
1411         
1412         * gtk/gtkselection.[ch]: Added GtkTargetList, a 
1413         refcounted data structure for keeping track of lists
1414         of GdkAtom + information. Removed selection_handler_add
1415         in favor of a "drag_data_get" signal.
1416
1417         * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
1418         dependent) parts of the DND protocols, display of drag icons,
1419         drag-under highlighting, and the "default handlers".
1420
1421         * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
1422         windows that are used for reliable pointer grabs and
1423         selection handling in the DND code.
1424
1425         * gtk/testdnd.c: New test program for new DND. (Old
1426         DND tests in testgtk still need to be converted.)
1427
1428         * gtk/testselection.c: Use the new selection API.
1429         
1430         * docs/dnd_internals: Start at describing how
1431         all the new code works inside.
1432
1433         * docs/Changes-1.2.txt: New file describing source-incompatible
1434         changes in GTK+-1.2.
1435
1436 Sat Oct 17 22:50:34 1998  Owen Taylor  <otaylor@gtk.org>
1437
1438         * gdk/gdkwindow.c (gdk_window_remove_filter): Free
1439         the right list node.
1440
1441         * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
1442         to the XID table so we can receive events on it.
1443
1444 Wed Oct 14 12:57:40 1998  Owen Taylor  <otaylor@redhat.com>
1445
1446         * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
1447         to get the timestamp from a generic event.
1448
1449 Fri Oct  9 13:16:04 1998  Owen Taylor  <otaylor@redhat.com>
1450
1451         * gtk/gtkwidget.c (gtk_widget_add_events): Added function
1452         that safely adds additional events to a widget's event 
1453         mask, even if the widget has previously been realized.
1454         (We can do this, but not remove events from the event
1455          mask).
1456
1457 Fri Oct  2 17:35:35 1998  Owen Taylor  <otaylor@redhat.com>
1458
1459         * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
1460         for AnyPropertyType.
1461
1462 Fri Oct  2 10:32:21 1998  Owen Taylor  <otaylor@redhat.com>
1463
1464         * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
1465         hashing.
1466
1467 Thu Sep 24 20:33:54 1998  Owen Taylor  <otaylor@redhat.com>
1468
1469         * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
1470         isn't a timestamp.
1471
1472 Thu Sep 17 14:23:03 1998  Owen Taylor  <otaylor@redhat.com>
1473
1474         * gdk/gdk.c (gdk_event_translate): Removed printing
1475         of unknown window lookup warnings. (Made it
1476         a GDK_NOTE) - they happen in many circumstances.
1477
1478 Tue Sep  8 12:38:43 1998  Owen Taylor  <otaylor@redhat.com>
1479
1480         * Call XFilterEvent() on events we get for unknown
1481         windows, since it may be the window Xlib uses to
1482         communicate with the IM. 
1483         (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
1484
1485 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
1486
1487         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
1488         the adjustment.
1489
1490 Thu Aug 27 12:03:14 1998  Owen Taylor  <otaylor@redhat.com>
1491
1492         * gtk/gtksignal.c (gtk_signal_newv): Improve warning
1493         message for return_value + GTK_RUN_FIRST.
1494
1495 1998-10-18  Martin Baulig  <martin@home-of-linux.org>
1496
1497         * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
1498         line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
1499
1500 Fri Oct 16 15:59:02 1998  Lars Hamann  <lars@gtk.org>
1501
1502         * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
1503         styles of inserted row
1504         (change_style): change style of focus_row
1505
1506         * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
1507         (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
1508         to set/get row/cell styles.
1509         (gtk_clist_realize): attach row and cell style, allocate row colors.
1510         (gtk_clist_unrealize): detach row and cell styles.
1511         (get_cell_style): new function. get correct cell style.
1512         (draw_cell_pixmap): new function. 
1513         (draw_row): draw cells with row or cell styles.
1514         (row_new): set cell and row styles to NULL.
1515         (row_delete): detach & unref cell and row styles.
1516
1517         * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles): 
1518         new functions to attach/detach styles and allocate colors.
1519         (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
1520         styles of invisible nodes.
1521         (draw_cell_pixmap): new function. 
1522         (get_cell_style):  new function. get correct cell style.
1523         (gtk_ctree_draw_expander): new function. draw tree expander.
1524         (gtk_ctree_draw_lines): new function.draw tree lines.
1525         (draw_row): draw cells with row or cell styles.
1526         (row_new): set cell and row styles to NULL.
1527         (row_delete): detach & unref cell and row styles.
1528         (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style) 
1529         (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style): 
1530         Analogons of GtkCList functions 
1531         (gtk_ctree_set_spacing): new function. set spacing between
1532         tree expander and cell contents
1533         (gtk_ctree_set_expander_style): new function. set expander style
1534         of ctree.
1535         (ctree_is_hot_spot): few changes due to draw_row modifications.
1536
1537 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
1538
1539         * gtk/gtkcombo.c: try completion on MOD1-TAB.
1540         Handle case when the combo->list is empty.
1541
1542 Mon Oct 12 07:51:34 1998  Tim Janik  <timj@gtk.org>
1543
1544         * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
1545         handlers that have not yet been disconnected (finally managed to
1546         trigger the gtk_signal_handler_unref() paranoid warning).
1547
1548 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
1549
1550         * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
1551         width and height which is -1 and not -2.
1552
1553 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
1554
1555         * HACKING
1556         * autogen.sh: we need libtool 1.2b now
1557
1558 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
1559
1560         * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
1561         and bottom attach arguments as mandatory and readjust the table size
1562         and opposing edge accordingly if required. this way the order in which
1563         the arguments are set doesn't matter.
1564
1565 Thu Oct  8 15:53:59 1998  Owen Taylor  <otaylor@redhat.com>
1566
1567         * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
1568         message to print out parent class name correctly.
1569
1570 Thu Oct  8 07:07:10 1998  Tim Janik  <timj@gtk.org>
1571
1572         * gtk/gtkobject.h: 
1573         * gtk/gtkobject.c:
1574         removed functions gtk_object_set_data_destroy and
1575         gtk_object_set_data_destroy_by_id.
1576         added functions gtk_object_remove_no_notify and
1577         gtk_object_remove_no_notify_by_id which will remove a certain data
1578         portion without invokation of its destroy notifier, this should only
1579         be used in very controled circumstances.
1580
1581 Wed Oct  7 23:59:37 1998  Lars Hamann  <lars@gtk.org>
1582
1583         * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
1584         size_allocate_title_buttons call
1585         (gtk_clist_realize): changed initial column.window position
1586
1587 Wed Oct  7 20:27:28 1998  Lars Hamann  <lars@gtk.org>
1588
1589         * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
1590         xor_gc instead
1591         * gtk/gtkctree.c (create_xor_gc): removed
1592         (gtk_ctree_button_press): set correct line_attributes for
1593         clist->xor_gc on drag start
1594         (gtk_ctree_button_release): reset clist->xor_gc
1595
1596 Wed Oct  7 05:15:36 1998  Tim Janik  <timj@gtk.org>
1597
1598         * gtk/gtk*.h:
1599         * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
1600         which were in place to fixup emacs' cc-mode indentation.
1601         putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
1602         proper way to achive this and doesn't produce problems for
1603         stupid pragma-related compiler bugs. ;)
1604
1605 Wed Oct  7 00:59:46 1998  Lars Hamann  <lars@gtk.org>
1606
1607         * gtk/gtkclist.h: new signal GtkCList::resize_column.
1608         * gtk/gtkclist.c (draw_row): don't draw invisible columns
1609         (size_allocate_title_buttons) (size_allocate_columns):
1610         skip invisible columns
1611         (new_column_width): take min/max_width into account 
1612         (gtk_clist_button_release) (gtk_clist_motion):
1613         changes due to changed new_column_width function
1614         (LIST_WIDTH): changed define to inline function.
1615         (real_resize_column): class function for resize_column signal
1616         (gtk_clist_motion): fixed autoscrolling for column resizes
1617         (gtk_clist_set_column_visibility): don't hide last visible column,
1618         changed visible arg to gboolean
1619         (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
1620         new functions : set min/max width of a column
1621         (gtk_clist_set_column_resizeable): new function : enable/disable
1622         column resize operations by mouse
1623
1624         * gtk/gtkctree.c (draw_row): don't draw invisible columns
1625         (ctree_is_hot_spot): return FALSE if tree_column is invisible
1626         (draw_xor_line)  (draw_xor_rect): draw full rectangle/line if
1627         tree_column is invisible
1628         (gtk_ctree_find_all_by_row_data)
1629         (gtk_ctree_find_all_by_row_data_custom):  new function from
1630         Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
1631         GtkCTreeNodes with row->data == data.
1632
1633 Tue Oct  6 14:05:00 1998  Tim Janik  <timj@gtk.org>
1634
1635         * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
1636         memory (Martin Pool <mbp@wistful.humbug.org.au>).
1637
1638 Mon Oct  5 15:26:30 1998  Raph Levien  <raph@gimp.org>
1639
1640         * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
1641         should have been guint32. Thanks to Tristan Colgate for finding it.
1642
1643 Sun Oct  4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1644
1645         * gtk/gtkcalendar.h:
1646           gtk/gtkcalendar.c: More changes:
1647           - The day with focus is now seperated from the day selected
1648           - The day with focus has the xor's line around it
1649           - The selected day is now standard selected style
1650           - The week names and week numbers are now also drawn
1651             with selected style
1652           - Space now selects the day which has focus
1653
1654 Sun Oct  4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1655
1656         * gtk/gtkcalendar.h:
1657           gtk/gtkcalendar.c: Some significant changes, including:
1658           - No longer draw focus around entire widget, only around
1659             the day which has focus
1660           - Draw relief around entire widget like originally planned
1661           - Show header and day names by default 
1662           - Move data private to the widget out of GtkCalendar struct
1663             and only point to it with a gpointer
1664           - Remove some old unused variables from GtkCalendar struct
1665
1666 Sun Oct  4 17:45:43 BST 1998  Tony Gale  <gale@gtk.org>
1667
1668         * docs/gtk_tut.sgml: update I've had sat around:
1669           - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
1670           - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
1671           - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
1672
1673 1998-10-01  Martin Baulig  <martin@home-of-linux.org>
1674
1675         * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
1676         
1677         * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
1678         Makes it possible to individually show and hide columns.
1679         (size_allocate_columns): Adapted to keep track of hidden columns.
1680         (size_allocate_title_buttons): Likewise.
1681
1682 Sat Oct  3 17:54:48 1998  Tim Janik  <timj@gtk.org>
1683
1684         * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
1685         fundamental types, collect an argument of the type returned from
1686         gtk_type_get_varargs_type(). removed the first macro argument which
1687         was just the same as the fundamental type of the *arg passed to
1688         the macro.
1689         * gtk/gtkarg.c (gtk_args_collect): 
1690         * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
1691
1692         * gtk/gtktypeutils.h: 
1693         * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
1694         gtk_type_get_varargs_type() to set and query the varargs collect
1695         type used for a fundamental type, registered outside of Gtk.
1696
1697         * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
1698         GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
1699         GTK_TYPE_FLOAT.
1700
1701         * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
1702         GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
1703         to GTK_TYPE_FLOAT.
1704
1705 Sat Oct  3 01:25:24 1998  Lars Hamann  <lars@gtk.org>
1706
1707         * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
1708         (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand): 
1709         fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
1710
1711         (real_tree_expand) (real_tree_collapse):
1712         don't expand/collapse a leaf
1713
1714 Fri Oct  2 16:10:36 1998  Tim Janik  <timj@gtk.org>
1715
1716         * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
1717         segfault when looking up a non-existant value name (reported by
1718         Pablo <pcj+gtk@primenet.com>).
1719
1720 Thu Oct  1 10:40:20 1998  Tim Janik  <timj@gtk.org>
1721
1722         * gtk/gtkclist.h (gtk_clist_prepend):
1723         * gtk/gtkclist.c (gtk_clist_prepend): new function.
1724         (gtk_clist_insert): added g_return_val_if_fail()
1725         statements. accept a row parameter < 0 or > clist->rows to indicate
1726         append mode.
1727         (real_clear): first clean up all internal pointers and lists (e.g.
1728         clist->row_list or clist->rows), then delete the distinct rows. this
1729         is required because of destroy notifiers, we need to have all internal
1730         structures updated and be reentrant.
1731
1732         * gtk/gtkcalendar.h: 
1733         * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
1734         GtkCalendarClass signal methods.
1735         GtkType and macro fixups, put `void' into () prototypes, avoid C++
1736         style comments, indentation fixes, fixed some g_return_if_fail()
1737         statements.
1738         (gtk_calendar_paint_header):
1739         (gtk_calendar_paint_day_names): 
1740         (gtk_calendar_paint_week_numbers): 
1741         (gtk_calendar_paint_main): made these static functions.
1742         (gtk_calendar_select_month):
1743         (gtk_calendar_select_day):
1744         (gtk_calendar_mark_day):
1745         (gtk_calendar_unmark_day):
1746         (gtk_calendar_get_date): signedness corrections, use guints
1747         rather than gints.
1748         (gtk_calendar_size_request): removed unused variables.
1749
1750 Wed Sep 30 13:11:09 1998  Tim Janik  <timj@gtk.org>
1751
1752         * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
1753         widgets in the ->widgets_by_action list that have a callback
1754         defined (not only those with a callback_action!=0).
1755
1756 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1757
1758         * gtk/gtkcalendar.h:
1759           gtk/gtkcalendar.c:
1760           examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
1761
1762 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1763
1764         * gtk/gtkcalendar.h:
1765           gtk/gtkcalendar.c:
1766           examples/calendar: Added gtkcalendar widget and demo
1767
1768 Sat Sep 26 06:15:34 1998  Tim Janik  <timj@gtk.org>
1769
1770         * gtk/gtkclist.c (gtk_clist_sort): 
1771         (gtk_clist_clear): 
1772         (gtk_clist_unselect_all): 
1773         (gtk_clist_select_all): adde g_return_if_fail() statements.
1774
1775 Sat Sep 26 04:46:22 1998  Tim Janik  <timj@gtk.org>
1776
1777         * configure.in: set binary age and interface age to 0.
1778
1779         * gtk/gtkspinbutton.h: 
1780         * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
1781         gtk_spin_button_configure. gtk_spin_button_construct is still defined
1782         as an alias for gtk_spin_button_configure for source compatibility,
1783         but actuall use is deprecated.
1784         typeness corrections, i.e. gint->gboolean and gint->guint.
1785         added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
1786         GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
1787         GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
1788         GtkSpinButton::adjustment, GtkSpinButton::digits and
1789         GtkSpinButton::climb_rate.
1790         GtkType and macro fixups.
1791
1792 Sat Sep 25 23:33:55 1998  Tim Janik  <timj@gtk.org>
1793
1794         * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
1795         the *real* geometry position of a window, taken possible window
1796         manager offsets into account.
1797         this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
1798         olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
1799         it does fail though for amiwm which adds windows to a pseudo root
1800         window, and for icewm by a small offset because it defines the
1801         geometry position whithin its border.
1802
1803         * gtk/testgtk.c: added "saved position" test to figure how
1804         gdk_window_get_root_origin() interacts with window managers (repopup
1805         this window to figure ;).
1806
1807 Wed Sep 23 06:09:19 1998  Tim Janik  <timj@gtk.org>
1808
1809         * configure.in: update to Gtk+ version 1.1.3, binary age 1,
1810         interface age 1.
1811
1812         * gtk/gtkobject.c
1813         (gtk_object_ref): 
1814         (gtk_object_unref): check for ->ref_count to be greater than 0 (the
1815         existing code was buggy in letting ->ref_count==0 pass through and
1816         then failing the living_objs_ht assertion).
1817
1818         * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
1819         pixtext fields (Roman Pozlevich <roma@botik.ru>).
1820
1821 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1822
1823         * Released GTK+ 1.1.2
1824
1825 Mon Sep 21 01:12:44 1998  Jay Cox  (jaycox@earthlink.net)
1826
1827         * gtk/Makefile.am: use $(PERL) instead of perl
1828         * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
1829         also much faster to render.
1830
1831 Mon Sep 21 07:44:30 1998  Tim Janik  <timj@gtk.org>
1832
1833         * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
1834         the required memory block, rather than allocating it newly from
1835         scratch and doing a full-blown block copy on it.
1836
1837 Mon Sep 21 02:30:06 1998  Tim Janik  <timj@gtk.org>
1838
1839         * NEWS file update for upcoming release of Gtk+ version 1.1.2,
1840         binary age 0, interface age 0.
1841
1842         * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
1843
1844 Sun Sep 20 18:21:46 1998  Owen Taylor  <otaylor@redhat.com>
1845
1846         * ltmain.sh: Patch to libtool-1.2b to make --disable-static
1847         work.
1848
1849 Sun Sep 20 09:52:39 1998  Owen Taylor  <otaylor@gtk.org>
1850
1851         * HACKING: indent other than GNU indent should be OK
1852           now.
1853
1854         * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
1855           instead of piping through indent. If indent wasn't
1856           found in ./configure don't bother indenting at 
1857           all.
1858
1859 Fri Sep 18 19:11:10 1998  Owen Taylor  <otaylor@redhat.com>
1860
1861         * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
1862
1863 Fri Sep 18 18:54:59 1998  Jay Cox  (jaycox@earthlink.net)
1864
1865         * gtk/Makefile.am: use $(AWK) instead of awk
1866
1867 1998-09-18  Raja R Harinath  <harinath@cs.umn.edu>
1868
1869         * gtk/Makefile.am (gdk_headers): 
1870         Remove references to $(top_srcdir). 
1871         (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
1872         * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
1873
1874 Fri Sep 18 19:58:24 1998  Tim Janik  <timj@gtk.org>
1875
1876         * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
1877         GData*object_data to cure compiler warnings.
1878
1879 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
1880
1881         * install-sh
1882         * missing
1883         * mkinstalldirs: updated to latest automake version
1884
1885 1998-09-17  Raja R Harinath  <harinath@cs.umn.edu>
1886
1887         * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
1888         (gtkinclude_HEADERS): ... here.
1889         (gtk.defs): Pass `g' flag to sed, to replace all occurances.
1890
1891 Thu Sep 17 10:49:51 1998  Raph Levien  <raph@gimp.org>
1892
1893         * HACKING: added GNU indent, as it is now required to successfully
1894         build gtk+. Should this be detected in autoconf, possibly?
1895
1896 Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>
1897
1898         * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
1899         change library versioning scheme to drop LT_RELEASE
1900         from the -l line, while keeping it in the soname.
1901
1902 Tue Sep 15 14:10:33 1998  Owen Taylor  <otaylor@redhat.com>
1903
1904         * configure.in Makefile.in: define a MAINT-like variable REBUILD
1905         which is set if Perl and awk are found, and autogenerated sources
1906         can be rebuilt. Remove the auto-generated sources from
1907         CVS. 
1908
1909         Add dependencies so that the autogenerated sources are 
1910         rebuilt if the files they depend on change. 
1911         (This unfortunately currently results in the entire
1912         gtk/ directory being rebuilt when any header changes.
1913         Moving all enums to gtkenums.h would fix this.)
1914
1915 Thu Sep 17 05:12:48 1998  Tim Janik  <timj@gtk.org>
1916
1917         * gtk/gtkobject.h: added gtk_object_set_data_destroy and
1918         gtk_object_set_data_destroy_by_id functions to set the destroy
1919         function pointer for an existing data portion.
1920
1921         * gtk/gtkobject.c: removed the GtkObjectData implementation and
1922         made all gtk_object_*data* functions use the GLib equivalents.
1923
1924 1998-09-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1925
1926         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
1927         is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
1928         (widget != NULL), otherwise radio button insertion will not work
1929         -- the widget argument is NULL for the first radio button in the
1930         group.
1931
1932 Tue Sep 15 13:09:24 1998  Owen Taylor  <otaylor@redhat.com>
1933
1934         * gdk/gdkimage.c (gdk_image_new): Reverted global changes
1935         of g_new to malloc(), added back in the one place where
1936         it actually mattered. #include <stdlib.h>.
1937
1938         * gdk/gdkrgb.c: g_malloc() to malloc() as above.
1939
1940 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
1941
1942         * gtk/gtkfilesel.c: Keep a list of directories in which we never
1943         want to stat the entries (like /afs), and assume everything in
1944         those directories is a subdirectory.
1945
1946         - When following a path, try to open components even when
1947         we don't find them in their parent's directory to
1948         support automounters.
1949
1950 Tue Sep 15 11:06:13 1998  Owen Taylor  <otaylor@redhat.com>
1951
1952         * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
1953         a new size from the WM if we asked for the same size
1954         before and our request was rejected.
1955
1956         * gtk/gtkwindow.c (gtk_window_configure_event): If
1957         in response to a request, we get a configure event
1958         with unchanged dimensions, send a synthetic expose
1959         since ForgetGravity won't expose our window.
1960
1961 Mon Sep 14 14:28:24 1998  Owen Taylor  <otaylor@redhat.com>
1962
1963         * gtk/gtktext.c (adjust_adj): Change the way we
1964         set the adjustments on resize so that it tries to
1965         keep the beginning of the text in approximately
1966         the same place. 
1967
1968         Removed assertion that the above change made invalid.
1969
1970 Thu Sep 10 22:19:35 1998  Owen Taylor  <otaylor@redhat.com>
1971
1972         * gtk/gtktext.c: - Save first_cut_pixels when switching
1973         sizes, so that if we switch to the _same_ size,
1974         we don't move lines around.
1975
1976         - Make sure that the text area always has a size of at
1977         least 1x1, then do all computations when realized.
1978
1979         - When fetching lines in recompute_geometry, make
1980         sure we fetch enough lines to cover the screen.
1981         
1982 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1983
1984         * gdk/gdkimage.c: changed g_new()s to malloc()s and 
1985           g_free()s to free()s to avoid mixing g_new()s with 
1986           free()s.  X itself uses free() on some of the 
1987           malloced memory.
1988
1989 Sat Sep 12 10:44:06 1998  Owen Taylor  <otaylor@redhat.com>
1990
1991         * gtkfilesel.c: Maintain a list of directories like
1992         /afs we know contain only directories, and avoid
1993         stat'ing files in those directories. (Because
1994         stat'ing all files in /afs is extremely expensive)
1995
1996         To support automounters, try to open directories,
1997         even if we couldn't find them when reading their
1998         parent directory.
1999
2000 Thu Sep  3 10:29:03 1998  Owen Taylor  <otaylor@redhat.com>
2001
2002         * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
2003         to allow the same gtk.m4 to work for 1.0.x and
2004         1.1.x.
2005
2006 Fri Sep 11 15:25:10 1998  Lars Hamann  <lars@gtk.org>
2007
2008         * gtk/gtkclist.c (gtk_clist_set_selectable): new function
2009         to set/unset the selectable flag of a single row.
2010         (gtk_clist_get_selectable): new function 
2011         to get the state of the selectable flag
2012
2013         * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
2014         (gtk_ctree_node_get_selectable): clist analogons
2015         
2016 Thu Sep 10 17:04:03 1998  Raph Levien  <raph@gimp.org>
2017
2018         * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
2019         pattern.
2020
2021         * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
2022         bugs in the 4bit gray cases.
2023
2024 Wed Sep  9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
2025
2026         * configure.in: added -posix check for NeXTStep
2027
2028         * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
2029         a unique buffer for each thread.
2030
2031         * docs/gtk-config.1: clarified copyright
2032
2033 Tue Sep  8 05:19:51 1998  Tim Janik  <timj@gtk.org>
2034
2035         * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
2036
2037         * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
2038
2039         * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
2040         ATEXIT.
2041         
2042         * ltconfig: use GLib's ltconfig which honours lcc.
2043
2044 Mon Sep  7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
2045
2046         * configure.in: comment the -std1 check and save LIBS properly
2047
2048 Sun Sep  6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
2049
2050         * gtk/testrgb.c: #include <stdlib.h>
2051
2052 Sat Sep  5 16:01:19 1998  Owen Taylor  <otaylor@gtk.org>
2053
2054         * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
2055         When the pointer is grabbed on an input window,
2056         either explicitely, or through press-grab, and
2057         then grabbed on a non-input window, ungrab the
2058         devices.
2059
2060 Sat Sep  5 07:13:19 1998  Tim Janik  <timj@gtk.org>
2061
2062         * gtk/gtktypeutils.h: don't include any gdk headers.
2063         added structure definitions for GtkTypeObject and GtkTypeClass,
2064         which cover the very basic fields of GtkObject and GtkObjectClass,
2065         which are actually used by the type system.
2066         
2067         * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
2068         we only refer to our own structures. improved class inheritance
2069         sanity checking a bit.
2070
2071         * gtk/gtkobject.h: placed appropriate comments at the beginnings
2072         of the GtkObject and GtkObjectClass structures, which explain
2073         their relationship to GtkTypeObject and GtkTypeClass.
2074
2075         * gtk/gtktypeutils.h:
2076         * gtk/gtkobject.h:
2077         moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
2078         GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
2079         gtkobject.h to gtktypeutils.h.
2080
2081         * gtk/gtkobject.h:
2082         * gtk/gtkobject.c:
2083         removed gtk_object_check_cast() and gtk_object_check_class_cast()
2084         functions. to keep source compatibility, we can provide macro aliases
2085         for the corresponding gtk_type_* functions. but then again, people
2086         shouldn't have been using these functions anyways since they were part
2087         of Gtk's internal API.
2088
2089         * gtk/gtktypeutils.h:
2090         * gtk/gtktypeutils.c:
2091         implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
2092         functions to check GtkTypeObject and GtkTypeClass types.
2093
2094 Thu Sep  3 07:16:54 1998  Tim Janik  <timj@gtk.org>
2095
2096         * gtk/gtkctree.h:
2097         * gtk/gtkctree.c: `const' fixups.
2098
2099         * gtk/gtkclist.h:
2100         * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
2101
2102         * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
2103         if it is passed as NULL.
2104
2105 Wed Sep  2 22:41:40 1998  Raph Levien  <raph@gimp.org>
2106
2107         * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
2108         big-endian cases. Added a 4bpp packed gray mode (somewhat
2109         incorrectly hardwired to MSB), which should take care of
2110         Stric's hardware.
2111
2112 Thu Sep  3 04:45:57 1998  Tim Janik  <timj@gtk.org>
2113
2114         * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
2115         GtkSIgnalQuery leak.
2116
2117 Thu Sep  3 04:22:20 1998  Tim Janik  <timj@gtk.org>
2118
2119         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
2120         GTK_MENU_DIR_CHILD: check for the existance of
2121         menu_shell->active_menu_item before accessing its child.
2122         GTK_MENU_DIR_PREV:
2123         GTK_MENU_DIR_NEXT: if we haven't had an active item and still
2124         don't, make a default selection.
2125
2126 Wed Sep  2 00:28:58 1998  Tim Janik  <timj@gtk.org>
2127
2128         * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
2129         the children with _forall for sensitivity changes and with
2130         _foreach on pure state changes. this fixes a lot of the
2131         old inclusions of internal widgets into _foreach calls.
2132
2133         * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
2134         do the work. don't walk the subtrees of first level children.
2135
2136         * gtk/gtktreeitem.c: provide a _forall implementation,
2137         which walks the subtrees as well for include_internals.
2138
2139         * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
2140         the submenus as well for include_internals.
2141
2142         * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
2143         implemented gtk_scrolled_window_forall, which will iterate over
2144         the viewport and the scrollbars for gtk_container_forall or
2145         iterate over the viewports children for gtk_container_foreach.
2146
2147         * gtk/gtktoolbar.c: 
2148         * gtk/gtktable.c: 
2149         * gtk/gtkpaned.c:
2150         * gtk/gtkpacker.c:
2151         * gtk/gtkmenushell.c: 
2152         * gtk/gtklist.c: 
2153         * gtk/gtkfixed.c:
2154         * gtk/gtkclist.c:
2155         * gtk/gtkbox.c: 
2156         * gtk/gtkbin.c: 
2157         * gtk/gtknotebook.c:
2158         removed the old gtk_*_foreach functions and provided gtk_*_forall.
2159
2160         * gtk/gtknotebook.c:
2161         (gtk_notebook_real_switch_page): expose tabs.
2162         (gtk_notebook_page_num): new function to return the page number
2163         of a distinct child.
2164         (gtk_notebook_focus): minor fixups. foxus handling is still screwed
2165         under some circumstances.
2166
2167         * gtk/gtktreeitem.c:
2168         (gtk_real_tree_item_select):
2169         (gtk_real_tree_item_deselect): major fixes.
2170         some general fixups wrt queue_redraw, and tree items not being
2171         NO_WINDOW widgets.
2172
2173         * gtk/gtklistitem.c:
2174         (gtk_real_list_item_select): 
2175         (gtk_real_list_item_deselect): 
2176         (gtk_real_list_item_toggle): 
2177         removed unneccessary queue_redraw calls.
2178
2179 Wed Aug 30 09:42:07 1998  Tim Janik  <timj@gtk.org>
2180
2181         * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
2182         automatically popup the menu on space bar.
2183
2184 Wed Aug 26 06:40:34 1998  Tim Janik  <timj@gtk.org>
2185
2186         * gtk/gtkcontainer.h:
2187         * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
2188         method), which acts similar to gtk_container_foreach(), but iterates
2189         over internal children. the GtkContainer::foreach signal vanished in
2190         favour of a new class method ->forall() that optionally includes
2191         internal widgets.
2192
2193         * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
2194         but a _forall implementation, since all child widgets we have are
2195         internal ones.
2196         (column_button_create): set the parent window prior
2197         to gtk_widget_set_parent().
2198
2199         * gtk/gtkwidget.c:
2200         exchanged all calls to gtk_container_foreach() with
2201         gtk_container_forall().
2202
2203         * gtk/gtkwidget.h: 
2204         * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
2205         the GtkWidget::composite_child argument. to have a widget created
2206         with the flag initially, two new functions got added to wrap a widgets
2207         creation:
2208         gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
2209
2210 Wed Aug 25 23:37:39 1998  Tim Janik  <timj@gtk.org>
2211
2212         * gtk/gtktooltips.h:
2213         * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
2214         gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
2215         prior to the first tip being set.
2216         don't put an extra reference on the window, since it is a toplevel,
2217         it wont get destroyed from anywhere else.
2218
2219         * overall macro and GtkType fixups.
2220
2221 1998-09-02  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2222
2223         * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
2224         constructs by more forgiving ones.  (Does anyone else feel like
2225         the color selector need rewriting?).
2226
2227 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
2228
2229         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2230         the adjustment.
2231
2232         * gtk/gtkmenu.c: Modified reference counting so
2233         that the reference count from the toplevel that
2234         the menu creates to the menu is invisible to the
2235         application.
2236
2237 Mon Aug 31 21:36:31 1998  Raph Levien  <raph@gimp.org>
2238
2239         * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
2240         conversion selection logic, so Suns and other big-endian
2241         machines should get faster conv routines. This is also the
2242         point where 4bpp gray and 1bpp are checked in, although I
2243         wouldn't be surprised if 1bpp is a little buggy. This is
2244         synchronized with the 0.0.7 release of GdkRgb.
2245
2246         * gtk/Makefile.am: 
2247         * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
2248         appropriate change to the Makefile.am
2249
2250 Mon Aug 31 15:18:19 1998  Raph Levien  <raph@gimp.org>
2251
2252         * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
2253         which is good for images that scroll (makes the dither patterns
2254         align correctly)
2255
2256 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
2257
2258         * gdk/gdkcolor.c:
2259         (gdk_colormap_new) (gdk_colormap_get_system):
2260         quell some warnings with g_hash_table_new
2261
2262         * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
2263         when we're done with it
2264
2265         * gtk/itemfactory.c:
2266         (gtk_item_factory_from_path):
2267         (gtk_item_factory_create_item): free some strings
2268
2269         * gtk/gtklabel.c:
2270         (gtk_label_finalize): free label->pattern when done
2271         (gtk_label_parse_uline): null terminate pattern string, delete
2272         some duplicated code
2273
2274         * gtk/testthreads.c: add #include <unistd.h> for sleep()
2275
2276 Tue Aug 25 16:52:47 1998  Owen Taylor  <otaylor@redhat.com>
2277
2278         * gtk/gtktext.c (recompute_geometry): Make sure the
2279         mark we pass to line start is the beginning of a 
2280         real line, not a wrapped one.
2281
2282 Mon Aug 24 18:37:15 1998  Owen Taylor  <otaylor@redhat.com>
2283
2284         * gtk/gtktext.c: Reference count the fonts used in
2285         the text widget.
2286
2287         * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
2288         freeing functions to be more consistent, and more 
2289         convenient; leave the old names in for backwards compatibility.
2290
2291         * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
2292         allocations in pseudo-color colormaps to greatly reduce
2293         calls to XAllocColor. Keep a per-colormap hashtable to
2294         speed up finding if there is an already-allocated matching
2295         color.
2296
2297         * gdk/gdkcolor.c: Don't just match read the system colormap
2298         when the colormap is created, but synchronize our copy
2299         with the system colormap periodically.
2300         
2301         * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c: 
2302         Change XIM constants names to match GDK conventions
2303
2304         * gtk/testinput.c: Allow the drawing area to get the focus.
2305
2306         * gtk/testgtk.c: Change around the Text test to demonstrates
2307         multiple fonts, use more colors.
2308
2309         * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
2310         so they work after a widget is unrealized.
2311
2312         * gtk/gtktext.[ch]: Remove the requirement that the text
2313         widget be realized before adding text (!) Allocate colors
2314         ourself, instead of requiring the caller allocate them.
2315         Allow changing styles to work properly by keeping track
2316         of the values for a certain property are default or
2317         set explicitely.
2318
2319         * gtk/gtkmenu.h: Added some comments.
2320
2321         * gtk/gtkentry.c: Changes to match XIM constants.
2322
2323         * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
2324         for adding keyed data to drawables. (Uses g_dataset
2325         internally)
2326
2327         * gdk/gdkpixmap.c: Keep track of the colors we allocate,
2328         when creating an XPM - store them as user data for the GdkPixmap,
2329         so we don't leak colors when we create pixmaps from XPM's.
2330
2331         Allocate memory for color information in large blocks instead of 
2332         as many little pieces.
2333         
2334 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
2335
2336         * gdk/gdkrgb.c: removed some unused variables
2337
2338         * gtk/gtkclist.c
2339         * gtk/gtkmain.c: #if 0'd out some unused code
2340
2341         * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
2342
2343 Mon Aug 24 02:36:53 1998  Tim Janik  <timj@gtk.org>
2344
2345         * gtk/gtkarg.h:
2346         * gtk/gtkarg.c:
2347         * gtk/gtkwidget.h: 
2348         * gtk/gtkwidget.c: 
2349         * gtk/gtkobject.h:
2350         * gtk/gtkobject.c:
2351         * gtk/gtkcontainer.h: 
2352         * gtk/gtkcontainer.c: 
2353         (gtk_object_new):
2354         (gtk_object_set):
2355         (gtk_widget_new):
2356         (gtk_widget_set): 
2357         (gtk_container_add_with_args):
2358         (gtk_container_child_set):
2359         begin the parameter elipsis (...) after the first argument name. this
2360         change is source compatible, since it was always required, even as NULL.
2361         (gtk_args_collect): 
2362         (gtk_object_args_collect): 
2363         (gtk_container_child_args_collect):
2364         changed prototypes to pass first_arg_name, also, pass va_list variable
2365         by value (portability concerns). callers changed.
2366
2367         * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
2368         a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
2369         can't pass va_list variables by reference for portability reasons.
2370
2371 Fri Aug 21 22:40:00  Raph Levien  <raph@gtk.org>
2372
2373         * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
2374         get_visual calls, so that it gets implicitly initialized.
2375
2376 Fri Aug 21 13:06:04 1998  Stuart Parmenter  <pavlov@gimp.org>
2377         * gtk/gtkfeatures.h.in:  added GTK_HAVE_FEATURES_1_1_2 for changes
2378         such as GtkCTree function name changes
2379         
2380 Fri Aug 21 02:31:26 1998  Tim Janik  <timj@gtk.org>
2381
2382         * gtk/gtkmain.h:
2383         * gtk/gtkmain.c (gtk_check_version): added a function to perform a
2384         binary version check, returning a static string for error descriptions,
2385         or NULL on success.
2386
2387 Thu Aug 20 20:08:15 1998  Owen Taylor  <otaylor@redhat.com>
2388
2389         * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
2390         computed our geometry yet, and if not, ignore the request.
2391
2392         * gtk/gtktext.c (correct_cache_insert): Fiddled around
2393         some more. All the bug-test codes seem to work at once
2394         now. (fingers crossed...)
2395
2396 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
2397
2398         * gdk/gdkrgb.c: silly visual fixes
2399
2400         * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
2401         works
2402
2403 1998-08-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2404
2405         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
2406         anything if the event's window is not the bin window.
2407         (gtk_handle_box_motion): Likewise.
2408
2409 1998-08-19  Raph Levien  <raph@gimp.org>
2410
2411         * gtk/testgtk.c (create_color_preview): pushed the colormap and
2412         visual so it would work better with GdkRgb.
2413
2414 1998-08-19  Raph Levien  <raph@gimp.org>
2415
2416         * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
2417         4bpp static_color mode (for vga displays). Also fixed a '64' value
2418         in the dither matrix, which was causing one pixel out of 16k to be
2419         dithered wrong.
2420
2421         * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
2422         most of the contents. This is an API change - any apps that relied
2423         on the internal structure of GtkPreview will need some change -
2424         most notably in the use of reserved colors. The Gimp needed
2425         changes in this regard.
2426
2427 Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>
2428
2429         * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
2430         G_ENABLE_DEBUG being defined (specifically --gtk-module= and
2431         --g-fatal-warnings), noticed by miguel.
2432
2433 Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>
2434
2435         * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
2436         getcwd().
2437
2438         * gdk/gdkprivate.h:
2439         * gdk/gdkglobals.c:
2440         * gdk/gdkwindow.c:
2441         * gdk/gdk.c:
2442         * gtk/gtkwindow.c: 
2443         * gtk/gtkitemfactory.c: 
2444         dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
2445
2446         * gtk/gtkselection.c:
2447         * gtk/gtkpreview.c:
2448         * gtk/gtkobject.c: 
2449         * gtk/gtkmain.c: 
2450         * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
2451
2452         * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
2453
2454 Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>
2455
2456         * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab): 
2457         * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
2458         in case of show_tabs == NULL
2459
2460 Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>
2461
2462         * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
2463         to --g-fatal-warnings again. this option now causes log levels of
2464         WARNING and CRITICAL to abort().
2465
2466         * gdk/gdk.c: 
2467         * gdk/gdkdnd.c: 
2468         * gdk/gdkcc.c: 
2469         * gdk/gdkfont.c: 
2470         * gdk/gdkwindow.c:
2471         * gdk/gdkvisual.c:
2472         * gtk/gtkwidget.c:
2473         * gtk/gtktypeutils.c:
2474         * gtk/gtktree.c:
2475         * gtk/gtkfontsel.c:
2476         * gtk/gtkmain.c:
2477         * gtk/gtkobject.c:
2478         * gtk/gtkpreview.c:
2479         * gtk/gtkselection.c:
2480         * gtk/gtktext.c:
2481         * gtk/gtktree.c:
2482         * gtk/gtktreeitem.c:
2483         did a global search&replace to substitute g_print() calls with
2484         g_message(). libraries shouldn't use printf(), g_print() or
2485         g_printerr() at all.
2486         a bunch of the replacements should probably be wrapped into the
2487         G{D|T}K_NOTE() macros, so they are special cased for debugging
2488         purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
2489         things.
2490
2491         * gdk/gdkdnd.c: added copyright notice.
2492
2493 Mon Aug 17 17:28:00  Raph Levien  <raph@gtk.org>
2494
2495         * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
2496         impressively fast now - about 4.65 Mpix/s on an IBM TP 600
2497         running a PII 233. It's synced with the 0.0.5 release of
2498         GdkRgb.
2499
2500 Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>
2501
2502         * gtk/gtkclist.h:
2503         (struct _GtkCListClass): new class methods:
2504         (sort_list) (insert_row) (remove_row) (set_cell_contents)
2505
2506         * gtk/gtkclist.c :
2507         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2508         removed and replaced by (set_cell_contents)
2509         (set_cell_contents): function for class method set_cell_contents
2510         (real_insert_row): function for class method insert_row
2511         (real_remoce_row): function for class method remove_row
2512         (real_sort_list): function for class method sort_list
2513         (default_compare): fix to avoid problems with cell types != CELL_TEXT
2514
2515         * gtk/gtkctree.h :
2516         (gtk_ctree_export_to_gnode): new function to export a ctree as gnode 
2517         (gtk_ctree_node_is_visible): new function to return visibility state
2518         of a node
2519         (gtk_ctree_show_stub): new function to set visibility of root stub
2520
2521         renamed functions :
2522         (gtk_ctree_insert) -> (gtk_ctree_insert_node)
2523         (gtk_ctree_remove) -> (gtk_ctree_remove_node)
2524         (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
2525         (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
2526         (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
2527         (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
2528         (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
2529         (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
2530         (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
2531         (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
2532         (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
2533         (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
2534         (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
2535         (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
2536         (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
2537         (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
2538         (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
2539         (gtk_ctree_sort) -> (gtk_ctree_sort_node)
2540         (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
2541
2542         * gtk/gtkctree.c :
2543         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2544         removed and replaced by (set_cell_contents)
2545         (set_cell_contents): function for class method set_cell_contents
2546         (real_insert_row): function for class method insert_row
2547         (real_remoce_row): function for class method remove_row
2548         (real_sort_list): function for class method sort_list
2549         (default_compare): removed. CTree now also compares two GtkCTreeRows
2550         instead of two GtkCTreeNodes.
2551         (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
2552         unlinking the node
2553         (real_tree_expand) (real_tree_collapse): fix for refcounting of
2554         node pixmaps
2555         (set_node_info): call gtk_ctree_node_set_pixtext instead of
2556         manipulating the row itself
2557         
2558         * gtk/testgtk.c: use renamed functions of GtkCTree.
2559         new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
2560         at work.
2561
2562 Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>
2563
2564         * gtk/gtkmain.c: removed gtk_input_add_interp.
2565
2566         * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
2567         keyword.
2568         (gtk_editable_get_event_time): fix default: case.
2569
2570         * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
2571
2572         * gdk/gdkpixmap.c: made a bunch of unexported functions static.
2573
2574         * gdk/gdkcolor.c:
2575         * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
2576         of our functions.
2577
2578         * various minor compilation cleanups, such as bogus commas in
2579         enums and similar things.
2580
2581 Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>
2582
2583         * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
2584         (thanx raph).
2585
2586 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2587
2588         * NEWS: updated for 1.1.2
2589         * gtk+.spec: version = 1.1.2
2590
2591 Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>
2592
2593         * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
2594         times. changed --gtk-with-module to --gtk-module at owen's request.
2595
2596 Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>
2597
2598         * gtk/gtkmain.c (gtk_init): feature a new commandline option
2599         --gtk-with-module=<module> that allows additional loading and
2600         initialization of modules (e.g. GLE).
2601
2602 Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>
2603
2604         * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
2605         pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
2606
2607         * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
2608         with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
2609         "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
2610         different *-fatal-* arguments now. this needs to be revised and
2611         compressed to a reasonable amount of arguments.
2612
2613 Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>
2614
2615         * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
2616         "--g-fatal-warnings" causes fatal warnings in GLib,
2617         "--gdk-fatal-warnings" causes fatal warnings in Gdk,
2618         "--gtk-fatal-warnings" causes fatal warnings in Gtk.
2619
2620         * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
2621         * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
2622
2623         * gtk/testgtk.c: 
2624         * gdk/gxid.c:
2625         we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
2626         since automake doesn't support per target _CFLAGS yet.
2627
2628         * configure.in: require GLib 1.1.3.
2629
2630 Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>
2631
2632         * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
2633         to set a callback to test if a node in drag can be dropped onto
2634         it's currrent location.
2635         * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
2636         to change the pointer when a drag destination is not allowed.
2637
2638 Thu Aug 13 21:06:00 1998  Raph Levien  <raph@gtk.org>
2639
2640         * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
2641         speeds up the 565_d case by about 25% total. Thanks Ray!
2642
2643 Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>
2644
2645         * Changed GtkSignalFunc back to () from (void). (again!)
2646
2647         * Added file README.cvs-commits
2648         
2649 Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>
2650
2651         * docs/gtk_tut.sgml:
2652           - Tidy up of the menufactory example from
2653             Andy Kahn <kahn@zk3.dec.com>
2654           - New section on Range Widgets from
2655             David Huggins-Daines <bn711@freenet.carleton.ca>
2656           - Started a new section on 'Advanced Event and Signal
2657             Handling' - used an email from Owen.
2658           - New appendix on Gdk Event Types
2659           - Added the tictactoe full example code to the
2660             'Code Examples' appendix
2661
2662 Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>
2663
2664         * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - 
2665           to calculate all the metrics at once of a string, including
2666           things which weren't calculated before.
2667
2668         * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
2669           MenuItem type, that when put as the first thing in a
2670           menu, makes the menu tearoff. Currently drawn as a
2671           dashed line.
2672
2673         * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
2674           "hide_on_activate" to the MenuItem class structure to allow
2675           check and radio buttons to be changed with <Space> without
2676           hiding the menu.
2677
2678         * gtk/gtkitemfactory.c: 
2679           - Create a AccelGroup for each MenuShell we create.
2680           - If an '_' appears before a  character 'c' in the path,
2681             then make 'c' an accelerator in the menu's accel group,
2682             and if the menuitem is menubar <alt>C an accelerator 
2683             in the itemfactory's accel group. Double '__' inserts
2684             a literal '_'
2685
2686         * gtk/gtklabel.[ch]: Add support for a pattern arg - 
2687           which is a string. If an '_' appears in this string,
2688           the corresponding position in the label is underlined.
2689
2690           Add gtk_label_parse_uline() convenience function which
2691           takes a string with embedded underlines, sets the
2692           pattern and label, and returns the accelerator keyval.
2693
2694         * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
2695           Instead, they create a GtkWindow and add themselves
2696           to that. (When torn off, another new feature, they
2697           create another GtkWindow to hold the torn off menu)
2698
2699           New function gtk_menu_set_tearoff_state()
2700         
2701         * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: 
2702           Added action signals  for keyboard navigation of menus.
2703
2704         * gtk/gtkmenushell.c: Key press handler which activates
2705           bindings for navigation, and accelerators, for handling
2706           underline accelerators. Exported functions to select 
2707           and activate menu items in a menushell.
2708
2709         * gtk/testgtk.c: Added a new "Item Factory" test which
2710           tests GtkItemFactory and the new keyboard navigation
2711           of menus.
2712
2713 Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>
2714
2715         * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
2716         external functions have been called. also relookup nodes after
2717         this function has been invoked.
2718
2719 Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>
2720
2721         * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
2722           beginning of Text when creating the Text widget.
2723
2724         * gtk/testgtk.c: Grab the focus on the text widget so
2725           as to test out the above.
2726
2727 Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>
2728
2729         * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16. 
2730           ::changed is a notification signal and should have no default
2731           handler. A complete redraw of the Text widget does _not_ need to
2732           be done on every text insertion.
2733
2734 Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
2735         (gtk-abilleira-072198-patch)
2736
2737         * gtk/gtkwindow.[ch]: 
2738           Add gtk_window_set_modal() which sets a flag; when
2739           set the window does a gtk_grab_add() when the window
2740           is shown, and a gtk_grab_remove() when the window
2741           is hidden. 
2742
2743         * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
2744           that case will run "Create Dir","Delete File" and "Rename File" 
2745           dialogs as modal too.
2746
2747         * gtk/testgtk.c: Added a button with an example of creating modal 
2748           dialog boxes. Including file selection and color selection standard
2749           dialogs.
2750         
2751 Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>
2752
2753         * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
2754           Removed CAN_FOCUS by default from scrollbars, button
2755           children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
2756           (Scrollbar definitely good change, toolbar bit more questionable)
2757
2758 Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>
2759
2760         * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
2761         Pettersen).
2762
2763 Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>
2764
2765         * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0; 
2766           added all logical operations to gc->function.
2767
2768 Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>
2769
2770         * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
2771         gtk_widget_size_allocate instead of gtk_widget_queue_resize
2772         if the visibility state of a scrollbar changes.
2773
2774 Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>
2775
2776         * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
2777
2778 Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>
2779
2780         * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
2781         gtk_clist_merge and gtk_clist_mergesort. :)
2782
2783 1998-08-06  Martin Baulig  <martin@home-of-linux.org>
2784
2785         * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
2786         `mergesort' -> `my_mergesort'.
2787
2788 Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>
2789
2790         * gtk/gtkenums.h: new enum GtkSortType.
2791         
2792         * gtk/gtkclist.h:
2793         * gtk/gtkclist.c:
2794         Added sorting capabilities to GtkCList. New APIs :
2795         gtk_clist_set_compare_func, gtk_clist_set_sort_column,
2796         gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort. 
2797         New internal functions : default_compare, merge, mergesort.
2798
2799         (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
2800         
2801         (gtk_clist_insert): Modified to handle gtk_clist_append and the
2802         auto sort flag. Changed the return value from void to gint to
2803         return the row number where the element was actually inserted.
2804
2805         (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
2806         
2807         * gtk/gtkctree.h:
2808         * gtk/gtkctree.c:
2809         Removed the auto_sort flag, replaced ctree->node_compare with
2810         clist->compare all over the place, modified default_compare to
2811         match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
2812         gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
2813
2814         * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
2815         sorting. The lists can be sorted by a column by clicking the 
2816         corresponding title button.
2817         
2818 Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
2819
2820         * Released GTK+ 1.1.1
2821
2822 Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>
2823
2824         * gtk/gtkctree.h:
2825         * gtk/gtkctree.c:
2826         (gtk_ctree_find): changed to return a gboolean
2827         (gtk_ctree_insert_gnode): new function for recursive insertion of a
2828         GNode tree.
2829         (gtk_ctree_real_select_recursive): fix for extended selection
2830         (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
2831         (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
2832
2833 Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>
2834
2835         * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
2836         GLib version 1.1.1 is now required at minimum.
2837
2838         * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
2839         of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
2840
2841 Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>
2842  
2843         * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
2844           cursor before (possibly) deleting the cursor's text
2845           property.
2846  
2847         * gtk/gtktext.c (correct_cache_delete): More attempts
2848           to clean the line-start cache up after inserting
2849           a property. Among other things, make sure to
2850           fix up text->current_line, since it is used to 
2851           refetch the changed lines.
2852  
2853 Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>
2854
2855         * gtk/gtktable.[ch]: Empty rows/columns of the table
2856         should not have been marked as being able to shrink.
2857         (Fixes problem with shrinking scrollbarless GIMP canvases)
2858
2859 1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2860
2861         * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
2862         function to find a row by its data pointer using a custom
2863         comparison function.
2864
2865 Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>
2866
2867         * gtk/gtkclist.c: draw the buttons during a "draw" as well,
2868           this fixes a bug when the whole widget is made non-sesitive
2869           the buttons weren't redrawn
2870
2871 Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>
2872
2873         * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
2874         * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
2875         * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
2876
2877 Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>
2878
2879         * gdk/gdkwindow.c (gdk_window_reparent): Change 
2880           window_private->parent pointer when reparenting.
2881
2882 Sat Aug  1 22:17:00 1998  Raph Levien  <raph@acm.org>
2883
2884         * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
2885         with the standalone release.
2886
2887 Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>
2888
2889         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
2890         (gtk_clist_button_release) (new_column_width): Few fixes for
2891         column resize. Store resize column in clist->drag_pos.
2892
2893 Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>
2894
2895         * gtk/gtkctree.h 
2896         * gtk/gtkctree.c 
2897         * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
2898         to GtkCTreeNode *node.
2899
2900         * gtk/gtklist.h : added extended selection mode and auto scrolling.
2901         (struct _GtkList): removed unneeded variables timer, button,
2902         selection_start_pos, selection_end_pos, scroll_direction, have_grab.
2903         Added new variables undo_selection, undo_unselection, last_focus_child,
2904         undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
2905         drag_selection, add_mode.
2906  
2907         New functions :
2908         (gtk_list_extend_selection), (gtk_list_start_selection),
2909         (gtk_list_end_selection), (gtk_list_select_all),
2910         (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
2911         (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
2912         (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
2913         (gtk_list_undo_selection), (gtk_list_end_drag_selection)
2914         
2915         * gtk/gtklist.c : 
2916         (gtk_list_enter_notify): removed, because auto scrolling now works
2917         with gtk_list_motion_notify
2918  
2919         New functions, needed for auto scrolling :
2920         (gtk_list_motion_notify) (gtk_list_move_focus_child)
2921  
2922         New functions for extended selection support :
2923         (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
2924         (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
2925         (gtk_list_focus_lost)
2926         
2927         (gtk_list_set_focus_child): modified gtk_container_set_focus_child
2928         function to support auto scrolling, and avoid out-of-sync errors in
2929         case auf GTK_SELECTION_BROWSE
2930         (gtk_list_focus): modified gtk_container_focus function to avoid out
2931         off sync errors in case auf GTK_SELECTION_EXTENDED
2932
2933         * gtk/gtklistitem.h 
2934         * gtk/gtklistitem.c :
2935         New signal functions for key binding support :
2936         (toggle_focus_row), (select_all), (list_item), (unselect_all)
2937         (list_item), (undo_selection), (start_selection), (end_selection)
2938         (extend_selection), (scroll_horizontal), (scroll_vertical),
2939         (toggle_add_mode)
2940         (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
2941         GDK_KEY_RELEASE_MASK
2942         (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
2943  
2944         * gtk/gtkcombo.c :
2945         (gtk_combo_popup_button_press):  grab pointer for combo->list
2946         (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
2947         (gtk_combo_list_key_press): take care of which child HAS_GRAB
2948         (gtk_comb_init): don't connect combo->button with button_release_event
2949
2950 Thu Jul 30 12:39:36 1998  Lars Hamann  <lars@gtk.org>
2951
2952         * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
2953
2954 Wed Jul 29 23:31:50 1998  Lars Hamann  <lars@gtk.org>
2955
2956         * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
2957         horizontal autoscrolling, GtkCTree's 'reorder ability' now works
2958         with horizontal and vertical autoscrolling.
2959
2960 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2961
2962         * gtk/docs/man: new directory
2963         * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
2964
2965 Tue Jul 28 00:03:20 1998  Lars Hamann  <lars@gtk.org>
2966
2967         * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
2968         bug
2969
2970 Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>
2971
2972         * docs/gtk_tut.sgml: GtkTree section from
2973           David Huggins-Daines <bn711@freenet.carleton.ca>,
2974           add a GtkText widget example
2975         * examples/text/* example/tree/* : new examples for the
2976           GtkTree and GtkText widgets
2977         * docs/gtk_tut.sgml: added an appendix to hold complete code
2978           examples that aren't in a full form elsewhere in the
2979           tutorial (e.g. scribble)
2980
2981 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2982
2983         * Released GTK+ 1.1.0
2984
2985 Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>
2986
2987         * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
2988         the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
2989
2990 Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>
2991
2992         * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
2993         values are looked up.
2994
2995         * gtk/gtktypeutils.h:
2996         * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
2997         gtk_type_enums_find_value to lookup enum values.
2998
2999         * gtk/gtkctree.h: 
3000         * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
3001         GtkCTreeExpansionType. fixed signal creations to pass the enum
3002         types not just the base type GTK_TYPE_ENUM.
3003
3004         * gtk/gtkclist.h: 
3005         * gtk/gtkclist.c: fixed signal creations to pass the real enum
3006         types not just the base type GTK_TYPE_ENUM.
3007
3008 Sun Jul 26 14:50:07 1998  Stefan Jeske  <stefan@gtk.org>
3009
3010         * gtk/testgtk.c : 
3011         Began cleanup, e.g. use gtk_widget_show_all instead of many 
3012         gtk_widget_show's. Completely rewrote the button box sample
3013         (only one window now). Removed "miscellaneous" button.
3014
3015 Sun Jul 26 14:48:14 1998  Stefan Jeske  <stefan@gtk.org>
3016
3017         * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate): 
3018         Fixed wrong allocation for GTK_BUTTONBOX_END.
3019         (allocation->x  =>  allocation->y)
3020
3021 Sun Jul 26 14:06:37 1998  Lars Hamann  <lars@gtk.org>
3022
3023         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
3024         (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
3025         
3026         * gtk/gtkctree.c (real_tree_select): added check to avoid double
3027         selected rows
3028         (gtk_ctree_button_press)
3029         (gtk_ctree_button_release): fix for pointer grab
3030
3031 Sat Jul 25 13:16:00 1998 Damon Chaplin  <DAChaplin@msn.com>
3032
3033         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): 
3034         Fixed initialization problem - dirty memory could cause problems.
3035         Also checked that bitmapped fonts can be scaled when showing the
3036         available sizes.
3037
3038 Sat Jul 25 02:25:03 1998  Lars Hamann  <lars@gtk.org>
3039
3040         * gtk/gtkctree.c (gtk_ctree_sort_recursive)
3041         (gtk_ctree_sort_recursive): test for node != NULL
3042         (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
3043         (gtk_ctree_last) : added sanity checks
3044         * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
3045
3046 Fri Jul 24 18:15:49 1998  Lars Hamann  <lars@gtk.org>
3047
3048         * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
3049
3050 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
3051
3052         * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
3053
3054 Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
3055
3056         * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
3057         to check out binding priorities. someone should really write
3058         gtkrc-mode for emacs.
3059
3060         * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
3061         * gtk/testgtk.c (main): and move it here ;). this test says something
3062         on release of C-9. (this works only if the mouse pointer is on a
3063         spinbutton and there is no focus widget).
3064
3065         * gtk/gtkrc.h:
3066         * gtk/gtkrc.c:
3067         export gtk_rc_parse_color, gtk_rc_parse_state and a new function
3068         gtk_rc_parse_priority to parse path priority types.
3069         export rc tokens.
3070         feature binding parsing.
3071
3072 Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
3073
3074         * gtk/gtkbindings.h: 
3075         * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
3076         feature binding parsing in rc files.
3077         * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
3078         * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
3079         order the bindings with lowest priority first.
3080
3081 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
3082
3083         * gdk/gdkrgb.c: actually builds and runs properly on big
3084         endian machines now, because we #include config.h. Also
3085         fixed up a compile error in the WORDS_BIGENDIAN case in
3086         gdk_rgb_convert_565_gray. I made the fix by looking at
3087         patterns in the other code; Raph can you verify this?
3088
3089         * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
3090         warnings
3091
3092 Wed Jul 22 23:00:44 1998  Lars Hamann  <lars@gtk.org>
3093
3094         * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse) 
3095         (tree_toggle_expansion) (real_select/unselect_row)
3096         (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
3097
3098 Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>
3099
3100         * gtk/gtktext.c (new_text_property): We free things from
3101         the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
3102
3103         * Fix up line start cache when splitting a property
3104         during an insert.
3105
3106 Wed Jul 15 21:15:52 1998  Owen Taylor  <otaylor@redhat.com>
3107
3108         * gtk/gtkwidget.c: restauration => restoration
3109
3110 Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>
3111
3112         * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
3113         hasn't been created yet, don't do the lookup.
3114
3115 1998-07-20  Raph Levien  <raph@acm.org>
3116
3117         * gdk/gdkrgb.c: More cleanups in the config process.
3118
3119 1998-07-20  Raph Levien  <raph@acm.org>
3120
3121         * gdkrgb.c: Fixed minor config bug preventing big-endian
3122         architectures from working.
3123
3124 Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>
3125
3126         * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
3127         activity indicator. It is settable now as a fraction of the
3128         total width/height using gtk_progress_bar_set_activity_blocks.
3129         Renamed gtk_progress_bar_set_number_of_blocks to
3130         gtk_progress_bar_set_discrete_blocks.
3131
3132 Mon Jul 20 21:28:18 1998  Lars Hamann  <lars@gtk.org>
3133
3134         * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
3135         (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
3136         tree to specified depth
3137         (gtk_ctree_expand_to_depth): expand tree to specified depth
3138         (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
3139
3140 Sun Jul 19 23:51:05 1998  Lars Hamann  <lars@gtk.org>
3141
3142         * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
3143         of GTK_CLIST_ADD_MOD
3144         * gtk/testgtk.c (add1000_clist): changed pixmap
3145
3146 Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>
3147
3148         * gtk/gtkmain.h: 
3149         * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
3150
3151         * gtk/gtktypeutils.h:
3152         * gtk/gtkitemfactory.h: remove "void" from prototypes again.
3153
3154 Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>
3155
3156         * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
3157         CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
3158         (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
3159         CHILD_ARG_POSITION
3160         (gtk_notebook_reorder_child): new funktion to change position of a
3161         notebook page
3162         (gtk_notebook_draw_arrow): draw left/right arrow with
3163         GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
3164
3165         * gtk/gtkstyle.c (gtk_default_draw_arrow):
3166         added GTK_SHADOW_ETCHED_IN/OUT
3167
3168 Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>
3169
3170         * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
3171           gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
3172         Introduced generic GtkProgress widget. Derived GtkProgressBar from
3173         GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
3174
3175 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
3176
3177         * gtk/gtktypeutils.h
3178         * gtk/gtkitemfactory.h: explicitly specify void in prototype
3179
3180 Fri Jul 17 17:54:02 1998  Lars Hamann  <lars@gtk.org>
3181
3182         * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
3183         of list
3184
3185 Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>
3186
3187         * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
3188         sropped the approach of copying all signal specific data into a
3189         GtkHandlerInfo structure. we rather keep the signal data on the stack
3190         in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
3191         avoids multiple lookups of the signal pointer and works savely together
3192         with destroy notifiers of handlers.
3193
3194         * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
3195         someone destroys the entry on the ::activate signal.
3196
3197 Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>
3198
3199         * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
3200         instead of ypad (typo).
3201         (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
3202         border around the allocation).
3203         (gtk_arrow_init): the static requisition needs to be setup in this
3204         function rather than gtk_widget_new(), so arrow creation works without
3205         the gtk_arrow_new() constructing.
3206         (gtk_arrow_expose): return TRUE, since we actually handled the expose.
3207
3208         * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
3209         implementation for GtkWidget::size_request, so size requisition for
3210         simple statically sized widgets like GtkArrow works.
3211
3212 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
3213
3214         * gtk-config.in: minor changes to gtk-config: --cflags doesn't
3215         prepend -I@libdir@/glib/include anymore, since glib-config handles
3216         it; --libs strips out redundant -L<path>'s properly (there was
3217         code in there to do it before, but it didn't work)
3218
3219 Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>
3220
3221         * gtk/gtknotebook.h: 
3222         * gtk/gtknotebook.c: signdness corrections all ove the place.
3223         implementation of object arguments: GtkNotebook::enable_popup,
3224         GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
3225         GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
3226         begun implementation of child args, we have GtkNotebook::tab_label, but
3227         GtkNotebook::menu_label and GtkNotebook::position still lack the
3228         implementation.
3229         (gtk_notebook_remove_page):
3230         (gtk_notebook_current_page): allow negative indices (-1) as alias for
3231         the last page.
3232
3233         * gtk/gtkentry.h:
3234         * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
3235         arguments GtkEntry::max_length and GtkEntry::visibility.
3236         (gtk_entry_adjust_scroll): queue a redraw.
3237
3238         * gtk/gtkeditable.h:
3239         * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
3240         object arguments GtkEditable::text_position and GtkEditable::editable.
3241         new (action) signal GtkEditable::set_editable.
3242         provide a default handler for GtkEditable::changed that queues a redraw.
3243
3244         * gtk/gtktext.h: 
3245         * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
3246         set_editable.
3247
3248 Thu Jul 16 14:42:11 1998  Lars Hamann  <lars@gtk.org>
3249
3250         * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
3251         case of drag_target == NULL
3252         * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
3253         Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
3254         * gtk/gtkfilesel.c (gtk_file_selection_file_button,
3255         gtk_dir_selection_file_button): fix due to changes in clist's
3256         select_row signal.
3257
3258 Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
3259
3260         * gtk/gtkwidget.h:
3261         * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
3262         similar to gtk_widget_set_uposition(). that is: -1=unspecified,
3263         -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
3264         to be gint16s rather than guint16s, since that's what the code expected
3265         (for a long time actually).
3266
3267         * gtk/gtkviewport.c:
3268         added support for object arguments: GtkViewport::shadow_type,
3269         GtkViewport::vadjustment and GtkViewport::hadjustment.
3270         (gtk_viewport_add): chain gtk_bin_add.
3271
3272         * gtk/gtkscrolledwindow.c: 
3273         added support for object argument: GtkScrolledWindow::hscrollbar_policy,
3274         GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
3275
3276         * gtk/gtkadjustment.h: 
3277         * gtk/gtkadjustment.c: 
3278         * gtk/gtkctree.h: 
3279         * gtk/gtkclist.h: 
3280         * gtk/gtkctree.c: 
3281         * gtk/gtkclist.c:
3282         * gtk/gtkscrolledwindow.h:
3283         * gtk/gtkscrolledwindow.c:
3284         * gtk/gtkviewport.h:
3285         * gtk/gtkviewport.c:
3286         GtkType and macro fixups.
3287
3288 Thu Jul 16 01:10:02 1998  Lars Hamann  <lars@gtk.org>
3289
3290         * gtk/gtkctree.h :
3291         * gtk/gtkctree.c :
3292         Added focus handling, horizontal and vertical autoscrolling,
3293         extended Selection Mode, key bindings
3294         Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
3295         Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
3296         Removed gtk_ctree_clear.
3297         
3298         * gtk/gtkclist.h :
3299         * gtk/gtkclist.c : 
3300         Added focus handling, horizontal and vertical autoscrolling,
3301         extended Selection Mode, key bindings
3302
3303 Wed Jul 15 12:39:27 1998  Raph Levien  <raph@acm.org>
3304
3305         * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
3306         source tree. For more information on GdkRgb, please see:
3307         http://www.levien.com/gdkrgb/
3308
3309         * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
3310         bothers me slightly that the feature is in gdk, and this file is
3311         in gtk, but it's probably ok.
3312
3313         * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
3314
3315         * gdk/gdkrgb.c:
3316         * gdk/gdkrgb.h: Added this module.
3317
3318         * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
3319
3320         * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
3321
3322 Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>
3323
3324         * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
3325         to this function. it needs to relookup the signal multiple times.
3326         this fixes spurious segfaults that could show up with signal intensive
3327         code, when classes are created during a pending emission (which is
3328         normal case).
3329
3330 Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>
3331
3332         * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
3333         child if it isn't a label.
3334
3335 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
3336
3337         * gtk/gtkdialog.h: 
3338         * gtk/gtkseparator.h: 
3339         * gtk/gtkhseparator.h: 
3340         * gtk/gtkvseparator.h: macro and GtkType fixups.
3341
3342 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
3343
3344         * gtk/testgtk.c (create_cursors): display the current cursor name.
3345
3346         * gtk/gtktypeutils.h: 
3347         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
3348         the fundamental type definition. the GtkArg union now only covers
3349         the required storage types for argument values. adapted the GTK_VALUE_*
3350         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
3351
3352         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
3353         code, fixed int/float collection. fixed a bug in the sanity checking
3354         code for GtkObjects.
3355
3356         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
3357         argument collection code.
3358
3359         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
3360         macros when distinguishing the return type.
3361
3362 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
3363
3364         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
3365           is not NULL before trying to g_list_remove the child. A patch
3366           from Michael Lausch.
3367
3368 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
3369
3370         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
3371         collection (always casted to doubles upon argument passing).
3372
3373 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
3374
3375         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
3376         object_init_func for derived objects with the object's ->klass field
3377         still pointing to the corresponding base class, otherwise overridden
3378         class functions could get called with partly-initialized objects.
3379         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
3380
3381 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
3382
3383         * gtk/gtkobject.h:
3384         * gtk/gtkobject.c:
3385         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
3386
3387         * gtk/gtkcontainer.h:
3388         * gtk/gtkcontainer.c:
3389         (gtk_container_child_arg_get_info): new function which wraps
3390         gtk_arg_get_info().
3391
3392 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
3393
3394         * gtk/gtkcontainer.c:
3395         (gtk_container_arg_get): 
3396         (gtk_container_arg_set): 
3397         * gtk/gtkobject.c:
3398         (gtk_object_arg_set): 
3399         (gtk_object_arg_get):
3400         strictly check for the associated get/set arg functions. if an
3401         arg is readable or writable, the associated class functions *must*
3402         be provided.
3403
3404 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
3405
3406         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
3407         padding into account if there is an accelerator.
3408
3409 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
3410
3411         * gtk/gtkcontainer.c:
3412         (gtk_container_add_with_args): collect the arguments with
3413         gtk_container_child_args_collect, not through gtk_object_args_collect.
3414         (gtk_container_child_set): likewise.
3415
3416 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
3417
3418         * gtk/gtktypeutils.h: 
3419         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
3420         which is derived from GTK_TYPE_STRING.
3421
3422         * gtk/gtkbindings.c: reworked the argument type handling.
3423
3424 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3425
3426         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
3427           so that it seems to allow normal operation in those modes,
3428           although you will only see black  (GIMP toolbar now pops up,
3429           just don't create a new image and GIMP now works in 4 bit.)
3430
3431 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3432
3433         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
3434           array, which was too low (?)
3435
3436 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
3437
3438         * gtk/gtkcontainer.h: 
3439         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
3440         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
3441         we now export a new function gtk_container_child_args_collect().
3442         for consistency with the object arguments, a few functions got renamed:
3443         gtk_container_child_arg_get -> gtk_container_child_get,
3444         gtk_container_child_arg_set -> gtk_container_child_set,
3445         gtk_container_child_arg_getv -> gtk_container_child_getv,
3446         gtk_container_child_arg_setv -> gtk_container_child_setv,
3447         gtk_container_add_with_argv -> gtk_container_addv.
3448         note, gtk_container_add_with_args() remained, because its equivalent
3449         would be gtk_container_add(,, ...) which would break all existing code.
3450         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
3451         we expect the `arg_name' argument to be a const static string now.
3452         (gtk_container_get_child_arg_type): function removed.
3453
3454 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
3455
3456         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
3457         this is a static inline function that collects command line arguments
3458         from a va_list. this file can just be included in all places that
3459         need this functionality.
3460
3461         * gtk/gtkarg.h: 
3462         * gtk/gtkarg.c: new files which implement most of the argument
3463         handling stuff from gtkobject.c. also collected a few more
3464         gtk_arg_* utility functions from else places.
3465
3466         * gtk/gtkobject.h: 
3467         * gtk/gtkobject.c: moved most of the argument handling code into
3468         gtkarg.c. we now export gtk_object_args_collect() as a non-public
3469         method with a blind va_list pointer.
3470         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
3471         const static string now.
3472         (gtk_object_get_arg_type): function got removed.
3473
3474         * gtk/gtkwidget.c: 
3475         (gtk_widget_set): 
3476         (gtk_widget_new): adaptions for gtk_object_args_collect().
3477
3478         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
3479         fundamental type name so as to have a valid prefix, e.g. "bool"->
3480         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
3481         though that should probably be something like GtkNone since the
3482         type itself is called GTK_TYPE_NONE.
3483         even the internal type names need to avoid name clashes and must live
3484         in their own namespace, several code portions rely on that.
3485         we should relly have typedefs such as typedef gchar* GtkString; so the
3486         fundamental type names can be used for code dumpers just like with all
3487         the Gtk/Gdk types.
3488
3489 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
3490
3491         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
3492         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
3493         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
3494         (GTK_RELIEF_HALF).
3495         (gtk_button_paint): set the background for prelighted buttons with
3496         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
3497         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
3498         the shadow type (otherwise we get strange shadows for coloured buttons).
3499         (gtk_button_set_relief): queue a redraw after changing
3500         the relief.
3501         (gtk_button_class_init): 
3502         (gtk_button_set_arg): 
3503         (gtk_button_get_arg): added object argument "GtkButton::relief".
3504
3505         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
3506
3507 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
3508
3509         * gtk/gtkbutton.h:
3510         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
3511         GTK_BIN (button)->child to button->child to keep source compatibility.
3512
3513         * gtk/gtkoptionmenu.c:
3514         * gtk/gtkclist.c:
3515         * gtkcheckbutton.c: don't refer to button->child, but
3516         GTK_BIN (button)->child instead.
3517
3518 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
3519
3520         * docs/gtkfaq.sgml: update anon CVS info
3521
3522 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
3523
3524         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
3525         functions.
3526
3527         * gdk/gdkwindow.c:
3528         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
3529         to XFree() calls.
3530
3531 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3532
3533         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
3534         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
3535
3536 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
3537
3538         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
3539
3540 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
3541
3542         * gtk/gtkwidget.h:
3543         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
3544
3545         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
3546         error that prevented signal to entry addition for signals with
3547         parameters.
3548
3549 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
3550
3551         * ltconfig: fix for properly detecting shared lib support on
3552         SunPro cc (taken from libtool 1.2.a)
3553
3554 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
3555
3556         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
3557
3558 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
3559
3560         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
3561         rc set pattern is favoured, this is needed for overriding of style
3562         patterns with subsequently parsed rc files.
3563
3564 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
3565
3566         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
3567         error messages.
3568
3569 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
3570
3571         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
3572         modifier as well.
3573         (gtk_accelerator_name): add "<Release>" to the accelerator name if
3574         neccessary.
3575
3576         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
3577         account.
3578
3579         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
3580         default handler for key-release events, which checks for activation
3581         of GDK_RELEASE_MASK key bindings.
3582
3583         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
3584
3585 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
3586
3587         * gtk/gtkarrow.h: GtkType and macro fixups.
3588         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
3589         "GtkArrow::shadow_type".
3590
3591 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
3592
3593         * gtk/gtkalignment.h:
3594         * gtk/gtkbin.h: GtkType and macro fixups.
3595         
3596         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
3597         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
3598         GtkAlignment::xscale, GtkAlignment::yscale.
3599
3600 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
3601
3602         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
3603         fucntions from all parent types upon class initialization.
3604
3605         * gtk/gtkcontainer.c:
3606         (gtk_container_get_type): announce gtk_container_base_class_init to
3607         the type system.
3608         (gtk_container_base_class_init): new function to feature base class
3609         initialization.
3610         (gtk_container_get_child_arg): 
3611         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
3612         and set_child_arg methods of the class indicated through the argument
3613         name.
3614
3615         * gtk/gtkobject.c:
3616         (gtk_object_base_class_init): new function to feature base class
3617         initialization.
3618         (gtk_object_init_type): announce gtk_object_base_class_init to the type
3619         system.
3620         (gtk_object_class_init): setup the get_arg and set_arg pointers for
3621         GtkObjectClass.
3622         (gtk_object_setv): 
3623         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
3624         instead of bothering the type system with this.
3625
3626         * gtk/gtkaccellabel.c: 
3627         * gtk/gtkbutton.c: 
3628         * gtk/gtkradiobutton.c: 
3629         * gtk/gtktable.c:
3630         * gtk/gtktogglebutton.c: 
3631         * gtk/gtktipsquery.c: 
3632         * gtk/gtkbox.c: 
3633         * gtk/gtkpacker.c: 
3634         * gtk/gtkwidget.c: 
3635         * gtk/gtkwindow.c: 
3636         * gtk/gtkframe.c: 
3637         * gtk/gtkmisc.c:
3638         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
3639         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
3640         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
3641         arg functions to take a GtkObject argument.
3642
3643         gtk/gtkadjustment.c:
3644         gtk/gtkalignment.c:
3645         gtk/gtkarrow.c:
3646         gtk/gtkaspectframe.c:
3647         gtk/gtkbbox.c:
3648         gtk/gtkbin.c:
3649         gtk/gtkcheckbutton.c:
3650         gtk/gtkcheckmenuitem.c:
3651         gtk/gtkclist.c:
3652         gtk/gtkcolorsel.c:
3653         gtk/gtkcombo.c:
3654         gtk/gtkctree.c:
3655         gtk/gtkcurve.c:
3656         gtk/gtkdata.c:
3657         gtk/gtkdialog.c:
3658         gtk/gtkdrawingarea.c:
3659         gtk/gtkeditable.c:
3660         gtk/gtkentry.c:
3661         gtk/gtkeventbox.c:
3662         gtk/gtkfilesel.c:
3663         gtk/gtkfixed.c:
3664         gtk/gtkfontsel.c:
3665         gtk/gtkgamma.c:
3666         gtk/gtkhandlebox.c:
3667         gtk/gtkhbbox.c:
3668         gtk/gtkhbox.c:
3669         gtk/gtkhpaned.c:
3670         gtk/gtkhruler.c:
3671         gtk/gtkhscale.c:
3672         gtk/gtkhscrollbar.c:
3673         gtk/gtkhseparator.c:
3674         gtk/gtkimage.c:
3675         gtk/gtkinputdialog.c:
3676         gtk/gtkitem.c:
3677         gtk/gtkitemfactory.c:
3678         gtk/gtklist.c:
3679         gtk/gtklistitem.c:
3680         gtk/gtkmenu.c:
3681         gtk/gtkmenubar.c:
3682         gtk/gtkmenuitem.c:
3683         gtk/gtkmenushell.c:
3684         gtk/gtknotebook.c:
3685         gtk/gtkoptionmenu.c:
3686         gtk/gtkpaned.c:
3687         gtk/gtkpixmap.c:
3688         gtk/gtkpreview.c:
3689         gtk/gtkprogressbar.c:
3690         gtk/gtkradiomenuitem.c:
3691         gtk/gtkrange.c:
3692         gtk/gtkruler.c:
3693         gtk/gtkscale.c:
3694         gtk/gtkscrollbar.c:
3695         gtk/gtkscrolledwindow.c:
3696         gtk/gtkseparator.c:
3697         gtk/gtkspinbutton.c:
3698         gtk/gtkstatusbar.c:
3699         gtk/gtktext.c:
3700         gtk/gtktoolbar.c:
3701         gtk/gtktooltips.c:
3702         gtk/gtktree.c:
3703         gtk/gtktreeitem.c:
3704         gtk/gtkvbbox.c:
3705         gtk/gtkvbox.c:
3706         gtk/gtkviewport.c:
3707         gtk/gtkvpaned.c:
3708         gtk/gtkvruler.c:
3709         gtk/gtkvscale.c:
3710         gtk/gtkvscrollbar.c:
3711         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
3712         match the modified GtkTypeInfo structure.
3713
3714 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
3715
3716         * gtk/testgtk.c: use rand() instead of random() for portability
3717
3718 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
3719
3720         * configure.in
3721         * acconfig.h
3722         * gdk/gdk.c: use native Xlib XConvertCase if it's available
3723
3724 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
3725
3726         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
3727         XConvertCase() functionality from X11R6 on X11R5 systems.
3728
3729 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
3730
3731         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
3732         gdk_string_height, gdk_char_height to retrieve the exact
3733         height of a text.
3734
3735 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
3736
3737         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
3738           by Stefan Mars <mars@lysator.liu.se>
3739         * examples/clist/clist.c examples/clist/Makefile: example code
3740           for GtkCList widget from the Tutorial
3741
3742 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
3743
3744         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
3745         if the container is not visible, we might be a toplevel! this holds
3746         for all other base container implementations as well, that are
3747         candidates to derive toplevels from. in general the resizing code will
3748         care about visibility itself.
3749         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
3750         * gtk/gtkbox.c (gtk_box_remove): likewise.
3751
3752         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
3753         gtk_window_set_hints(), since we haven't calculated the new position
3754         yet.
3755
3756         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
3757         *mask are alway initialized in a sane way, regardless of the return
3758         value.
3759
3760 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
3761
3762         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
3763         to gtk_container_child_arg_setv, but takes a variable argument list.
3764         new function gtk_container_get_child_arg_type, which is needed by
3765         gtk_object_collect_args.
3766
3767         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
3768         take a function pointer to figure the argument type.
3769         adapted callers to pass gtk_object_get_arg_type.
3770         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
3771         gtk_object_get_arg_type..
3772
3773         * gtk/gtkpacker.h: 
3774         * gtk/gtkpacker.c:
3775         (gtk_packer_reorder_child): new function to change the packing order
3776         of a child.
3777         (gtk_packer_size_request): 
3778         (gtk_packer_size_allocate): take container->border_width into acount.
3779
3780         * gtk/gtkpacker.c: implemented widget arguments:
3781         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
3782         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
3783         implemented child arguments:
3784         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
3785         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
3786         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
3787         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
3788
3789         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
3790         not the alignment.
3791
3792         * gtk/gtkeventbox.h:
3793         * gtk/gtkeventbox.c: GtkType and macro fixups.
3794
3795         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
3796         sensitivity of an entry.
3797
3798         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
3799         for insensitive base and text.
3800
3801         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
3802         widget state dependent.
3803         (gtk_entry_style_set): likewise.
3804         (gtk_entry_state_changed): set background color on state changes.
3805         (gtk_entry_draw_text): for non selected text, use state dependent
3806         colors.
3807
3808         * gtk/gtktogglebutton.c: support for widget arguments
3809         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
3810
3811 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
3812
3813         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
3814         code for 1.0.x-like parameters. Changed internal interface of
3815         gtk_spin_button_real_spin. Several fixes to avoid emission of
3816         "value_changed" where possible.
3817
3818 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
3819
3820         * gtk-boxed.defs: s/GkWidget/GtkWidget/
3821
3822 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
3823
3824         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
3825         to select the resize_mode for the idle-labels container.
3826
3827         * gtk/gtkframe.h: 
3828         * gtk/gtkframe.c: GtkType and macro corrections.
3829
3830         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
3831         support widget argument "GtkRadioButton::group".
3832
3833 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
3834
3835         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
3836         unconditionally if resize_mode has changed.
3837
3838         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
3839         GTK_RESIZE_QUEUE on the scrolled window.
3840         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
3841
3842 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
3843
3844         * gtk/gtkcontainer.h:
3845         * gtk/gtkcontainer.c:
3846         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
3847         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
3848         (gtk_container_queue_resize): new function to queue a container for
3849         a *size* reallocation (doesn't affect its position, and thus its
3850         parent is left untouched usually).
3851         (gtk_container_get_resize_container): new function to retrive the next
3852         most resize container which is not itself queued for a resize.
3853         (gtk_container_idle_sizer): new function to carefully process the
3854         container_resize_queue since it can change during invokation of
3855         gtk_container_check_resize().
3856         (gtk_container_resize_children): total rework of this function to
3857         properly handle resize containers. makes a lot of assumptions whitch
3858         are stated in the comments.
3859
3860         * gtk/gtkcontainer.c:
3861         (gtk_container_real_check_resize): only requeue ourselves if we are not
3862         a resize container.
3863         (gtk_container_clear_resize_widgets): care for automatic deletion of our
3864         resize_widgets list on size_allocate through a handler connection.
3865
3866         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
3867         focus and default widget of a window, so to take the burden from
3868         gtk_widget_unparent.
3869
3870         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
3871         to be clever, but actually messed up the resize_children logic and
3872         caused unneccessary allocations on its whole branch. besides this,
3873         it messed up the display by not invoking a redraw after the allocation.
3874
3875         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
3876         that it is the child again that is queued for a resize.
3877         (gtk_table_attach): likewise.
3878         (gtk_table_remove): likewise.
3879
3880 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
3881
3882         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
3883         gtk_entry_adjust_scroll.  Required if you change the cursor
3884         position and want to sync it up with your code (Midnight Commander
3885         gtk front end needs this).
3886
3887         * gtk/gtktable.c: Deal with tables that have size 0, 0.
3888
3889 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
3890
3891         * examples/README.1ST: new file to explain how the
3892           code examples should be extracted from the tutorial.
3893
3894 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
3895
3896         * gtk/gtkctree.c (draw_row): added new "line style"
3897         GTK_CTREE_LINES_TABBED 
3898         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
3899         search the glist pointer of an GtkCTreeRow
3900
3901 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
3902  
3903         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
3904         from, and clean up, the dependencies.  Generate to intermediate
3905         files to prevent problems with Ctrl-C.
3906
3907         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
3908
3909 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
3910
3911         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
3912         - Bug fix for precision problem causing occasional double emission 
3913           of "value_changed" signal (hopefully works now).
3914         - API change (should be binary compatible) : 
3915           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
3916           Modified cursor example appropriately.
3917           To spin by something other than step_/page_increment, use
3918           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
3919         - Made GTK_SHADOW_NONE the default. ;)
3920         - Fixed casting of GtkAdjustment* to GtkWidget* in
3921           gtk_spin_button_value_changed.
3922
3923 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
3924
3925         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
3926         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
3927         resize widget list before queuing the container for a new reize.
3928         (gtk_container_need_resize): changed return value to FALSE, since this
3929         used to indicate that no further resizes are needed.
3930         (gtk_container_set_arg): 
3931         (gtk_container_get_arg): 
3932         (gtk_container_class_init): implemented GtkContainer::resize_mode
3933         argument.
3934
3935         (gtk_container_resize_children): when we walk up the tree of a resize
3936         widget we need to stop if we are the current parent.
3937
3938         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
3939         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
3940         (gtk_widget_hide_all): retrive the toplevel widget from via
3941         gtk_widget_get_resize_container().
3942
3943 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
3944
3945         * gtk/gtklist.c (gtk_list_button_press): Only respond
3946           to selection with button 1. This allows context-sensitive
3947           menus to work correctly.
3948
3949 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
3950
3951         * gtk/gtkaccelgroup.c: 
3952         * gtk/gtkbindings.c: 
3953         * gtk/gtkcontainer.c:
3954         * gtk/gtkitemfactory.c:
3955         * gtk/gtkobject.c: 
3956         * gtk/gtksignal.c:
3957         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
3958         g_quark_from_static_string calls to save memory.
3959
3960         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
3961         function _after_ the new data has been setup.
3962         minor changes to object data functions to feature the GQuark type.
3963
3964 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
3965
3966         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
3967           from argv.
3968
3969 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
3970
3971         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
3972           to be more readable perl, to spit out stuff that looks
3973           more like readable C, and to pipe output through indent
3974           so output looks a lot like readable C. No functional
3975           changes.
3976
3977 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
3978
3979         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
3980           necessary when switching to a masked pixmap. (Based on a patch
3981           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
3982
3983 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
3984
3985         * gtk/gtkeditable.[ch]: Added action signals for keyboard
3986           bindings. (move_cursor, kill_word, etc, etc, etc). 
3987
3988           removed the time argument from
3989           gtk_editable_cut/copy/paste_clipboard (source but not
3990           binary incompatible...) Instead get time from
3991           gtk_get_current_event ().
3992         
3993         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
3994           signals.
3995
3996 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
3997
3998         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
3999
4000         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
4001              parent class to GtkNotebookClass when splitting the widget in
4002              two.  Also updated some comments.
4003
4004         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
4005                button without a font selected.
4006
4007              Fixed bug in set_font_name - I hadn't updated the code to
4008                search for the style in the font_style clist - it was
4009                still assuming the style row was equal to its index,
4010                but it isn't any more.
4011         
4012              Changed 'Reset' button on filter page to 'Clear Filter'.
4013              Deleted old code relating to the old 'Filter Fonts' toggle
4014              Updated some comments.
4015              Cleared 'Actual Fontname' if no font is set.
4016
4017         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
4018              destroying the GtkFontSelection instead of the
4019              GtkFontSelectionDialog.
4020
4021 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
4022
4023         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
4024           flag to make all warnings fatal errors.
4025
4026         * gtk/testthreads.c: moved <pthreads.h> include inside 
4027           #ifdef USE_PTHREADS
4028
4029 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
4030
4031         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
4032           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
4033
4034         - Added new function gtk_container_set_resize_mode() for
4035           fine-grained control of where resize-queueing is done.
4036
4037         - Removed GtkContainer::need_resize and GtkWindow::move_resize
4038         - Added GtkContainer::check_resize to replace need_resize.
4039
4040         - Added function gtk_container_check_resize() to trigger
4041           queued resizes, and gtk_container_resize_children() to
4042           Figure which children need to be size-allocated. (logic
4043           moved from gtkwindow.c)
4044
4045         - Reorganized code in gtkwindow.c
4046         
4047         - Set the resize-mode for viewports so that resizes within
4048           a viewport don't propagate out of it. 
4049         
4050 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4051
4052         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
4053
4054         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
4055         g_return_val_if_fail, because the function *does* return a value.
4056
4057 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
4058
4059         * gtk/gtkaccellabel.h:
4060         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
4061         request the size of the accelerator portion of an accel label.
4062         (gtk_accel_label_size_request): don't request for the accelerators size.
4063         (gtk_accel_label_expose_event): only draw the accelerator if we got
4064         enough extra space.
4065
4066         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
4067         width from children.
4068
4069         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
4070         object (after removal has been requested) check if there is still an
4071         accelerator remaining to avoid adding two accelerators on an object.
4072         this can happen for locked accelerators (or accelerator-frozen widgets).
4073         (gtk_menu_size_request): feature childrens accelerator width in size
4074         requests.
4075
4076         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
4077         gtk_widget_freeze_accelerators() for dynamically created menu items.
4078
4079         * gtk/gtksignal.h: 
4080         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
4081         which will return a handler_id > 0 if the specified function is pending
4082         for `signal_id'.
4083
4084         * gtk/gtkwidget.h:
4085         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
4086         a signal handler function to stop accelerator addition.
4087         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
4088         which will prevent (undo) any accelerators from being added to or
4089         removed from a widget.
4090
4091 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
4092
4093         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
4094         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
4095         acceleration, new API gtk_spin_button_set_snap_to_ticks.
4096
4097 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
4098
4099         * gdk/gdk.h:
4100         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
4101         the current GdkWindow the pointer is on if there is any.
4102         
4103         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
4104         and one column, so we don't construction logic at all. changed a few
4105         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
4106         unsigned int wraps.
4107
4108         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
4109         portion, added an additional check for parent != widget.
4110
4111         * more GtkType and macro fixups.
4112
4113 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4114
4115         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
4116         "clip" parameter, which is the clipping rectangle to use.  This
4117         eliminates the extremely annoying flicker when exposing parts of
4118         the handlebox.
4119
4120 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
4121
4122         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
4123         resizing
4124
4125 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
4126
4127         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
4128         != 0 on the argument.
4129
4130         * gtk/gtktable.h: 
4131         * gtk/gtktable.c: new function gtk_table_resize() which allowes
4132         shrinking and expanding of tables. implementation of widget arguments
4133         and child arguments. many signedness corrections.
4134
4135 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
4136
4137         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
4138         not only the child, otherwise we might end up taking away other
4139         childrens space after the resize.
4140
4141         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
4142         an unknown menu path from any source, that path must always be flagged
4143         as "modified", since we don't really know whether it has its default
4144         value or not.
4145
4146         * gtk/gtktree.c:
4147         * gtk/gtkpacker.c:
4148         * gtk/gtknotebook.c:
4149         * gtk/gtkmenushell.c:
4150         * gtk/gtklist.c:
4151         * gtk/gtkpaned.c:
4152         * gtk/gtkfixed.c: 
4153         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
4154
4155         * gtk/gtkbox.h: 
4156         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
4157         arguments. implemented child arguments.
4158
4159         * more GtkType and macro fixups.
4160
4161 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
4162
4163         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
4164
4165         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
4166         and gtk_clist_get_hadjustment.
4167
4168         * gtk/gtkcontainer.c:
4169         implementation of children arguments, new class member functions
4170         (child_type), (get_child_arg) and (set_child_arg) plus a new field
4171         n_child_args.
4172         (gtk_container_child_type): new function which returns the type of a
4173         child that the container expects for its next addition.
4174         (gtk_container_add_child_arg_type): new function to introduce a new
4175         child argument at class creation time.
4176         (gtk_container_query_child_args): new function to query all child
4177         arguments that are supported by a container class.
4178         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
4179         child argument.
4180         (gtk_container_child_arg_setv): new function to set a child argument for
4181         a certain container and child combination.
4182         (gtk_container_add_with_args):
4183         (gtk_container_add_with_argv): new functions to feature addition of a
4184         new child in combination with the setting of certain child arguments.
4185
4186         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
4187         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
4188         this should really be done through class cretion hooks some day.
4189
4190         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
4191         guint : 16.
4192
4193         * gtk/gtkpacker.h:
4194         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
4195         follow the gtk convention for lower case variable names (important
4196         for language wrappers and widget arguments), and made them guint : 16.
4197
4198         * examples/packer/pack.c: adaptions for the case converted GtkPacker
4199         fields.
4200
4201 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
4202
4203         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
4204         change the character pair for single line comments.
4205         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
4206         GtkItemFactoryClass.
4207         (gtk_item_factory_parse_rc_string): likewise.
4208
4209 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
4210
4211         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
4212         lists from the klass structure to a static structure
4213         in gtkfontsel.c; cleans up global the namespace.
4214
4215 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
4216
4217         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
4218         bug with /*< skip >*/ and remove warning.
4219         
4220 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
4221
4222         * gtk/Makefile.am: Made the gtkmarshal.* generation
4223         rules maintainer-only.
4224
4225 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
4226
4227         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
4228           gtk/Makefile.am gtk/makenums.pl 
4229
4230         Removed out the G_ENUM/FLAGS mechanism in favor
4231         of a perl script that parses the standard headers
4232         (with occasional /*< nick=foo >*/ style overrides)
4233         and extracts the enumerations.
4234
4235           gtk/maketypes.awk: Small improvments to the
4236           translation of names. (Avoid splitting gc into
4237           g_c_.)
4238         
4239 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
4240
4241         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
4242         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
4243         
4244 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
4245
4246         * gtk/gtkentry.c:
4247         - Restored gtk_entry_adjust_scroll to static 
4248         - Changed text positioning code so that we always
4249           display as large a portion of the text as possible.
4250
4251 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
4252
4253         * gtk/gtktext.c (gtk_text_finalize): Free internal
4254         structures of text widget. Also, unreference pixmaps
4255         when unrealizing.
4256         
4257 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
4258
4259         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
4260         3.3.1 bug workaround to number keys starting at 1.
4261
4262 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
4263
4264         * docs/gtk_tut.sgml: Fixed urls for complete example
4265         source for scribble+widget-writing examples.
4266
4267 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
4268
4269         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
4270         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
4271         specs of the form c #abcdef [ more keys ] properly.
4272
4273 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
4274
4275         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
4276         (gtk_spin_button_set_shadow_type):
4277         New API to set the shadow type of the arrow panel.
4278
4279 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
4280
4281         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
4282         code for drawing the child in two places at once. Unfortunately,
4283         not only does it not work anymore (because reparenting has
4284         been fixed), but it also triggers reparent/expose loops
4285         in some cases.
4286
4287         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
4288         an unecessary unrealize.
4289
4290 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
4291
4292         * gdk/gdkwindow.c (gdk_window_reparent): Update the
4293           old and new parents' child window lists properly.
4294
4295 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
4296
4297         * gtk/gtkpacker.h:
4298         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
4299         and GtkSideType, to be consistent with the rest of Gtk's enum
4300         definitions. wrapped the enum definitions with the G_ eunm wrappers.
4301         spelled out the GTK_ANCHOR_* enum values, since single letters don't
4302         work out corectly as nick-names (left the old values as aliases).
4303         some signdness corrections (border-width, spacing), could stand more.
4304
4305 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4306
4307         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
4308           Added gtkpacker
4309
4310         * examples/packer/pack.c, examples/packer/Makefile: Added
4311           gtkpacker example
4312
4313 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
4314
4315         * gtk/gtktext.c (remove_cache_line): Fixed broken
4316         list-removal code.
4317
4318         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
4319         Check bounds before deleting.
4320
4321 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
4322
4323         * autogen.sh: Support ACLOCAL_FLAGS
4324
4325 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
4326
4327         * gtk-config.in: Added missing quotes.
4328
4329 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
4330
4331         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
4332
4333 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
4334
4335         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
4336         G_COMPILED_WITH_DEBUGGING.
4337
4338         * configure.in (fd_set): Explain check better.
4339
4340         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
4341         the version from which gtk+'s libtool forked.  Needed for people
4342         who use post-1.2 alphas of libtool.
4343
4344 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
4345
4346         * glib/* Moved to glib module
4347
4348         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
4349           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
4350
4351           configuration changes for the above:
4352          
4353           - Use AM_PATH_GLIB by default to find glib; also accept
4354             a --with-glib option for using an uninstalled glib.
4355          
4356           - Put --enable-debug information into config.h so
4357             that we rebuild when it changes. (was in glibconfig.h)
4358
4359 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
4360
4361         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
4362
4363         * gtk/gtknotebook.h (struct _GtkNotebookClass):
4364         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
4365         added missing argument (according to Joseph Coleman's bug report)
4366
4367         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
4368         function to fix notebook focus handling
4369         
4370 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
4371
4372         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
4373           glib/gutils.c glib/testglib.c glib/gdataset.c
4374           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
4375           gtk/gtktext.c gtk/gtkbindings.c:
4376
4377          renamed g_const_pointer => gconstpointer
4378
4379 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
4380
4381         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
4382         invoked with (NULL, NULL); (this worked sometime ago).
4383
4384         * gtk/gtktypeutils.h: 
4385         * gtk/gtktypeutils.c: enum and flags type creation can now be done
4386         through gtk_type_register_enum() and gtk_type_register_flags(),
4387         which allow to specify the enum value arrays directly.
4388         the NULL terminated value arrays can be retrived through
4389         gtk_type_enum_get_values() and gtk_type_flags_get_values();
4390         (gtk_type_children_types): new function to query derived types.
4391
4392 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
4393
4394         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
4395         environment to genmarshal.pl.
4396         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
4397         rule), and removed it where not needed (in the dependencies).
4398
4399         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
4400
4401 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
4402
4403         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
4404         was just g_direct_hash.
4405
4406 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
4407
4408         * configure.in: x_libs=, not $x_libs=. Enough said.
4409           (Case only hit for --disable-xshm)
4410         
4411 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
4412
4413         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
4414           when testing for X libraries, don't replace them. Because
4415           the user might have specified the path to the X libraries
4416           themself before running configure.
4417
4418         * examples/**.c: Changed all gpointer * to gpointer
4419         
4420 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4421
4422         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
4423         fleur_cursor field.  Now the cursor is created/destroyed on demand
4424         by the routines that need it.
4425
4426         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
4427         (gtk_handle_box_motion): The fleur cursor is created and destroyed
4428         only when needed.
4429
4430 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
4431
4432         * gtk/gtktypeutils.h: 
4433         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
4434         gtk_enum_set_values to gtk_type_enum_get_values and
4435         gtk_type_enum_set_values respectively, since they are actually type
4436         system features.
4437
4438         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
4439         my last commit. ;)
4440
4441 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
4442
4443         * gtk/gtkselection.h: 
4444         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
4445         gtk_selection_data_free.
4446
4447         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
4448         for "selection_received", which was completely bogus.
4449         * other fixups to gtk_signal_new() calls all over the place.
4450
4451         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
4452         * gtk/gtktypebuiltins_vars.c: type variable implementations.
4453         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
4454         declarations.
4455         * gtk/gtktypebuiltins_evals.c: enum value arrays.
4456         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
4457         gtk.defs.
4458         * gtk/gtk.defs: generated file with scheme syntax for type definitions
4459         of gtk and gdk structures and enums.
4460         * gtk/gtktypeutils.h: 
4461         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
4462         macros anymore (this fixes binary incompatibility with new enum
4463         definitions).
4464
4465         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
4466         key bindings for this widget.
4467         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
4468         handler.
4469
4470         * gtk/gtkobject.h:
4471         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
4472         again. new functions gtk_object_class_user_signal_new () and
4473         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
4474         flag on the signal creation.
4475
4476 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
4477
4478         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
4479
4480 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
4481
4482         * gdk/gdkprivate.h: 
4483         * gdk/gdktypes.h: 
4484         * gtk/gtkprivate.h: 
4485         * gtk/gtkwidget.h: 
4486         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
4487
4488         * reworked enum value array generation code. gtk.defs is a generated
4489         file now.
4490
4491 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
4492
4493         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
4494         check menu items in the compatibility code (this required me to remove
4495         the "<check>" part from the menu item name, grrr).
4496
4497 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
4498
4499         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
4500         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
4501         
4502 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
4503
4504         * gtk/gtkitemfactory.h: 
4505         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
4506         additions to the dumping code to feature GtkPatternSpec.
4507         even found a bug to fix in the original code ;)
4508         
4509 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
4510
4511         * gtk/gtkitemfactory.c: support different types of callbacks, to
4512         maintain existing code.
4513
4514 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
4515
4516         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
4517
4518         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
4519         this should eventually be done by gentypeinfo.el somewhen.
4520         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
4521
4522         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
4523         enum values of an enum type.
4524
4525         * gtk/gtk.defs:
4526         * gtk/gtkcurve.h: 
4527         * gtk/gtkobject.h: 
4528         * gtk/gtkprivate.h: 
4529         * gtk/gtkwidget.h:
4530         * gtk/gtkenums.h: 
4531         brought enum/flags definitions in sync, added a few more enum
4532         definitions for bindings and pattern matching.
4533
4534         * some more macro and GtkType fixups in various places.
4535
4536         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
4537         as a key-release modifier for the binding system.
4538
4539 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
4540
4541         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
4542         was a stale list pointer that is already present in GtkMenuShell.
4543
4544         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
4545         GtkMenuShell::selection_done which is emitted after the menu shell
4546         poped down again and all possible menu items have been activated.
4547
4548 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
4549
4550         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
4551         before activation of the menuitem, so the menu is actually taken off the
4552         screen prior to any menu item activation.
4553
4554         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
4555         for NULL nodes.
4556
4557         * gtk/gtkwidget.h:
4558         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
4559         the emission of the "add-accelerator" signal on a widget. this is
4560         usefull to prevent accelerator installation on certain widgets.
4561
4562         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
4563         labels left justified, by setting their alignment. stop accelerator
4564         installation for the menu items, since we use dynamic menus.
4565
4566 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
4567
4568         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
4569         should *really* use GtkItemFactory. this is only for preserving source
4570         compatibility where possible, use of GtkMenuFactory is deprecated as of
4571         now.
4572
4573         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
4574         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
4575         missed this possibility when i added gtk_object_class_add_user_signal
4576         in late january.
4577
4578         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
4579
4580 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
4581
4582         * gtk/gtkaccelgroup.h: 
4583         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
4584
4585         * gtk/gtkaccellabel.h: 
4586         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
4587         display of the accelerators associated with a certain widget.
4588
4589         * gtk/gtkitemfactory.h: 
4590         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
4591         parsing and accelerator handling.
4592
4593         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
4594         positioning a menu.
4595         (gtk_menu_map): removed the allocation code.
4596         (gtk_menu_size_allocate): care for redrawing of children and resize
4597         our widget->window correctly.
4598         (gtk_menu_key_press): feature the new accelerator groups.
4599
4600         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
4601         submenu if neccessary.
4602
4603         * gtk/gtkmenuitem.c:
4604         * gtk/gtkcheckmenuitem.c:
4605         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
4606         function variants.
4607
4608         * gdk/gdk.c:
4609         (gdk_keyval_from_name): 
4610         (gdk_keyval_name): new functions for keyval<->key-name associations.
4611         (gdk_keyval_to_upper): 
4612         (gdk_keyval_to_lower): 
4613         (gdk_keyval_is_upper): 
4614         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
4615         regards to their cases.
4616
4617 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
4618
4619         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
4620         widget's class path.
4621         (gtk_widget_path): new function to calculate a widget's name path.
4622
4623         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
4624         pattern matching, features reversed pattern matches.
4625
4626 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
4627
4628         * examples/extract.sh, examples/extract.awk:
4629           New files to automagically extract code examples from the
4630           tutorial.
4631
4632 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
4633
4634         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
4635         * gtk/gtkcontainer.c (gtk_container_focus_move):
4636         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
4637
4638 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
4639
4640         * docs/gtk_tut.sgml: minor changes to support auto
4641           extraction of example code
4642
4643 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
4644
4645         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
4646           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
4647
4648 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
4649
4650         * docs/gtk_tut.sgml:
4651           - new section on Events
4652           - change all delete_event callbacks to include
4653             a GdkEvent parameter
4654           - clean up the formatting
4655
4656         * examples - helloworld.c, helloworld2.c, notebook.c,
4657           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
4658           rulers.c, table.c, wheelbarrow.c: change all delete_event
4659            callbacks to include a GdkEvent parameter.
4660
4661 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4662
4663         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
4664         field of crossing events.
4665         (struct _GdkEventCrossing): Added the following fields: time, x,
4666         y, x_root, y_root, mode, focus, state.
4667
4668         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
4669         crossing event structure.
4670
4671         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
4672         changes to the crossing event structure.
4673
4674 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
4675
4676         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
4677
4678 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
4679
4680         * docs/gtk_tut.sgml:
4681            - GtkTooltips, update to current API
4682            - change all 'gpointer *data' to 'gpointer data'
4683            - other minor changes
4684
4685 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
4686
4687         * configure.in (LDFLAGS): Bomb out with a moderately
4688           helpful message if detection of X libraries fails.
4689
4690 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
4691
4692   [ Combination of:
4693      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
4694      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
4695
4696         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
4697           gtk/gtksignal.c gtk/gtktext.c: 
4698
4699           Fixups for warnings from adding const to type of GHashFunc,
4700           GCompareFunc
4701         
4702         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
4703           ansi-warnings fixups.
4704
4705 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
4706
4707         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
4708         Locate child at (border_width,border_width), not
4709         (2*border_width,2*border_width). [ The border is _outside_
4710         widget->window ]
4711         
4712         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
4713           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
4714
4715 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
4716
4717         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
4718         used in gnome-libs
4719
4720 1998-05-22    <sopwith@redhat.com>
4721
4722         * gtk/gtkeventbox.c: Pass size_allocate on to the child
4723         regardless of whether it is visible or not. Also
4724         locate child at (border_width,border_width), not (0,0)
4725
4726 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
4727
4728         * gtk/gtkhandlebox.c: Added style_set handler.
4729
4730 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
4731  [ From: Chris Lahey  <clahey@umich.edu> ]
4732         
4733         * gtk/gtkeditable.c, gtk/gtkeditable.h,
4734           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
4735           and set_position functions to get and set the cursor position.
4736
4737         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
4738           signal status. Make GtkText do user-controlled insertion
4739           and deletion through the Editable widget so that these
4740           signals are properly emitted.
4741
4742         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
4743           display asterisks instead of empty space when visible = FALSE)
4744
4745 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
4746
4747         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
4748         signal.
4749
4750 1998-05-21    <sopwith@redhat.com>
4751
4752         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
4753         custom routine for loading images specified in gtkrc's.
4754
4755 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
4756
4757         * configure.in: Use pthread_attr_init() as a test function,
4758         since most of the rest of -lpthread is macros on DU4.
4759
4760 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
4761
4762         * gtk/gtkcombo.c: implemented completion in the entry.
4763
4764 1998-05-18    <sopwith@moebuis.labs.redhat.com>
4765
4766         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
4767
4768 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
4769
4770         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
4771         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
4772         to be of runtype GTK_RUN_LAST.
4773
4774         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
4775         "need-resize".
4776
4777         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
4778         "widget-selected".
4779
4780 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
4781
4782         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
4783         text retrived from GtkEntry. only intercept the Tab key if there
4784         was some text to complete.
4785
4786 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
4787
4788         Basic thread-awareness:
4789
4790         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
4791
4792         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
4793         gdk_threads_[init/enter/leave] for applications, plus
4794         gdk_threads_wake to wake the mainloop thread out of
4795         the select().
4796
4797         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
4798
4799 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
4800
4801         * gtk/testgtk.c (list_clear): Account for the fact
4802         that gtk_list_clear_items is not inclusive. (Clears
4803         [start, end))
4804
4805 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
4806
4807         * gdk/gdk.c: include gdkkeysyms.h always
4808         
4809
4810 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
4811
4812         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
4813         the visibility_notify_event method and changed method order.
4814
4815 1998-05-14    <sopwith@moebuis.labs.redhat.com>
4816
4817         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
4818
4819 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
4820
4821         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
4822         from Olli Helenius <ollhel@batman.jytol.fi>.
4823
4824         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
4825         freeing types.
4826         (gtk_type_set_chunk_alloc): new function to allow allocation of new
4827         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
4828         thorugh g_malloc).
4829
4830         * gtk/gtkobject.c (gtk_object_finalize): free an object through
4831         gtk_type_free().
4832
4833         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
4834         GtkButtons to 16.
4835         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
4836         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
4837
4838 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
4839
4840         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
4841           GPOINTER_TO_UINT fixes.
4842
4843         * gtk/gtksignal.c: Include <string.h> for memset.
4844
4845 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
4846         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
4847
4848         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
4849         Cleanups, comments and the ability to have rulers with 
4850         a reversed direction.
4851
4852 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
4853
4854         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
4855         that Sopwith missed when changing stat => lstat.
4856
4857 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
4858
4859         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
4860           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
4861         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
4862
4863         * gdk/gdk.c: Print sizeof() results
4864         as g_print("%ld", (glong)sizeof(foo)), to deal with
4865         sizeof() being long on Alpha's.
4866
4867         * gtk/testgtk.c: include <string.h> for strlen
4868
4869 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
4870         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
4871         
4872         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
4873         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
4874
4875         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
4876
4877 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
4878         (From: Christopher James Lahey <clahey@umich.edu>)
4879         
4880         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
4881           gtk/testgtk.c:
4882
4883         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
4884         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
4885         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
4886         the default relief for the toolbars buttons. Added an
4887         toggle for the toolbar test in testgtk.c.
4888
4889 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
4890
4891         * docs/gtk-config.1: Rewritten and hopefully improved.
4892
4893 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
4894
4895         * docs/Makefile.am
4896         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
4897
4898 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4899
4900         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
4901         GtkPreview's visual and colormap, otherwise things can BadMatch.
4902
4903         * gtk/testgtk.c (create_color_preview): 
4904         (create_gray_preview): Removed pushing/popping of visual/colormap
4905         now that GtkPreview does things correctly.
4906
4907         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
4908         (gtk_color_selection_draw_wheel): Pick the style from the correct
4909         place (the colorsel->wheel_area widget) so that the GCs will match
4910         with where we are going to paint to.
4911
4912         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
4913         of visual/colormap now that GtkColorSelection does things the
4914         right way.
4915
4916 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
4917
4918         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
4919         previously unused window->need_resize flag to mark if a window's
4920         descendents changed size while the window was not visible. In this
4921         case, when the window becomes visible, we reallocate everything,
4922         since we didn't keep track of what actually changed.
4923
4924         (Fixes bug where changing the popdown strings of a
4925         combo to something of the same length caused them to
4926         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
4927
4928 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
4929
4930         [security audit by Alan Cox]
4931
4932         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
4933         exceed maximum assumed size.
4934
4935         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
4936         not exceed maximum assumed size.
4937         (gtk_menu_factory_remove): likewise.
4938         (gtk_menu_factory_find_recurse): likewise.
4939
4940 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
4941
4942         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
4943         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
4944         redrawn if that is still neccessary. don't allow queueing of already
4945         destructed objects.
4946         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
4947         widgets which are in the queue can be destroyed safely, handle
4948         requeueing properly.
4949         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
4950         widgets which are in the queue can be destroyed/unrealized safely.
4951
4952 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
4953
4954         * gtkfaq.sgml: add question on multi-threading,
4955           minor URL cleanups.
4956
4957 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
4958
4959         * configure.in (cflags_set): preserve automake CFLAGS.
4960
4961         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
4962         and libgdk-1.1.la. this means we need to change certain portions of
4963         the Makefile.am on major/minor version bumps.
4964
4965         * ltmain.sh: the -release option is not required anymore.
4966         
4967         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
4968         of the first argument to be of type GtkObject. unconditionally compile
4969         this function. removed __GNUC__ dependancy of the gtk_object_ref and
4970         gtk_object_unref macro wrappers for this function.
4971
4972 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
4973
4974         * gtk/gtkobject.h:
4975         * gtk/gtkobject.c:
4976         (gtk_object_data_try_key):
4977         (gtk_object_data_force_id): these are now macros substituting the old
4978         functions. we just use the corresponding g_dataset_* functions for
4979         key->id associations. (this is to assure unique key<->id associations).
4980
4981 1998-05-10  Stefan Jeske  <stefan@gtk.org>
4982
4983         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
4984         to gboolean.
4985
4986         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
4987
4988 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
4989
4990         * configure.in (LIBS): Try to figure out if this
4991         is Digital Unix and we need -std1 to get the
4992         right prototypes.
4993
4994 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
4995
4996         * docs/gtk_tut_it.sgml: update of Italian tutorial
4997           translation from Daniele Canazza <dcanazz@tin.it>
4998
4999 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
5000
5001         * gtk/gtkfeatures.h.in: new file used as template for
5002         * gtk/gtkfeatures.h: new file to define macros indicating newly
5003         introduced features, such as GTK_HAVE_SIGNAL_INIT.
5004
5005         * gtk/gtksignal.c:
5006         (gtk_signal_emitv_by_name):
5007         (gtk_signal_emitv):
5008         new functions to emit signals with an already provided parameter set.
5009         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
5010         (gtk_signal_real_emit): prototype changes, so this functions always
5011         gets its parameters and signal structure as arguments.
5012         (gtk_signal_emit): provide the signal structure and parameter list for
5013         gtk_signal_real_emit.
5014         (gtk_signal_emit_by_name): likewise.
5015
5016 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
5017
5018         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
5019         signal connections through unsetting GTK_CONNECTED.
5020         (gtk_signal_handler_insert): reflect the presence of signal connections
5021         through setting GTK_CONNECTED.
5022         (gtk_signal_real_emit): only check for handler emissions if the object
5023         has the GTK_CONNECTED flag set.
5024         (gtk_signal_handler_pending): don't check for pending handlers if the
5025         GTK_CONNECTED flag is not set for this object.
5026
5027         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
5028         a GtkObject has signal handler connections.
5029
5030         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
5031         set for this object call gtk_signal_handlers_destroy().
5032         
5033         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
5034         multiple processing of macro args.
5035
5036         * gtk/gtktypeutils.c:
5037         * gtk/gtkobject.c:
5038         * gtk/gtkwidget.c:
5039         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
5040
5041 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
5042
5043         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
5044         draw-queue when we are done. 
5045
5046         (gtk_widget_queue_draw/_queu_resize): Always return
5047         FALSE and avoid having two idles at the same time.
5048         
5049 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
5050
5051         * gtk/gtktext.c: Various fixes to make sure cache
5052         lines are freed if line_start_cache doesn't point to the
5053         beginning of the cache.
5054
5055 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
5056
5057         * style_set improvements for GtkText and GtkEntry
5058
5059 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
5060
5061         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
5062         been initialized.
5063
5064 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
5065
5066         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
5067         data chunks through a global object data structure list. unlink
5068         object data before invoking its destroy function.
5069         (gtk_object_finalize): slight modification to allow usage of object
5070         data during object finalization.
5071
5072 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
5073
5074         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
5075         signal names, e.g. "signal-name" is now an alias for "signal_name".
5076         (gtk_signal_handler_new): allocate handlers through a global handler
5077         structure list, that's faster than memchunks.
5078         (gtk_emission_new): allocate emissions through a global emission
5079         structure list, that's faster than memchunks.
5080
5081 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
5082
5083         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
5084
5085         * ltmain.sh: added a new commandline flag -postfix similar to -release,
5086         but will immediately change the library name.
5087
5088         * gdk/Makefile.am:
5089         * gtk/Makefile.am: specify -postfix and -version-info
5090
5091         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
5092         GTK_BINARY_AGE. calculate LT_* variables for libtool.
5093
5094 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5095
5096         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
5097         background (fg_set -> bg_set confusion).
5098
5099 1998-05-06  Stefan Jeske  <stefan@gtk.org>
5100
5101         * gtk/testgtk.c (unselect_all): Removed code that caused an
5102         endless loop.
5103
5104 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
5105
5106         * gtk/gtksignal.c: reimplemented the signal storage system to use a
5107         linear array rather than a hash table.
5108         be carefull *not* to keep any GtkSignal pointers across invokations
5109         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
5110         general code cleanups, made all allocations through memchunks.
5111         (gtk_signal_lookup): we now do the lookup of signals through a key_id
5112         for the signal names to avoid multiple hashing of the signal name on
5113         lookups for the several hirarchy levels of an object.
5114
5115 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
5116
5117         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
5118         to speed things up and remove code duplication.
5119
5120         Reintegrated buffer overflow patches, and added
5121         some extra paranoia.
5122         
5123 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
5124
5125         * gdk/gdk.c (gdk_event_translate): A guint * was
5126         being passed where X expected a Keysym *, and
5127         keysyms are long's on Alpha Linux. This was causing
5128         segfaults in Xlib, apparently because of alignment.
5129         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
5130         
5131 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
5132
5133         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
5134         set GDK_EXPOSURE_MASK for DrawingAreas
5135
5136 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
5137
5138         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
5139         (superceded by RC file reparsing capabilities)
5140
5141         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
5142         events. (Shouldn't be sent to the InputOnly leader, which
5143         it is now by gdk_event_send_clientmessage_toall
5144
5145         * gtk/testgtk.c: Added extra button to rcfiles test
5146         to send out _GDK_READ_RCFILES events.
5147         
5148 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
5149
5150         * gtk/gtkselection.c (gtk_selection_clear): Fixed
5151         reversed conditionals that caused segfault on some
5152         platforms.
5153
5154 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
5155
5156         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
5157         cast to GTK_OBJECT for gtk_object_ref.
5158
5159 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
5160
5161         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
5162         checking for signal initialization in gtksignal.c.
5163
5164         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
5165         a long debugging period ;)
5166
5167 1998-05-05  Stefan Jeske  <stefan@gtk.org>
5168
5169         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
5170         New function to wrap XSetDashes; modified gtkctree.c to use it.
5171
5172 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5173
5174         * configure.in: Added $x_libs in the other_libraries field in the
5175         check for XShapeCombineMask.
5176
5177 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
5178
5179         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
5180         gtk_type_is_a().
5181         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
5182         linear array rather than a hash table. it actually speeded up testgtk
5183         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
5184         pointers across invokations of gtk_type_node_next_and_invalidate() and
5185         therefore gtk_type_unique()!
5186
5187         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
5188         inheritance of a class pointer.
5189         (GTK_OBJECT): modifications for speedups.
5190         (GTK_IS_OBJECT): likewise.
5191         (GTK_OBJECT_CLASS): likewise.
5192         (suggested by owen).
5193
5194         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
5195
5196         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
5197
5198         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
5199         since its derivation changed 4 month ago ;(. showed up with the unique
5200         type name checking code in gtk_type_unique().
5201
5202         * random guint->GtkType and macro fixups.
5203
5204 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
5205
5206         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
5207         Configure events that would result in a negative
5208         size.
5209
5210 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
5211
5212         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
5213         "glibconfig.h" and another about writing another IRC
5214         client.
5215
5216 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
5217
5218         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
5219         parameters to log are doubles. Digital Unix apparently
5220         is missing the argument in its prototype.
5221
5222 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
5223
5224         * gtk/gtklabel.c (gtk_label_state_changed): Don't
5225         force a clear until the widget is actually on
5226         screen.
5227
5228 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
5229
5230         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
5231         to make this consistent with the gtk-1-0 tree.
5232
5233 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
5234
5235         * configure.in acheader.h gdk/gdkwindow.c 
5236         Check for Shape extension both on the client and server
5237         side. (And, more importantly, check for the shape extension
5238         so we may include -lXext even when compiling with --disable-xshm)
5239
5240         Don't set override_redirect on all shaped windows. It isn't
5241         necessary.
5242
5243         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
5244         and foreign windows. Use this to check if we
5245         need to get the colormap from X.
5246
5247 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
5248
5249         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
5250         between the default and the button always in GTK_STATE_NORMAL.
5251
5252         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
5253         callback.
5254
5255 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
5256
5257         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
5258           Fix a buffer overflow on pixmaps that claim to have
5259           more than 31 characters per pixel.
5260
5261           (gdk_pixmap_read_string): Don't wrap around strings longer
5262           than half of address space ;-)
5263
5264         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
5265         that were used for printing integers.
5266
5267         * */* (almost):
5268
5269         Style: All 
5270           int foo () { ... }
5271         changed to
5272           int foo (void) { ... }
5273
5274         Even where there were proper prototypes elsewhere.
5275
5276         * gdk/gxid.c (handle_claim_device): Some extra checks.
5277         It isn't safe against being fed bad X id's, but at
5278         least it should be safe against deleting all your
5279         files.
5280
5281 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
5282
5283         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
5284         to set the adjustments value when there is no current emission.
5285         [ Removed by mutual agreement owt 5/3/1998 ]
5286
5287         * gtk/gtksignal.c: added new functions to retrive the number of
5288         existing emissions for a certain signal.
5289         (gtk_signal_n_emissions): new function.
5290         (gtk_signal_n_emissions_by_name): new function.
5291
5292 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
5293
5294         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
5295         set the current focus_child of a container, does proper referencing and
5296         adjusts the vadjustment/hadjustment associated with the focus widget.
5297
5298         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
5299         containers via gtk_container_set_focus_child.
5300
5301         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
5302         where appropriate.
5303
5304         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
5305         child since not every child removal goes through this function (this
5306         showed up after gtk_container_set_focus_child() started to reference the
5307         focus_child of a container).
5308
5309         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
5310         of a container from gtk_container_remove into this place.
5311
5312 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
5313
5314         * gtk/gtksignal.c: added new functions to operate on intermediate
5315         function pointers. implemented incremental blocking.
5316         (gtk_signal_disconnect_by_func): new function.
5317         (gtk_signal_handler_block_by_func): new function.
5318         (gtk_signal_handler_unblock_by_func): new function
5319
5320 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
5321
5322         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5323         Always show the scrollbars when the policy is
5324         GTK_POLICY_ALWAYS...
5325
5326 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
5327
5328         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
5329         "value_changed" if we really passed a new value.
5330         (gtk_adjustment_changed): new function to emit the "changed" signal.
5331         (gtk_adjustment_set_value): new function to emit the "value_changed"
5332         signal.
5333
5334 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
5335
5336         * gtk/gtkcombo.c: Further changes to the way the window
5337         is popped up so that it will be compatible with 
5338         auto-scrolling in the future.
5339
5340 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
5341
5342         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
5343         the combo-list is empty since that will cause the combo to operate
5344         on a non existing GtkList window.
5345         (gtk_combo_get_pos): provide the combo list with a usfull default
5346         height if empty.
5347         (gtk_combo_popup_button_press): grab the focus.
5348         (gtk_combo_activate): grab the focus.
5349
5350 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
5351
5352         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
5353         function to reset the RC styles for a heirarchy
5354
5355         Clear the window background if necessary in
5356         gtk_window_style_set.
5357
5358         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
5359         rereads all previously read RC files.
5360
5361         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
5362         (Should it just be called gdk_get_toplevels?)
5363
5364         * gtk/testgtk.c: New test to reload RC files.
5365
5366 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
5367
5368         * gtk/gtkclist.h:
5369         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
5370         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
5371         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
5372         the GTK_ prefix (this solution involved less changes in the
5373         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
5374         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
5375         from lars & stefan to support the derivation of GtkCtree.
5376
5377         * gtkctree.h:
5378         * gtkctree.c:
5379         initial import of a tree widget derived from gtkclist, courtesy
5380         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
5381         it just damn rocks!
5382
5383 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
5384
5385         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
5386         for us.
5387         (gtk_list_insert_items):
5388         (gtk_list_remove_items_internal): 
5389         (gtk_list_clear_items): 
5390         remove a possible pointer grab, we might get thrown into a loop
5391         otherwise.
5392         (gtk_list_button_press): grab the pointer *before* selecting the child,
5393         because selection of items may cause the lists children to change,
5394         resulting in a grab release.
5395         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
5396         children.
5397         (gtk_list_shutdown): remove all children from the list.
5398         (gtk_real_list_unselect_child): 
5399         (gtk_real_list_select_child): *always* put our internal structures into
5400         sane state *before* signal emisions (i.e. list->selection updates prior
5401         to gtk_list_item_[de]select() calls).
5402
5403         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
5404         focused child walks out of the window.
5405         removed CAN_FOCUS for the combo arrow's button since it doesn't react
5406         to keyboard events ("clicked" connection is missing).
5407
5408 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
5409
5410         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
5411         getting colormap for FOREIGN windows to go along with
5412         Raster's fix for visuals.
5413
5414 Merges from gtk-1-0
5415 ===================
5416         
5417 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
5418
5419         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5420         Check to catch the case when the viewport fits in either
5421         direction or both, instead of flip-flopping infinitely.
5422
5423         Only show/hide the scrollbars once at the end.
5424
5425 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
5426
5427         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
5428         Include the scrollbars in the foreach call.
5429         (gtk-fortier-980405-0.patch; 
5430          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
5431
5432         The notebook widget
5433         really should also include its tabs, but that might cause
5434         problems for programs if they
5435
5436 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
5437
5438         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
5439         resize if the size actually changed. 
5440         (gtk-johannes-980414-0.patch ;  
5441          johannes@nada.kth.se (Johannes Keukelaar) )
5442
5443 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
5444
5445         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5446           ltmain.sh ltconfig config.sub config.guess:
5447
5448         Reverted back to libtool-1.2 (plus minor patches) so as not to
5449         force the issue for everyone else.
5450
5451 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
5452
5453         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5454         Updated to libtool 1.2a.
5455
5456         * gtk/gtkclist.c: Draw the in-between lines with style->base
5457         instead of style->white.
5458         
5459 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
5460
5461         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
5462         Cache the colormap and children of a window locally
5463         instead of fetching them from the server when needed.
5464         Huge performance difference for creating/destroying
5465         windows.
5466
5467         * gtk/gtkstyle.c: Find the depth from the cached
5468         visual, instead of asking the server.
5469
5470         * gtk.m4: Distribute the new version which tries to
5471         figure out what went wrong and give helpful error
5472         messages.
5473
5474         * ltmain.sh ltconfig config.sub config.sh: 
5475         Updated to libtool 1.2a
5476
5477         * gtk/gtktext.c: Fixed a bug where the drawn level
5478         was being messed up when the text was scrolled
5479         during a deletion.
5480         
5481 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
5482
5483         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
5484         the filesystem under you (fix from Josh)
5485
5486 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
5487
5488         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
5489         if the viewport already exists before iterating over it, maybe we
5490         haven't been constructed yet.
5491
5492 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
5493
5494         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
5495         the GtkBin widget already has a child.
5496
5497         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
5498         check that child->parent == NULL;
5499
5500 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
5501
5502         * gtk/gtkselection.c (gtk_selection_clear): Only return
5503         FALSE when the clear event is been rejected, not when
5504         widget has already lost the selection. (Which should
5505         only happen when we are setting the selection to another
5506         widget ourself.)
5507         
5508 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
5509
5510         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
5511
5512         Removed the "check visibility after gtk_widget_unparent" bug 
5513         in hopefully the last three places.
5514
5515 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
5516
5517         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
5518         rc-files.
5519
5520 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
5521
5522         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
5523         for CAN_FOCUS widgets.
5524
5525         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
5526         adjustments for the table.
5527         (create_list): feature automatic adjustment of the scrolled window to
5528         always contain the focused child.
5529         (create_main_window): keep the focussed button always inside of the
5530         scrolled windoww.
5531
5532         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
5533         adjustments, to contain the allocation of the currently focused child.
5534         (gtk_container_set_focus_hadjustment): new functin to set the
5535         horizontal focus adjustment.
5536         (gtk_container_set_focus_vadjustment): new functin to set the vertical
5537         focus adjustment.
5538
5539         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
5540         clamp the currents adjustment page into a specific range.
5541
5542         * random GtkType fixups for gtk_*_get_type() functions.
5543
5544 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
5545
5546         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
5547         Account for the fact that gtk_tree_item_remove_subtree
5548         will be called recursively. 
5549
5550         Handle removing a collapsed subtree.
5551
5552         (From Andy Dustman <adustman@comstar.net>)
5553         
5554         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
5555         root tree when removing items from a non-previously
5556         mapped tree.
5557
5558         * gtk/testgtk.c: Added a remove_subtree button.
5559         
5560 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
5561
5562         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
5563         before object removing data. This change fixes a bug where 
5564         removing the last weak references would cause it to be 
5565         triggered.
5566
5567 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
5568
5569         * gdk/Makefile.am: Removed mostly useless dependency that
5570         was causing problems for SGI's make, when used with
5571         the 'make dist' form of GTK+. (Dependency caused dependencies
5572         to be redone when BUILT_SOURCES changed)
5573
5574 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
5575
5576         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
5577         like a menu.
5578         
5579         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
5580         to gtkitem.c so dragging can also work in lists.
5581
5582         * gtk/gtklist.[ch]: Track child enter events and use
5583         those to allow dragging the selection. 
5584
5585 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
5586
5587         * gtk/gtktext.c: Try enabling background pixmaps for editable text
5588         widgets.  There is a bit of flashing, but not too bad. If you
5589         don't want the flashing, you can always not set a background
5590         pixmap.
5591
5592 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
5593
5594         * gtk/gtktext.c: Fixed a bug where the drawn level
5595         was being messed up when the text was scrolled
5596         during a deletion.
5597         
5598 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
5599
5600         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
5601         bug:  There is no need to set the ExposureMask in the XGrabPointer
5602         (this caused DnD programs to crash).
5603
5604 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
5605
5606         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
5607         field to be of type guint.
5608         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
5609         ref_count>0;
5610         (gtk_accelerator_table_install): keep a per object list of accelerator
5611         tables that refer to this object.
5612         (gtk_accelerator_table_remove): remove the accelerator table from the
5613         per object list.
5614         (gtk_accelerator_table_clean): warn if there are any object references
5615         left in an accelerator table upon destruction.
5616         (gtk_accelerator_tables_delete): new function to delete object
5617         references from the accelerator tables associated with this object.
5618
5619         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
5620         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
5621         of an accelerator can be prevented by gtk_signal_emit_stop().
5622         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
5623         so there are no stale pointers in accelerator tables left.
5624
5625 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5626
5627         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
5628         visible before we unparent it.
5629
5630 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
5631
5632         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
5633         running_timeouts list with the tmp_list link itself, not with a new
5634         GList structure pointing to our link. that would fill up memory and
5635         causes the GList.data fields of the running_timeouts list to point to
5636         GList structures and not GtkTimeoutFunction structures which is a
5637         *really* bad thing.
5638         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
5639         the above entry ;).
5640
5641 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
5642
5643         * gtk/gtkradiomenuitem.h: 
5644         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
5645         ala gtk_radio_button_set_group.
5646         (gtk_radio_menu_item_init): assure that we always have at least a group
5647         that points to self.
5648
5649         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
5650         added g_return_if_fail() statements.
5651         (gtk_radio_button_init): assure that we always have at least a group
5652         that points to self.
5653
5654 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
5655
5656         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
5657
5658 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
5659
5660         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
5661         (Damon Chaplin), which i got wrong when applying Damon's patch the last
5662         time.
5663
5664 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
5665
5666         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
5667         that when we are running with a non-installed colormap,
5668         in 8-bit pseudo-color, we actually are using the system
5669         visual. (Fixes *Bad Match* errors on Digital Unix machines
5670         with multiple 8-bit pseudo-color visuals)
5671
5672 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
5673
5674         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
5675         by whoever thought that randomly changing ints to unsigned int
5676         without reviewing the code was a good idea.  It is, btw not
5677         mentioned in the ChangeLog as usual, but I know it was not Elliot
5678         the culprit this time. 
5679
5680 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
5681
5682         * Released GTK+ 1.0.0