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