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