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