]> Pileus Git - ~andy/gtk/blob - ChangeLog
macro and GtkType fixups.
[~andy/gtk] / ChangeLog
1 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
2
3         * gtk/gtkdialog.h: 
4         * gtk/gtkseparator.h: 
5         * gtk/gtkhseparator.h: 
6         * gtk/gtkvseparator.h: macro and GtkType fixups.
7
8 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
9
10         * gtk/testgtk.c (create_cursors): display the current cursor name.
11
12         * gtk/gtktypeutils.h: 
13         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
14         the fundamental type definition. the GtkArg union now only covers
15         the required storage types for argument values. adapted the GTK_VALUE_*
16         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
17
18         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
19         code, fixed int/float collection. fixed a bug in the sanity checking
20         code for GtkObjects.
21
22         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
23         argument collection code.
24
25         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
26         macros when distinguishing the return type.
27
28 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
29
30         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
31           is not NULL before trying to g_list_remove the child. A patch
32           from Michael Lausch.
33
34 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
35
36         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
37         collection (always casted to doubles upon argument passing).
38
39 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
40
41         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
42         object_init_func for derived objects with the object's ->klass field
43         still pointing to the corresponding base class, otherwise overridden
44         class functions could get called with partly-initialized objects.
45         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
46
47 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
48
49         * gtk/gtkobject.h:
50         * gtk/gtkobject.c:
51         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
52
53         * gtk/gtkcontainer.h:
54         * gtk/gtkcontainer.c:
55         (gtk_container_child_arg_get_info): new function which wraps
56         gtk_arg_get_info().
57
58 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
59
60         * gtk/gtkcontainer.c:
61         (gtk_container_arg_get): 
62         (gtk_container_arg_set): 
63         * gtk/gtkobject.c:
64         (gtk_object_arg_set): 
65         (gtk_object_arg_get):
66         strictly check for the associated get/set arg functions. if an
67         arg is readable or writable, the associated class functions *must*
68         be provided.
69
70 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
71
72         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
73         padding into account if there is an accelerator.
74
75 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
76
77         * gtk/gtkcontainer.c:
78         (gtk_container_add_with_args): collect the arguments with
79         gtk_container_child_args_collect, not through gtk_object_args_collect.
80         (gtk_container_child_set): likewise.
81
82 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
83
84         * gtk/gtktypeutils.h: 
85         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
86         which is derived from GTK_TYPE_STRING.
87
88         * gtk/gtkbindings.c: reworked the argument type handling.
89
90 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
91
92         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
93           so that it seems to allow normal operation in those modes,
94           although you will only see black  (GIMP toolbar now pops up,
95           just don't create a new image and GIMP now works in 4 bit.)
96
97 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
98
99         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
100           array, which was too low (?)
101
102 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
103
104         * gtk/gtkcontainer.h: 
105         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
106         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
107         we now export a new function gtk_container_child_args_collect().
108         for consistency with the object arguments, a few functions got renamed:
109         gtk_container_child_arg_get -> gtk_container_child_get,
110         gtk_container_child_arg_set -> gtk_container_child_set,
111         gtk_container_child_arg_getv -> gtk_container_child_getv,
112         gtk_container_child_arg_setv -> gtk_container_child_setv,
113         gtk_container_add_with_argv -> gtk_container_addv.
114         note, gtk_container_add_with_args() remained, because its equivalent
115         would be gtk_container_add(,, ...) which would break all existing code.
116         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
117         we expect the `arg_name' argument to be a const static string now.
118         (gtk_container_get_child_arg_type): function removed.
119
120 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
121
122         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
123         this is a static inline function that collects command line arguments
124         from a va_list. this file can just be included in all places that
125         need this functionality.
126
127         * gtk/gtkarg.h: 
128         * gtk/gtkarg.c: new files which implement most of the argument
129         handling stuff from gtkobject.c. also collected a few more
130         gtk_arg_* utility functions from else places.
131
132         * gtk/gtkobject.h: 
133         * gtk/gtkobject.c: moved most of the argument handling code into
134         gtkarg.c. we now export gtk_object_args_collect() as a non-public
135         method with a blind va_list pointer.
136         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
137         const static string now.
138         (gtk_object_get_arg_type): function got removed.
139
140         * gtk/gtkwidget.c: 
141         (gtk_widget_set): 
142         (gtk_widget_new): adaptions for gtk_object_args_collect().
143
144         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
145         fundamental type name so as to have a valid prefix, e.g. "bool"->
146         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
147         though that should probably be something like GtkNone since the
148         type itself is called GTK_TYPE_NONE.
149         even the internal type names need to avoid name clashes and must live
150         in their own namespace, several code portions rely on that.
151         we should relly have typedefs such as typedef gchar* GtkString; so the
152         fundamental type names can be used for code dumpers just like with all
153         the Gtk/Gdk types.
154
155 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
156
157         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
158         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
159         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
160         (GTK_RELIEF_HALF).
161         (gtk_button_paint): set the background for prelighted buttons with
162         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
163         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
164         the shadow type (otherwise we get strange shadows for coloured buttons).
165         (gtk_button_set_relief): queue a redraw after changing
166         the relief.
167         (gtk_button_class_init): 
168         (gtk_button_set_arg): 
169         (gtk_button_get_arg): added object argument "GtkButton::relief".
170
171         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
172
173 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
174
175         * gtk/gtkbutton.h:
176         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
177         GTK_BIN (button)->child to button->child to keep source compatibility.
178
179         * gtk/gtkoptionmenu.c:
180         * gtk/gtkclist.c:
181         * gtkcheckbutton.c: don't refer to button->child, but
182         GTK_BIN (button)->child instead.
183
184 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
185
186         * docs/gtkfaq.sgml: update anon CVS info
187
188 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
189
190         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
191         functions.
192
193         * gdk/gdkwindow.c:
194         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
195         to XFree() calls.
196
197 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
198
199         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
200         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
201
202 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
203
204         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
205
206 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
207
208         * gtk/gtkwidget.h:
209         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
210
211         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
212         error that prevented signal to entry addition for signals with
213         parameters.
214
215 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
216
217         * ltconfig: fix for properly detecting shared lib support on
218         SunPro cc (taken from libtool 1.2.a)
219
220 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
221
222         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
223
224 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
225
226         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
227         rc set pattern is favoured, this is needed for overriding of style
228         patterns with subsequently parsed rc files.
229
230 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
231
232         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
233         error messages.
234
235 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
236
237         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
238         modifier as well.
239         (gtk_accelerator_name): add "<Release>" to the accelerator name if
240         neccessary.
241
242         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
243         account.
244
245         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
246         default handler for key-release events, which checks for activation
247         of GDK_RELEASE_MASK key bindings.
248
249         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
250
251 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
252
253         * gtk/gtkarrow.h: GtkType and macro fixups.
254         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
255         "GtkArrow::shadow_type".
256
257 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
258
259         * gtk/gtkalignment.h:
260         * gtk/gtkbin.h: GtkType and macro fixups.
261         
262         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
263         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
264         GtkAlignment::xscale, GtkAlignment::yscale.
265
266 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
267
268         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
269         fucntions from all parent types upon class initialization.
270
271         * gtk/gtkcontainer.c:
272         (gtk_container_get_type): announce gtk_container_base_class_init to
273         the type system.
274         (gtk_container_base_class_init): new function to feature base class
275         initialization.
276         (gtk_container_get_child_arg): 
277         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
278         and set_child_arg methods of the class indicated through the argument
279         name.
280
281         * gtk/gtkobject.c:
282         (gtk_object_base_class_init): new function to feature base class
283         initialization.
284         (gtk_object_init_type): announce gtk_object_base_class_init to the type
285         system.
286         (gtk_object_class_init): setup the get_arg and set_arg pointers for
287         GtkObjectClass.
288         (gtk_object_setv): 
289         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
290         instead of bothering the type system with this.
291
292         * gtk/gtkaccellabel.c: 
293         * gtk/gtkbutton.c: 
294         * gtk/gtkradiobutton.c: 
295         * gtk/gtktable.c:
296         * gtk/gtktogglebutton.c: 
297         * gtk/gtktipsquery.c: 
298         * gtk/gtkbox.c: 
299         * gtk/gtkpacker.c: 
300         * gtk/gtkwidget.c: 
301         * gtk/gtkwindow.c: 
302         * gtk/gtkframe.c: 
303         * gtk/gtkmisc.c:
304         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
305         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
306         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
307         arg functions to take a GtkObject argument.
308
309         gtk/gtkadjustment.c:
310         gtk/gtkalignment.c:
311         gtk/gtkarrow.c:
312         gtk/gtkaspectframe.c:
313         gtk/gtkbbox.c:
314         gtk/gtkbin.c:
315         gtk/gtkcheckbutton.c:
316         gtk/gtkcheckmenuitem.c:
317         gtk/gtkclist.c:
318         gtk/gtkcolorsel.c:
319         gtk/gtkcombo.c:
320         gtk/gtkctree.c:
321         gtk/gtkcurve.c:
322         gtk/gtkdata.c:
323         gtk/gtkdialog.c:
324         gtk/gtkdrawingarea.c:
325         gtk/gtkeditable.c:
326         gtk/gtkentry.c:
327         gtk/gtkeventbox.c:
328         gtk/gtkfilesel.c:
329         gtk/gtkfixed.c:
330         gtk/gtkfontsel.c:
331         gtk/gtkgamma.c:
332         gtk/gtkhandlebox.c:
333         gtk/gtkhbbox.c:
334         gtk/gtkhbox.c:
335         gtk/gtkhpaned.c:
336         gtk/gtkhruler.c:
337         gtk/gtkhscale.c:
338         gtk/gtkhscrollbar.c:
339         gtk/gtkhseparator.c:
340         gtk/gtkimage.c:
341         gtk/gtkinputdialog.c:
342         gtk/gtkitem.c:
343         gtk/gtkitemfactory.c:
344         gtk/gtklist.c:
345         gtk/gtklistitem.c:
346         gtk/gtkmenu.c:
347         gtk/gtkmenubar.c:
348         gtk/gtkmenuitem.c:
349         gtk/gtkmenushell.c:
350         gtk/gtknotebook.c:
351         gtk/gtkoptionmenu.c:
352         gtk/gtkpaned.c:
353         gtk/gtkpixmap.c:
354         gtk/gtkpreview.c:
355         gtk/gtkprogressbar.c:
356         gtk/gtkradiomenuitem.c:
357         gtk/gtkrange.c:
358         gtk/gtkruler.c:
359         gtk/gtkscale.c:
360         gtk/gtkscrollbar.c:
361         gtk/gtkscrolledwindow.c:
362         gtk/gtkseparator.c:
363         gtk/gtkspinbutton.c:
364         gtk/gtkstatusbar.c:
365         gtk/gtktext.c:
366         gtk/gtktoolbar.c:
367         gtk/gtktooltips.c:
368         gtk/gtktree.c:
369         gtk/gtktreeitem.c:
370         gtk/gtkvbbox.c:
371         gtk/gtkvbox.c:
372         gtk/gtkviewport.c:
373         gtk/gtkvpaned.c:
374         gtk/gtkvruler.c:
375         gtk/gtkvscale.c:
376         gtk/gtkvscrollbar.c:
377         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
378         match the modified GtkTypeInfo structure.
379
380 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
381
382         * gtk/testgtk.c: use rand() instead of random() for portability
383
384 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
385
386         * configure.in
387         * acconfig.h
388         * gdk/gdk.c: use native Xlib XConvertCase if it's available
389
390 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
391
392         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
393         XConvertCase() functionality from X11R6 on X11R5 systems.
394
395 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
396
397         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
398         gdk_string_height, gdk_char_height to retrieve the exact
399         height of a text.
400
401 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
402
403         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
404           by Stefan Mars <mars@lysator.liu.se>
405         * examples/clist/clist.c examples/clist/Makefile: example code
406           for GtkCList widget from the Tutorial
407
408 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
409
410         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
411         if the container is not visible, we might be a toplevel! this holds
412         for all other base container implementations as well, that are
413         candidates to derive toplevels from. in general the resizing code will
414         care about visibility itself.
415         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
416         * gtk/gtkbox.c (gtk_box_remove): likewise.
417
418         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
419         gtk_window_set_hints(), since we haven't calculated the new position
420         yet.
421
422         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
423         *mask are alway initialized in a sane way, regardless of the return
424         value.
425
426 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
427
428         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
429         to gtk_container_child_arg_setv, but takes a variable argument list.
430         new function gtk_container_get_child_arg_type, which is needed by
431         gtk_object_collect_args.
432
433         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
434         take a function pointer to figure the argument type.
435         adapted callers to pass gtk_object_get_arg_type.
436         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
437         gtk_object_get_arg_type..
438
439         * gtk/gtkpacker.h: 
440         * gtk/gtkpacker.c:
441         (gtk_packer_reorder_child): new function to change the packing order
442         of a child.
443         (gtk_packer_size_request): 
444         (gtk_packer_size_allocate): take container->border_width into acount.
445
446         * gtk/gtkpacker.c: implemented widget arguments:
447         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
448         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
449         implemented child arguments:
450         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
451         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
452         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
453         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
454
455         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
456         not the alignment.
457
458         * gtk/gtkeventbox.h:
459         * gtk/gtkeventbox.c: GtkType and macro fixups.
460
461         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
462         sensitivity of an entry.
463
464         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
465         for insensitive base and text.
466
467         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
468         widget state dependent.
469         (gtk_entry_style_set): likewise.
470         (gtk_entry_state_changed): set background color on state changes.
471         (gtk_entry_draw_text): for non selected text, use state dependent
472         colors.
473
474         * gtk/gtktogglebutton.c: support for widget arguments
475         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
476
477 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
478
479         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
480         code for 1.0.x-like parameters. Changed internal interface of
481         gtk_spin_button_real_spin. Several fixes to avoid emission of
482         "value_changed" where possible.
483
484 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
485
486         * gtk-boxed.defs: s/GkWidget/GtkWidget/
487
488 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
489
490         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
491         to select the resize_mode for the idle-labels container.
492
493         * gtk/gtkframe.h: 
494         * gtk/gtkframe.c: GtkType and macro corrections.
495
496         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
497         support widget argument "GtkRadioButton::group".
498
499 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
500
501         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
502         unconditionally if resize_mode has changed.
503
504         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
505         GTK_RESIZE_QUEUE on the scrolled window.
506         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
507
508 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
509
510         * gtk/gtkcontainer.h:
511         * gtk/gtkcontainer.c:
512         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
513         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
514         (gtk_container_queue_resize): new function to queue a container for
515         a *size* reallocation (doesn't affect its position, and thus its
516         parent is left untouched usually).
517         (gtk_container_get_resize_container): new function to retrive the next
518         most resize container which is not itself queued for a resize.
519         (gtk_container_idle_sizer): new function to carefully process the
520         container_resize_queue since it can change during invokation of
521         gtk_container_check_resize().
522         (gtk_container_resize_children): total rework of this function to
523         properly handle resize containers. makes a lot of assumptions whitch
524         are stated in the comments.
525
526         * gtk/gtkcontainer.c:
527         (gtk_container_real_check_resize): only requeue ourselves if we are not
528         a resize container.
529         (gtk_container_clear_resize_widgets): care for automatic deletion of our
530         resize_widgets list on size_allocate through a handler connection.
531
532         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
533         focus and default widget of a window, so to take the burden from
534         gtk_widget_unparent.
535
536         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
537         to be clever, but actually messed up the resize_children logic and
538         caused unneccessary allocations on its whole branch. besides this,
539         it messed up the display by not invoking a redraw after the allocation.
540
541         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
542         that it is the child again that is queued for a resize.
543         (gtk_table_attach): likewise.
544         (gtk_table_remove): likewise.
545
546 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
547
548         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
549         gtk_entry_adjust_scroll.  Required if you change the cursor
550         position and want to sync it up with your code (Midnight Commander
551         gtk front end needs this).
552
553         * gtk/gtktable.c: Deal with tables that have size 0, 0.
554
555 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
556
557         * examples/README.1ST: new file to explain how the
558           code examples should be extracted from the tutorial.
559
560 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
561
562         * gtk/gtkctree.c (draw_row): added new "line style"
563         GTK_CTREE_LINES_TABBED 
564         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
565         search the glist pointer of an GtkCTreeRow
566
567 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
568  
569         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
570         from, and clean up, the dependencies.  Generate to intermediate
571         files to prevent problems with Ctrl-C.
572
573         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
574
575 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
576
577         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
578         - Bug fix for precision problem causing occasional double emission 
579           of "value_changed" signal (hopefully works now).
580         - API change (should be binary compatible) : 
581           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
582           Modified cursor example appropriately.
583           To spin by something other than step_/page_increment, use
584           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
585         - Made GTK_SHADOW_NONE the default. ;)
586         - Fixed casting of GtkAdjustment* to GtkWidget* in
587           gtk_spin_button_value_changed.
588
589 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
590
591         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
592         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
593         resize widget list before queuing the container for a new reize.
594         (gtk_container_need_resize): changed return value to FALSE, since this
595         used to indicate that no further resizes are needed.
596         (gtk_container_set_arg): 
597         (gtk_container_get_arg): 
598         (gtk_container_class_init): implemented GtkContainer::resize_mode
599         argument.
600
601         (gtk_container_resize_children): when we walk up the tree of a resize
602         widget we need to stop if we are the current parent.
603
604         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
605         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
606         (gtk_widget_hide_all): retrive the toplevel widget from via
607         gtk_widget_get_resize_container().
608
609 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
610
611         * gtk/gtklist.c (gtk_list_button_press): Only respond
612           to selection with button 1. This allows context-sensitive
613           menus to work correctly.
614
615 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
616
617         * gtk/gtkaccelgroup.c: 
618         * gtk/gtkbindings.c: 
619         * gtk/gtkcontainer.c:
620         * gtk/gtkitemfactory.c:
621         * gtk/gtkobject.c: 
622         * gtk/gtksignal.c:
623         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
624         g_quark_from_static_string calls to save memory.
625
626         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
627         function _after_ the new data has been setup.
628         minor changes to object data functions to feature the GQuark type.
629
630 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
631
632         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
633           from argv.
634
635 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
636
637         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
638           to be more readable perl, to spit out stuff that looks
639           more like readable C, and to pipe output through indent
640           so output looks a lot like readable C. No functional
641           changes.
642
643 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
644
645         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
646           necessary when switching to a masked pixmap. (Based on a patch
647           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
648
649 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
650
651         * gtk/gtkeditable.[ch]: Added action signals for keyboard
652           bindings. (move_cursor, kill_word, etc, etc, etc). 
653
654           removed the time argument from
655           gtk_editable_cut/copy/paste_clipboard (source but not
656           binary incompatible...) Instead get time from
657           gtk_get_current_event ().
658         
659         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
660           signals.
661
662 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
663
664         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
665
666         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
667              parent class to GtkNotebookClass when splitting the widget in
668              two.  Also updated some comments.
669
670         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
671                button without a font selected.
672
673              Fixed bug in set_font_name - I hadn't updated the code to
674                search for the style in the font_style clist - it was
675                still assuming the style row was equal to its index,
676                but it isn't any more.
677         
678              Changed 'Reset' button on filter page to 'Clear Filter'.
679              Deleted old code relating to the old 'Filter Fonts' toggle
680              Updated some comments.
681              Cleared 'Actual Fontname' if no font is set.
682
683         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
684              destroying the GtkFontSelection instead of the
685              GtkFontSelectionDialog.
686
687 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
688
689         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
690           flag to make all warnings fatal errors.
691
692         * gtk/testthreads.c: moved <pthreads.h> include inside 
693           #ifdef USE_PTHREADS
694
695 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
696
697         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
698           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
699
700         - Added new function gtk_container_set_resize_mode() for
701           fine-grained control of where resize-queueing is done.
702
703         - Removed GtkContainer::need_resize and GtkWindow::move_resize
704         - Added GtkContainer::check_resize to replace need_resize.
705
706         - Added function gtk_container_check_resize() to trigger
707           queued resizes, and gtk_container_resize_children() to
708           Figure which children need to be size-allocated. (logic
709           moved from gtkwindow.c)
710
711         - Reorganized code in gtkwindow.c
712         
713         - Set the resize-mode for viewports so that resizes within
714           a viewport don't propagate out of it. 
715         
716 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
717
718         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
719
720         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
721         g_return_val_if_fail, because the function *does* return a value.
722
723 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
724
725         * gtk/gtkaccellabel.h:
726         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
727         request the size of the accelerator portion of an accel label.
728         (gtk_accel_label_size_request): don't request for the accelerators size.
729         (gtk_accel_label_expose_event): only draw the accelerator if we got
730         enough extra space.
731
732         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
733         width from children.
734
735         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
736         object (after removal has been requested) check if there is still an
737         accelerator remaining to avoid adding two accelerators on an object.
738         this can happen for locked accelerators (or accelerator-frozen widgets).
739         (gtk_menu_size_request): feature childrens accelerator width in size
740         requests.
741
742         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
743         gtk_widget_freeze_accelerators() for dynamically created menu items.
744
745         * gtk/gtksignal.h: 
746         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
747         which will return a handler_id > 0 if the specified function is pending
748         for `signal_id'.
749
750         * gtk/gtkwidget.h:
751         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
752         a signal handler function to stop accelerator addition.
753         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
754         which will prevent (undo) any accelerators from being added to or
755         removed from a widget.
756
757 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
758
759         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
760         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
761         acceleration, new API gtk_spin_button_set_snap_to_ticks.
762
763 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
764
765         * gdk/gdk.h:
766         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
767         the current GdkWindow the pointer is on if there is any.
768         
769         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
770         and one column, so we don't construction logic at all. changed a few
771         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
772         unsigned int wraps.
773
774         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
775         portion, added an additional check for parent != widget.
776
777         * more GtkType and macro fixups.
778
779 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
780
781         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
782         "clip" parameter, which is the clipping rectangle to use.  This
783         eliminates the extremely annoying flicker when exposing parts of
784         the handlebox.
785
786 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
787
788         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
789         resizing
790
791 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
792
793         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
794         != 0 on the argument.
795
796         * gtk/gtktable.h: 
797         * gtk/gtktable.c: new function gtk_table_resize() which allowes
798         shrinking and expanding of tables. implementation of widget arguments
799         and child arguments. many signedness corrections.
800
801 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
802
803         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
804         not only the child, otherwise we might end up taking away other
805         childrens space after the resize.
806
807         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
808         an unknown menu path from any source, that path must always be flagged
809         as "modified", since we don't really know whether it has its default
810         value or not.
811
812         * gtk/gtktree.c:
813         * gtk/gtkpacker.c:
814         * gtk/gtknotebook.c:
815         * gtk/gtkmenushell.c:
816         * gtk/gtklist.c:
817         * gtk/gtkpaned.c:
818         * gtk/gtkfixed.c: 
819         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
820
821         * gtk/gtkbox.h: 
822         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
823         arguments. implemented child arguments.
824
825         * more GtkType and macro fixups.
826
827 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
828
829         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
830
831         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
832         and gtk_clist_get_hadjustment.
833
834         * gtk/gtkcontainer.c:
835         implementation of children arguments, new class member functions
836         (child_type), (get_child_arg) and (set_child_arg) plus a new field
837         n_child_args.
838         (gtk_container_child_type): new function which returns the type of a
839         child that the container expects for its next addition.
840         (gtk_container_add_child_arg_type): new function to introduce a new
841         child argument at class creation time.
842         (gtk_container_query_child_args): new function to query all child
843         arguments that are supported by a container class.
844         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
845         child argument.
846         (gtk_container_child_arg_setv): new function to set a child argument for
847         a certain container and child combination.
848         (gtk_container_add_with_args):
849         (gtk_container_add_with_argv): new functions to feature addition of a
850         new child in combination with the setting of certain child arguments.
851
852         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
853         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
854         this should really be done through class cretion hooks some day.
855
856         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
857         guint : 16.
858
859         * gtk/gtkpacker.h:
860         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
861         follow the gtk convention for lower case variable names (important
862         for language wrappers and widget arguments), and made them guint : 16.
863
864         * examples/packer/pack.c: adaptions for the case converted GtkPacker
865         fields.
866
867 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
868
869         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
870         change the character pair for single line comments.
871         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
872         GtkItemFactoryClass.
873         (gtk_item_factory_parse_rc_string): likewise.
874
875 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
876
877         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
878         lists from the klass structure to a static structure
879         in gtkfontsel.c; cleans up global the namespace.
880
881 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
882
883         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
884         bug with /*< skip >*/ and remove warning.
885         
886 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
887
888         * gtk/Makefile.am: Made the gtkmarshal.* generation
889         rules maintainer-only.
890
891 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
892
893         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
894           gtk/Makefile.am gtk/makenums.pl 
895
896         Removed out the G_ENUM/FLAGS mechanism in favor
897         of a perl script that parses the standard headers
898         (with occasional /*< nick=foo >*/ style overrides)
899         and extracts the enumerations.
900
901           gtk/maketypes.awk: Small improvments to the
902           translation of names. (Avoid splitting gc into
903           g_c_.)
904         
905 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
906
907         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
908         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
909         
910 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
911
912         * gtk/gtkentry.c:
913         - Restored gtk_entry_adjust_scroll to static 
914         - Changed text positioning code so that we always
915           display as large a portion of the text as possible.
916
917 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
918
919         * gtk/gtktext.c (gtk_text_finalize): Free internal
920         structures of text widget. Also, unreference pixmaps
921         when unrealizing.
922         
923 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
924
925         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
926         3.3.1 bug workaround to number keys starting at 1.
927
928 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
929
930         * docs/gtk_tut.sgml: Fixed urls for complete example
931         source for scribble+widget-writing examples.
932
933 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
934
935         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
936         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
937         specs of the form c #abcdef [ more keys ] properly.
938
939 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
940
941         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
942         (gtk_spin_button_set_shadow_type):
943         New API to set the shadow type of the arrow panel.
944
945 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
946
947         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
948         code for drawing the child in two places at once. Unfortunately,
949         not only does it not work anymore (because reparenting has
950         been fixed), but it also triggers reparent/expose loops
951         in some cases.
952
953         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
954         an unecessary unrealize.
955
956 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
957
958         * gdk/gdkwindow.c (gdk_window_reparent): Update the
959           old and new parents' child window lists properly.
960
961 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
962
963         * gtk/gtkpacker.h:
964         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
965         and GtkSideType, to be consistent with the rest of Gtk's enum
966         definitions. wrapped the enum definitions with the G_ eunm wrappers.
967         spelled out the GTK_ANCHOR_* enum values, since single letters don't
968         work out corectly as nick-names (left the old values as aliases).
969         some signdness corrections (border-width, spacing), could stand more.
970
971 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
972
973         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
974           Added gtkpacker
975
976         * examples/packer/pack.c, examples/packer/Makefile: Added
977           gtkpacker example
978
979 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
980
981         * gtk/gtktext.c (remove_cache_line): Fixed broken
982         list-removal code.
983
984         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
985         Check bounds before deleting.
986
987 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
988
989         * autogen.sh: Support ACLOCAL_FLAGS
990
991 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
992
993         * gtk-config.in: Added missing quotes.
994
995 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
996
997         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
998
999 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
1000
1001         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
1002         G_COMPILED_WITH_DEBUGGING.
1003
1004         * configure.in (fd_set): Explain check better.
1005
1006         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
1007         the version from which gtk+'s libtool forked.  Needed for people
1008         who use post-1.2 alphas of libtool.
1009
1010 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
1011
1012         * glib/* Moved to glib module
1013
1014         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
1015           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
1016
1017           configuration changes for the above:
1018          
1019           - Use AM_PATH_GLIB by default to find glib; also accept
1020             a --with-glib option for using an uninstalled glib.
1021          
1022           - Put --enable-debug information into config.h so
1023             that we rebuild when it changes. (was in glibconfig.h)
1024
1025 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
1026
1027         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
1028
1029         * gtk/gtknotebook.h (struct _GtkNotebookClass):
1030         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
1031         added missing argument (according to Joseph Coleman's bug report)
1032
1033         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
1034         function to fix notebook focus handling
1035         
1036 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
1037
1038         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
1039           glib/gutils.c glib/testglib.c glib/gdataset.c
1040           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
1041           gtk/gtktext.c gtk/gtkbindings.c:
1042
1043          renamed g_const_pointer => gconstpointer
1044
1045 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
1046
1047         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
1048         invoked with (NULL, NULL); (this worked sometime ago).
1049
1050         * gtk/gtktypeutils.h: 
1051         * gtk/gtktypeutils.c: enum and flags type creation can now be done
1052         through gtk_type_register_enum() and gtk_type_register_flags(),
1053         which allow to specify the enum value arrays directly.
1054         the NULL terminated value arrays can be retrived through
1055         gtk_type_enum_get_values() and gtk_type_flags_get_values();
1056         (gtk_type_children_types): new function to query derived types.
1057
1058 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
1059
1060         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
1061         environment to genmarshal.pl.
1062         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
1063         rule), and removed it where not needed (in the dependencies).
1064
1065         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
1066
1067 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
1068
1069         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
1070         was just g_direct_hash.
1071
1072 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
1073
1074         * configure.in: x_libs=, not $x_libs=. Enough said.
1075           (Case only hit for --disable-xshm)
1076         
1077 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
1078
1079         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
1080           when testing for X libraries, don't replace them. Because
1081           the user might have specified the path to the X libraries
1082           themself before running configure.
1083
1084         * examples/**.c: Changed all gpointer * to gpointer
1085         
1086 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1087
1088         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
1089         fleur_cursor field.  Now the cursor is created/destroyed on demand
1090         by the routines that need it.
1091
1092         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
1093         (gtk_handle_box_motion): The fleur cursor is created and destroyed
1094         only when needed.
1095
1096 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
1097
1098         * gtk/gtktypeutils.h: 
1099         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
1100         gtk_enum_set_values to gtk_type_enum_get_values and
1101         gtk_type_enum_set_values respectively, since they are actually type
1102         system features.
1103
1104         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
1105         my last commit. ;)
1106
1107 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
1108
1109         * gtk/gtkselection.h: 
1110         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
1111         gtk_selection_data_free.
1112
1113         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
1114         for "selection_received", which was completely bogus.
1115         * other fixups to gtk_signal_new() calls all over the place.
1116
1117         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
1118         * gtk/gtktypebuiltins_vars.c: type variable implementations.
1119         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
1120         declarations.
1121         * gtk/gtktypebuiltins_evals.c: enum value arrays.
1122         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
1123         gtk.defs.
1124         * gtk/gtk.defs: generated file with scheme syntax for type definitions
1125         of gtk and gdk structures and enums.
1126         * gtk/gtktypeutils.h: 
1127         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
1128         macros anymore (this fixes binary incompatibility with new enum
1129         definitions).
1130
1131         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
1132         key bindings for this widget.
1133         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
1134         handler.
1135
1136         * gtk/gtkobject.h:
1137         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
1138         again. new functions gtk_object_class_user_signal_new () and
1139         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
1140         flag on the signal creation.
1141
1142 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
1143
1144         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
1145
1146 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
1147
1148         * gdk/gdkprivate.h: 
1149         * gdk/gdktypes.h: 
1150         * gtk/gtkprivate.h: 
1151         * gtk/gtkwidget.h: 
1152         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
1153
1154         * reworked enum value array generation code. gtk.defs is a generated
1155         file now.
1156
1157 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
1158
1159         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
1160         check menu items in the compatibility code (this required me to remove
1161         the "<check>" part from the menu item name, grrr).
1162
1163 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
1164
1165         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
1166         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
1167         
1168 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
1169
1170         * gtk/gtkitemfactory.h: 
1171         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
1172         additions to the dumping code to feature GtkPatternSpec.
1173         even found a bug to fix in the original code ;)
1174         
1175 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
1176
1177         * gtk/gtkitemfactory.c: support different types of callbacks, to
1178         maintain existing code.
1179
1180 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
1181
1182         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
1183
1184         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
1185         this should eventually be done by gentypeinfo.el somewhen.
1186         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
1187
1188         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
1189         enum values of an enum type.
1190
1191         * gtk/gtk.defs:
1192         * gtk/gtkcurve.h: 
1193         * gtk/gtkobject.h: 
1194         * gtk/gtkprivate.h: 
1195         * gtk/gtkwidget.h:
1196         * gtk/gtkenums.h: 
1197         brought enum/flags definitions in sync, added a few more enum
1198         definitions for bindings and pattern matching.
1199
1200         * some more macro and GtkType fixups in various places.
1201
1202         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
1203         as a key-release modifier for the binding system.
1204
1205 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
1206
1207         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
1208         was a stale list pointer that is already present in GtkMenuShell.
1209
1210         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
1211         GtkMenuShell::selection_done which is emitted after the menu shell
1212         poped down again and all possible menu items have been activated.
1213
1214 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
1215
1216         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
1217         before activation of the menuitem, so the menu is actually taken off the
1218         screen prior to any menu item activation.
1219
1220         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
1221         for NULL nodes.
1222
1223         * gtk/gtkwidget.h:
1224         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
1225         the emission of the "add-accelerator" signal on a widget. this is
1226         usefull to prevent accelerator installation on certain widgets.
1227
1228         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
1229         labels left justified, by setting their alignment. stop accelerator
1230         installation for the menu items, since we use dynamic menus.
1231
1232 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
1233
1234         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
1235         should *really* use GtkItemFactory. this is only for preserving source
1236         compatibility where possible, use of GtkMenuFactory is deprecated as of
1237         now.
1238
1239         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
1240         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
1241         missed this possibility when i added gtk_object_class_add_user_signal
1242         in late january.
1243
1244         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
1245
1246 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
1247
1248         * gtk/gtkaccelgroup.h: 
1249         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
1250
1251         * gtk/gtkaccellabel.h: 
1252         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
1253         display of the accelerators associated with a certain widget.
1254
1255         * gtk/gtkitemfactory.h: 
1256         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
1257         parsing and accelerator handling.
1258
1259         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
1260         positioning a menu.
1261         (gtk_menu_map): removed the allocation code.
1262         (gtk_menu_size_allocate): care for redrawing of children and resize
1263         our widget->window correctly.
1264         (gtk_menu_key_press): feature the new accelerator groups.
1265
1266         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
1267         submenu if neccessary.
1268
1269         * gtk/gtkmenuitem.c:
1270         * gtk/gtkcheckmenuitem.c:
1271         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
1272         function variants.
1273
1274         * gdk/gdk.c:
1275         (gdk_keyval_from_name): 
1276         (gdk_keyval_name): new functions for keyval<->key-name associations.
1277         (gdk_keyval_to_upper): 
1278         (gdk_keyval_to_lower): 
1279         (gdk_keyval_is_upper): 
1280         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
1281         regards to their cases.
1282
1283 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
1284
1285         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
1286         widget's class path.
1287         (gtk_widget_path): new function to calculate a widget's name path.
1288
1289         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
1290         pattern matching, features reversed pattern matches.
1291
1292 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
1293
1294         * examples/extract.sh, examples/extract.awk:
1295           New files to automagically extract code examples from the
1296           tutorial.
1297
1298 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
1299
1300         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
1301         * gtk/gtkcontainer.c (gtk_container_focus_move):
1302         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
1303
1304 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
1305
1306         * docs/gtk_tut.sgml: minor changes to support auto
1307           extraction of example code
1308
1309 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
1310
1311         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
1312           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
1313
1314 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
1315
1316         * docs/gtk_tut.sgml:
1317           - new section on Events
1318           - change all delete_event callbacks to include
1319             a GdkEvent parameter
1320           - clean up the formatting
1321
1322         * examples - helloworld.c, helloworld2.c, notebook.c,
1323           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
1324           rulers.c, table.c, wheelbarrow.c: change all delete_event
1325            callbacks to include a GdkEvent parameter.
1326
1327 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1328
1329         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
1330         field of crossing events.
1331         (struct _GdkEventCrossing): Added the following fields: time, x,
1332         y, x_root, y_root, mode, focus, state.
1333
1334         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
1335         crossing event structure.
1336
1337         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
1338         changes to the crossing event structure.
1339
1340 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
1341
1342         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
1343
1344 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
1345
1346         * docs/gtk_tut.sgml:
1347            - GtkTooltips, update to current API
1348            - change all 'gpointer *data' to 'gpointer data'
1349            - other minor changes
1350
1351 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
1352
1353         * configure.in (LDFLAGS): Bomb out with a moderately
1354           helpful message if detection of X libraries fails.
1355
1356 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
1357
1358   [ Combination of:
1359      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
1360      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
1361
1362         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
1363           gtk/gtksignal.c gtk/gtktext.c: 
1364
1365           Fixups for warnings from adding const to type of GHashFunc,
1366           GCompareFunc
1367         
1368         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
1369           ansi-warnings fixups.
1370
1371 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
1372
1373         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
1374         Locate child at (border_width,border_width), not
1375         (2*border_width,2*border_width). [ The border is _outside_
1376         widget->window ]
1377         
1378         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
1379           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
1380
1381 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
1382
1383         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
1384         used in gnome-libs
1385
1386 1998-05-22    <sopwith@redhat.com>
1387
1388         * gtk/gtkeventbox.c: Pass size_allocate on to the child
1389         regardless of whether it is visible or not. Also
1390         locate child at (border_width,border_width), not (0,0)
1391
1392 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
1393
1394         * gtk/gtkhandlebox.c: Added style_set handler.
1395
1396 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
1397  [ From: Chris Lahey  <clahey@umich.edu> ]
1398         
1399         * gtk/gtkeditable.c, gtk/gtkeditable.h,
1400           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
1401           and set_position functions to get and set the cursor position.
1402
1403         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
1404           signal status. Make GtkText do user-controlled insertion
1405           and deletion through the Editable widget so that these
1406           signals are properly emitted.
1407
1408         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
1409           display asterisks instead of empty space when visible = FALSE)
1410
1411 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
1412
1413         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
1414         signal.
1415
1416 1998-05-21    <sopwith@redhat.com>
1417
1418         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
1419         custom routine for loading images specified in gtkrc's.
1420
1421 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
1422
1423         * configure.in: Use pthread_attr_init() as a test function,
1424         since most of the rest of -lpthread is macros on DU4.
1425
1426 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
1427
1428         * gtk/gtkcombo.c: implemented completion in the entry.
1429
1430 1998-05-18    <sopwith@moebuis.labs.redhat.com>
1431
1432         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
1433
1434 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
1435
1436         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
1437         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
1438         to be of runtype GTK_RUN_LAST.
1439
1440         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
1441         "need-resize".
1442
1443         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
1444         "widget-selected".
1445
1446 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
1447
1448         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
1449         text retrived from GtkEntry. only intercept the Tab key if there
1450         was some text to complete.
1451
1452 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
1453
1454         Basic thread-awareness:
1455
1456         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
1457
1458         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
1459         gdk_threads_[init/enter/leave] for applications, plus
1460         gdk_threads_wake to wake the mainloop thread out of
1461         the select().
1462
1463         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
1464
1465 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
1466
1467         * gtk/testgtk.c (list_clear): Account for the fact
1468         that gtk_list_clear_items is not inclusive. (Clears
1469         [start, end))
1470
1471 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
1472
1473         * gdk/gdk.c: include gdkkeysyms.h always
1474         
1475
1476 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
1477
1478         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
1479         the visibility_notify_event method and changed method order.
1480
1481 1998-05-14    <sopwith@moebuis.labs.redhat.com>
1482
1483         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
1484
1485 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
1486
1487         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
1488         from Olli Helenius <ollhel@batman.jytol.fi>.
1489
1490         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
1491         freeing types.
1492         (gtk_type_set_chunk_alloc): new function to allow allocation of new
1493         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
1494         thorugh g_malloc).
1495
1496         * gtk/gtkobject.c (gtk_object_finalize): free an object through
1497         gtk_type_free().
1498
1499         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
1500         GtkButtons to 16.
1501         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
1502         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
1503
1504 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
1505
1506         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
1507           GPOINTER_TO_UINT fixes.
1508
1509         * gtk/gtksignal.c: Include <string.h> for memset.
1510
1511 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
1512         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
1513
1514         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
1515         Cleanups, comments and the ability to have rulers with 
1516         a reversed direction.
1517
1518 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
1519
1520         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
1521         that Sopwith missed when changing stat => lstat.
1522
1523 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
1524
1525         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
1526           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
1527         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
1528
1529         * gdk/gdk.c: Print sizeof() results
1530         as g_print("%ld", (glong)sizeof(foo)), to deal with
1531         sizeof() being long on Alpha's.
1532
1533         * gtk/testgtk.c: include <string.h> for strlen
1534
1535 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
1536         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
1537         
1538         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
1539         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
1540
1541         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
1542
1543 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
1544         (From: Christopher James Lahey <clahey@umich.edu>)
1545         
1546         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
1547           gtk/testgtk.c:
1548
1549         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
1550         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
1551         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
1552         the default relief for the toolbars buttons. Added an
1553         toggle for the toolbar test in testgtk.c.
1554
1555 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
1556
1557         * docs/gtk-config.1: Rewritten and hopefully improved.
1558
1559 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
1560
1561         * docs/Makefile.am
1562         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
1563
1564 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1565
1566         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
1567         GtkPreview's visual and colormap, otherwise things can BadMatch.
1568
1569         * gtk/testgtk.c (create_color_preview): 
1570         (create_gray_preview): Removed pushing/popping of visual/colormap
1571         now that GtkPreview does things correctly.
1572
1573         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
1574         (gtk_color_selection_draw_wheel): Pick the style from the correct
1575         place (the colorsel->wheel_area widget) so that the GCs will match
1576         with where we are going to paint to.
1577
1578         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
1579         of visual/colormap now that GtkColorSelection does things the
1580         right way.
1581
1582 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
1583
1584         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
1585         previously unused window->need_resize flag to mark if a window's
1586         descendents changed size while the window was not visible. In this
1587         case, when the window becomes visible, we reallocate everything,
1588         since we didn't keep track of what actually changed.
1589
1590         (Fixes bug where changing the popdown strings of a
1591         combo to something of the same length caused them to
1592         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
1593
1594 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
1595
1596         [security audit by Alan Cox]
1597
1598         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
1599         exceed maximum assumed size.
1600
1601         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
1602         not exceed maximum assumed size.
1603         (gtk_menu_factory_remove): likewise.
1604         (gtk_menu_factory_find_recurse): likewise.
1605
1606 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
1607
1608         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
1609         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
1610         redrawn if that is still neccessary. don't allow queueing of already
1611         destructed objects.
1612         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
1613         widgets which are in the queue can be destroyed safely, handle
1614         requeueing properly.
1615         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
1616         widgets which are in the queue can be destroyed/unrealized safely.
1617
1618 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
1619
1620         * gtkfaq.sgml: add question on multi-threading,
1621           minor URL cleanups.
1622
1623 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
1624
1625         * configure.in (cflags_set): preserve automake CFLAGS.
1626
1627         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
1628         and libgdk-1.1.la. this means we need to change certain portions of
1629         the Makefile.am on major/minor version bumps.
1630
1631         * ltmain.sh: the -release option is not required anymore.
1632         
1633         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
1634         of the first argument to be of type GtkObject. unconditionally compile
1635         this function. removed __GNUC__ dependancy of the gtk_object_ref and
1636         gtk_object_unref macro wrappers for this function.
1637
1638 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
1639
1640         * gtk/gtkobject.h:
1641         * gtk/gtkobject.c:
1642         (gtk_object_data_try_key):
1643         (gtk_object_data_force_id): these are now macros substituting the old
1644         functions. we just use the corresponding g_dataset_* functions for
1645         key->id associations. (this is to assure unique key<->id associations).
1646
1647 1998-05-10  Stefan Jeske  <stefan@gtk.org>
1648
1649         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
1650         to gboolean.
1651
1652         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
1653
1654 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
1655
1656         * configure.in (LIBS): Try to figure out if this
1657         is Digital Unix and we need -std1 to get the
1658         right prototypes.
1659
1660 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
1661
1662         * docs/gtk_tut_it.sgml: update of Italian tutorial
1663           translation from Daniele Canazza <dcanazz@tin.it>
1664
1665 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
1666
1667         * gtk/gtkfeatures.h.in: new file used as template for
1668         * gtk/gtkfeatures.h: new file to define macros indicating newly
1669         introduced features, such as GTK_HAVE_SIGNAL_INIT.
1670
1671         * gtk/gtksignal.c:
1672         (gtk_signal_emitv_by_name):
1673         (gtk_signal_emitv):
1674         new functions to emit signals with an already provided parameter set.
1675         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
1676         (gtk_signal_real_emit): prototype changes, so this functions always
1677         gets its parameters and signal structure as arguments.
1678         (gtk_signal_emit): provide the signal structure and parameter list for
1679         gtk_signal_real_emit.
1680         (gtk_signal_emit_by_name): likewise.
1681
1682 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
1683
1684         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
1685         signal connections through unsetting GTK_CONNECTED.
1686         (gtk_signal_handler_insert): reflect the presence of signal connections
1687         through setting GTK_CONNECTED.
1688         (gtk_signal_real_emit): only check for handler emissions if the object
1689         has the GTK_CONNECTED flag set.
1690         (gtk_signal_handler_pending): don't check for pending handlers if the
1691         GTK_CONNECTED flag is not set for this object.
1692
1693         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
1694         a GtkObject has signal handler connections.
1695
1696         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
1697         set for this object call gtk_signal_handlers_destroy().
1698         
1699         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
1700         multiple processing of macro args.
1701
1702         * gtk/gtktypeutils.c:
1703         * gtk/gtkobject.c:
1704         * gtk/gtkwidget.c:
1705         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
1706
1707 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
1708
1709         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
1710         draw-queue when we are done. 
1711
1712         (gtk_widget_queue_draw/_queu_resize): Always return
1713         FALSE and avoid having two idles at the same time.
1714         
1715 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
1716
1717         * gtk/gtktext.c: Various fixes to make sure cache
1718         lines are freed if line_start_cache doesn't point to the
1719         beginning of the cache.
1720
1721 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
1722
1723         * style_set improvements for GtkText and GtkEntry
1724
1725 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
1726
1727         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
1728         been initialized.
1729
1730 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
1731
1732         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
1733         data chunks through a global object data structure list. unlink
1734         object data before invoking its destroy function.
1735         (gtk_object_finalize): slight modification to allow usage of object
1736         data during object finalization.
1737
1738 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
1739
1740         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
1741         signal names, e.g. "signal-name" is now an alias for "signal_name".
1742         (gtk_signal_handler_new): allocate handlers through a global handler
1743         structure list, that's faster than memchunks.
1744         (gtk_emission_new): allocate emissions through a global emission
1745         structure list, that's faster than memchunks.
1746
1747 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
1748
1749         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
1750
1751         * ltmain.sh: added a new commandline flag -postfix similar to -release,
1752         but will immediately change the library name.
1753
1754         * gdk/Makefile.am:
1755         * gtk/Makefile.am: specify -postfix and -version-info
1756
1757         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
1758         GTK_BINARY_AGE. calculate LT_* variables for libtool.
1759
1760 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1761
1762         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
1763         background (fg_set -> bg_set confusion).
1764
1765 1998-05-06  Stefan Jeske  <stefan@gtk.org>
1766
1767         * gtk/testgtk.c (unselect_all): Removed code that caused an
1768         endless loop.
1769
1770 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
1771
1772         * gtk/gtksignal.c: reimplemented the signal storage system to use a
1773         linear array rather than a hash table.
1774         be carefull *not* to keep any GtkSignal pointers across invokations
1775         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
1776         general code cleanups, made all allocations through memchunks.
1777         (gtk_signal_lookup): we now do the lookup of signals through a key_id
1778         for the signal names to avoid multiple hashing of the signal name on
1779         lookups for the several hirarchy levels of an object.
1780
1781 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
1782
1783         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
1784         to speed things up and remove code duplication.
1785
1786         Reintegrated buffer overflow patches, and added
1787         some extra paranoia.
1788         
1789 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
1790
1791         * gdk/gdk.c (gdk_event_translate): A guint * was
1792         being passed where X expected a Keysym *, and
1793         keysyms are long's on Alpha Linux. This was causing
1794         segfaults in Xlib, apparently because of alignment.
1795         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
1796         
1797 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
1798
1799         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
1800         set GDK_EXPOSURE_MASK for DrawingAreas
1801
1802 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
1803
1804         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
1805         (superceded by RC file reparsing capabilities)
1806
1807         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
1808         events. (Shouldn't be sent to the InputOnly leader, which
1809         it is now by gdk_event_send_clientmessage_toall
1810
1811         * gtk/testgtk.c: Added extra button to rcfiles test
1812         to send out _GDK_READ_RCFILES events.
1813         
1814 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
1815
1816         * gtk/gtkselection.c (gtk_selection_clear): Fixed
1817         reversed conditionals that caused segfault on some
1818         platforms.
1819
1820 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
1821
1822         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
1823         cast to GTK_OBJECT for gtk_object_ref.
1824
1825 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
1826
1827         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
1828         checking for signal initialization in gtksignal.c.
1829
1830         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
1831         a long debugging period ;)
1832
1833 1998-05-05  Stefan Jeske  <stefan@gtk.org>
1834
1835         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
1836         New function to wrap XSetDashes; modified gtkctree.c to use it.
1837
1838 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1839
1840         * configure.in: Added $x_libs in the other_libraries field in the
1841         check for XShapeCombineMask.
1842
1843 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
1844
1845         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
1846         gtk_type_is_a().
1847         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
1848         linear array rather than a hash table. it actually speeded up testgtk
1849         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
1850         pointers across invokations of gtk_type_node_next_and_invalidate() and
1851         therefore gtk_type_unique()!
1852
1853         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
1854         inheritance of a class pointer.
1855         (GTK_OBJECT): modifications for speedups.
1856         (GTK_IS_OBJECT): likewise.
1857         (GTK_OBJECT_CLASS): likewise.
1858         (suggested by owen).
1859
1860         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
1861
1862         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
1863
1864         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
1865         since its derivation changed 4 month ago ;(. showed up with the unique
1866         type name checking code in gtk_type_unique().
1867
1868         * random guint->GtkType and macro fixups.
1869
1870 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
1871
1872         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
1873         Configure events that would result in a negative
1874         size.
1875
1876 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
1877
1878         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
1879         "glibconfig.h" and another about writing another IRC
1880         client.
1881
1882 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
1883
1884         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
1885         parameters to log are doubles. Digital Unix apparently
1886         is missing the argument in its prototype.
1887
1888 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
1889
1890         * gtk/gtklabel.c (gtk_label_state_changed): Don't
1891         force a clear until the widget is actually on
1892         screen.
1893
1894 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
1895
1896         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
1897         to make this consistent with the gtk-1-0 tree.
1898
1899 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
1900
1901         * configure.in acheader.h gdk/gdkwindow.c 
1902         Check for Shape extension both on the client and server
1903         side. (And, more importantly, check for the shape extension
1904         so we may include -lXext even when compiling with --disable-xshm)
1905
1906         Don't set override_redirect on all shaped windows. It isn't
1907         necessary.
1908
1909         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
1910         and foreign windows. Use this to check if we
1911         need to get the colormap from X.
1912
1913 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
1914
1915         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
1916         between the default and the button always in GTK_STATE_NORMAL.
1917
1918         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
1919         callback.
1920
1921 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
1922
1923         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
1924           Fix a buffer overflow on pixmaps that claim to have
1925           more than 31 characters per pixel.
1926
1927           (gdk_pixmap_read_string): Don't wrap around strings longer
1928           than half of address space ;-)
1929
1930         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
1931         that were used for printing integers.
1932
1933         * */* (almost):
1934
1935         Style: All 
1936           int foo () { ... }
1937         changed to
1938           int foo (void) { ... }
1939
1940         Even where there were proper prototypes elsewhere.
1941
1942         * gdk/gxid.c (handle_claim_device): Some extra checks.
1943         It isn't safe against being fed bad X id's, but at
1944         least it should be safe against deleting all your
1945         files.
1946
1947 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
1948
1949         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
1950         to set the adjustments value when there is no current emission.
1951         [ Removed by mutual agreement owt 5/3/1998 ]
1952
1953         * gtk/gtksignal.c: added new functions to retrive the number of
1954         existing emissions for a certain signal.
1955         (gtk_signal_n_emissions): new function.
1956         (gtk_signal_n_emissions_by_name): new function.
1957
1958 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
1959
1960         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
1961         set the current focus_child of a container, does proper referencing and
1962         adjusts the vadjustment/hadjustment associated with the focus widget.
1963
1964         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
1965         containers via gtk_container_set_focus_child.
1966
1967         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
1968         where appropriate.
1969
1970         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
1971         child since not every child removal goes through this function (this
1972         showed up after gtk_container_set_focus_child() started to reference the
1973         focus_child of a container).
1974
1975         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
1976         of a container from gtk_container_remove into this place.
1977
1978 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
1979
1980         * gtk/gtksignal.c: added new functions to operate on intermediate
1981         function pointers. implemented incremental blocking.
1982         (gtk_signal_disconnect_by_func): new function.
1983         (gtk_signal_handler_block_by_func): new function.
1984         (gtk_signal_handler_unblock_by_func): new function
1985
1986 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
1987
1988         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
1989         Always show the scrollbars when the policy is
1990         GTK_POLICY_ALWAYS...
1991
1992 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
1993
1994         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
1995         "value_changed" if we really passed a new value.
1996         (gtk_adjustment_changed): new function to emit the "changed" signal.
1997         (gtk_adjustment_set_value): new function to emit the "value_changed"
1998         signal.
1999
2000 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
2001
2002         * gtk/gtkcombo.c: Further changes to the way the window
2003         is popped up so that it will be compatible with 
2004         auto-scrolling in the future.
2005
2006 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
2007
2008         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
2009         the combo-list is empty since that will cause the combo to operate
2010         on a non existing GtkList window.
2011         (gtk_combo_get_pos): provide the combo list with a usfull default
2012         height if empty.
2013         (gtk_combo_popup_button_press): grab the focus.
2014         (gtk_combo_activate): grab the focus.
2015
2016 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
2017
2018         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
2019         function to reset the RC styles for a heirarchy
2020
2021         Clear the window background if necessary in
2022         gtk_window_style_set.
2023
2024         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
2025         rereads all previously read RC files.
2026
2027         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
2028         (Should it just be called gdk_get_toplevels?)
2029
2030         * gtk/testgtk.c: New test to reload RC files.
2031
2032 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
2033
2034         * gtk/gtkclist.h:
2035         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
2036         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
2037         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
2038         the GTK_ prefix (this solution involved less changes in the
2039         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
2040         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
2041         from lars & stefan to support the derivation of GtkCtree.
2042
2043         * gtkctree.h:
2044         * gtkctree.c:
2045         initial import of a tree widget derived from gtkclist, courtesy
2046         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
2047         it just damn rocks!
2048
2049 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
2050
2051         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
2052         for us.
2053         (gtk_list_insert_items):
2054         (gtk_list_remove_items_internal): 
2055         (gtk_list_clear_items): 
2056         remove a possible pointer grab, we might get thrown into a loop
2057         otherwise.
2058         (gtk_list_button_press): grab the pointer *before* selecting the child,
2059         because selection of items may cause the lists children to change,
2060         resulting in a grab release.
2061         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
2062         children.
2063         (gtk_list_shutdown): remove all children from the list.
2064         (gtk_real_list_unselect_child): 
2065         (gtk_real_list_select_child): *always* put our internal structures into
2066         sane state *before* signal emisions (i.e. list->selection updates prior
2067         to gtk_list_item_[de]select() calls).
2068
2069         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
2070         focused child walks out of the window.
2071         removed CAN_FOCUS for the combo arrow's button since it doesn't react
2072         to keyboard events ("clicked" connection is missing).
2073
2074 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
2075
2076         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
2077         getting colormap for FOREIGN windows to go along with
2078         Raster's fix for visuals.
2079
2080 Merges from gtk-1-0
2081 ===================
2082         
2083 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
2084
2085         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
2086         Check to catch the case when the viewport fits in either
2087         direction or both, instead of flip-flopping infinitely.
2088
2089         Only show/hide the scrollbars once at the end.
2090
2091 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
2092
2093         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
2094         Include the scrollbars in the foreach call.
2095         (gtk-fortier-980405-0.patch; 
2096          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
2097
2098         The notebook widget
2099         really should also include its tabs, but that might cause
2100         problems for programs if they
2101
2102 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
2103
2104         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
2105         resize if the size actually changed. 
2106         (gtk-johannes-980414-0.patch ;  
2107          johannes@nada.kth.se (Johannes Keukelaar) )
2108
2109 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
2110
2111         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
2112           ltmain.sh ltconfig config.sub config.guess:
2113
2114         Reverted back to libtool-1.2 (plus minor patches) so as not to
2115         force the issue for everyone else.
2116
2117 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
2118
2119         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
2120         Updated to libtool 1.2a.
2121
2122         * gtk/gtkclist.c: Draw the in-between lines with style->base
2123         instead of style->white.
2124         
2125 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
2126
2127         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
2128         Cache the colormap and children of a window locally
2129         instead of fetching them from the server when needed.
2130         Huge performance difference for creating/destroying
2131         windows.
2132
2133         * gtk/gtkstyle.c: Find the depth from the cached
2134         visual, instead of asking the server.
2135
2136         * gtk.m4: Distribute the new version which tries to
2137         figure out what went wrong and give helpful error
2138         messages.
2139
2140         * ltmain.sh ltconfig config.sub config.sh: 
2141         Updated to libtool 1.2a
2142
2143         * gtk/gtktext.c: Fixed a bug where the drawn level
2144         was being messed up when the text was scrolled
2145         during a deletion.
2146         
2147 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
2148
2149         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
2150         the filesystem under you (fix from Josh)
2151
2152 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
2153
2154         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
2155         if the viewport already exists before iterating over it, maybe we
2156         haven't been constructed yet.
2157
2158 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
2159
2160         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
2161         the GtkBin widget already has a child.
2162
2163         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
2164         check that child->parent == NULL;
2165
2166 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
2167
2168         * gtk/gtkselection.c (gtk_selection_clear): Only return
2169         FALSE when the clear event is been rejected, not when
2170         widget has already lost the selection. (Which should
2171         only happen when we are setting the selection to another
2172         widget ourself.)
2173         
2174 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
2175
2176         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
2177
2178         Removed the "check visibility after gtk_widget_unparent" bug 
2179         in hopefully the last three places.
2180
2181 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
2182
2183         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
2184         rc-files.
2185
2186 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
2187
2188         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
2189         for CAN_FOCUS widgets.
2190
2191         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
2192         adjustments for the table.
2193         (create_list): feature automatic adjustment of the scrolled window to
2194         always contain the focused child.
2195         (create_main_window): keep the focussed button always inside of the
2196         scrolled windoww.
2197
2198         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
2199         adjustments, to contain the allocation of the currently focused child.
2200         (gtk_container_set_focus_hadjustment): new functin to set the
2201         horizontal focus adjustment.
2202         (gtk_container_set_focus_vadjustment): new functin to set the vertical
2203         focus adjustment.
2204
2205         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
2206         clamp the currents adjustment page into a specific range.
2207
2208         * random GtkType fixups for gtk_*_get_type() functions.
2209
2210 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
2211
2212         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
2213         Account for the fact that gtk_tree_item_remove_subtree
2214         will be called recursively. 
2215
2216         Handle removing a collapsed subtree.
2217
2218         (From Andy Dustman <adustman@comstar.net>)
2219         
2220         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
2221         root tree when removing items from a non-previously
2222         mapped tree.
2223
2224         * gtk/testgtk.c: Added a remove_subtree button.
2225         
2226 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
2227
2228         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
2229         before object removing data. This change fixes a bug where 
2230         removing the last weak references would cause it to be 
2231         triggered.
2232
2233 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
2234
2235         * gdk/Makefile.am: Removed mostly useless dependency that
2236         was causing problems for SGI's make, when used with
2237         the 'make dist' form of GTK+. (Dependency caused dependencies
2238         to be redone when BUILT_SOURCES changed)
2239
2240 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
2241
2242         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
2243         like a menu.
2244         
2245         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
2246         to gtkitem.c so dragging can also work in lists.
2247
2248         * gtk/gtklist.[ch]: Track child enter events and use
2249         those to allow dragging the selection. 
2250
2251 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
2252
2253         * gtk/gtktext.c: Try enabling background pixmaps for editable text
2254         widgets.  There is a bit of flashing, but not too bad. If you
2255         don't want the flashing, you can always not set a background
2256         pixmap.
2257
2258 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
2259
2260         * gtk/gtktext.c: Fixed a bug where the drawn level
2261         was being messed up when the text was scrolled
2262         during a deletion.
2263         
2264 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
2265
2266         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
2267         bug:  There is no need to set the ExposureMask in the XGrabPointer
2268         (this caused DnD programs to crash).
2269
2270 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
2271
2272         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
2273         field to be of type guint.
2274         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
2275         ref_count>0;
2276         (gtk_accelerator_table_install): keep a per object list of accelerator
2277         tables that refer to this object.
2278         (gtk_accelerator_table_remove): remove the accelerator table from the
2279         per object list.
2280         (gtk_accelerator_table_clean): warn if there are any object references
2281         left in an accelerator table upon destruction.
2282         (gtk_accelerator_tables_delete): new function to delete object
2283         references from the accelerator tables associated with this object.
2284
2285         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
2286         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
2287         of an accelerator can be prevented by gtk_signal_emit_stop().
2288         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
2289         so there are no stale pointers in accelerator tables left.
2290
2291 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2292
2293         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
2294         visible before we unparent it.
2295
2296 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
2297
2298         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
2299         running_timeouts list with the tmp_list link itself, not with a new
2300         GList structure pointing to our link. that would fill up memory and
2301         causes the GList.data fields of the running_timeouts list to point to
2302         GList structures and not GtkTimeoutFunction structures which is a
2303         *really* bad thing.
2304         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
2305         the above entry ;).
2306
2307 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
2308
2309         * gtk/gtkradiomenuitem.h: 
2310         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
2311         ala gtk_radio_button_set_group.
2312         (gtk_radio_menu_item_init): assure that we always have at least a group
2313         that points to self.
2314
2315         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
2316         added g_return_if_fail() statements.
2317         (gtk_radio_button_init): assure that we always have at least a group
2318         that points to self.
2319
2320 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
2321
2322         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
2323
2324 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
2325
2326         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
2327         (Damon Chaplin), which i got wrong when applying Damon's patch the last
2328         time.
2329
2330 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
2331
2332         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
2333         that when we are running with a non-installed colormap,
2334         in 8-bit pseudo-color, we actually are using the system
2335         visual. (Fixes *Bad Match* errors on Digital Unix machines
2336         with multiple 8-bit pseudo-color visuals)
2337
2338 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
2339
2340         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
2341         by whoever thought that randomly changing ints to unsigned int
2342         without reviewing the code was a good idea.  It is, btw not
2343         mentioned in the ChangeLog as usual, but I know it was not Elliot
2344         the culprit this time. 
2345
2346 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
2347
2348         * Released GTK+ 1.0.0