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