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