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