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