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