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