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