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