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