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