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