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