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