]> Pileus Git - ~andy/gtk/blob - ChangeLog
#include <stdlib.h> for rand()
[~andy/gtk] / ChangeLog
1 Sun Sep  6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
2
3         * gtk/testrgb.c: #include <stdlib.h>
4
5 Sat Sep  5 16:01:19 1998  Owen Taylor  <otaylor@gtk.org>
6
7         * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
8         When the pointer is grabbed on an input window,
9         either explicitely, or through press-grab, and
10         then grabbed on a non-input window, ungrab the
11         devices.
12
13 Sat Sep  5 07:13:19 1998  Tim Janik  <timj@gtk.org>
14
15         * gtk/gtktypeutils.h: don't include any gdk headers.
16         added structure definitions for GtkTypeObject and GtkTypeClass,
17         which cover the very basic fields of GtkObject and GtkObjectClass,
18         which are actually used by the type system.
19         
20         * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
21         we only refer to our own structures. improved class inheritance
22         sanity checking a bit.
23
24         * gtk/gtkobject.h: placed appropriate comments at the beginnings
25         of the GtkObject and GtkObjectClass structures, which explain
26         their relationship to GtkTypeObject and GtkTypeClass.
27
28         * gtk/gtktypeutils.h:
29         * gtk/gtkobject.h:
30         moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
31         GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
32         gtkobject.h to gtktypeutils.h.
33
34         * gtk/gtkobject.h:
35         * gtk/gtkobject.c:
36         removed gtk_object_check_cast() and gtk_object_check_class_cast()
37         functions. to keep source compatibility, we can provide macro aliases
38         for the corresponding gtk_type_* functions. but then again, people
39         shouldn't have been using these functions anyways since they were part
40         of Gtk's internal API.
41
42         * gtk/gtktypeutils.h:
43         * gtk/gtktypeutils.c:
44         implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
45         functions to check GtkTypeObject and GtkTypeClass types.
46
47 Thu Sep  3 07:16:54 1998  Tim Janik  <timj@gtk.org>
48
49         * gtk/gtkctree.h:
50         * gtk/gtkctree.c: `const' fixups.
51
52         * gtk/gtkclist.h:
53         * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
54
55         * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
56         if it is passed as NULL.
57
58 Wed Sep  2 22:41:40 1998  Raph Levien  <raph@gimp.org>
59
60         * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
61         big-endian cases. Added a 4bpp packed gray mode (somewhat
62         incorrectly hardwired to MSB), which should take care of
63         Stric's hardware.
64
65 Thu Sep  3 04:45:57 1998  Tim Janik  <timj@gtk.org>
66
67         * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
68         GtkSIgnalQuery leak.
69
70 Thu Sep  3 04:22:20 1998  Tim Janik  <timj@gtk.org>
71
72         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
73         GTK_MENU_DIR_CHILD: check for the existance of
74         menu_shell->active_menu_item before accessing its child.
75         GTK_MENU_DIR_PREV:
76         GTK_MENU_DIR_NEXT: if we haven't had an active item and still
77         don't, make a default selection.
78
79 Wed Sep  2 00:28:58 1998  Tim Janik  <timj@gtk.org>
80
81         * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
82         the children with _forall for sensitivity changes and with
83         _foreach on pure state changes. this fixes a lot of the
84         old inclusions of internal widgets into _foreach calls.
85
86         * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
87         do the work. don't walk the subtrees of first level children.
88
89         * gtk/gtktreeitem.c: provide a _forall implementation,
90         which walks the subtrees as well for include_internals.
91
92         * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
93         the submenus as well for include_internals.
94
95         * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
96         implemented gtk_scrolled_window_forall, which will iterate over
97         the viewport and the scrollbars for gtk_container_forall or
98         iterate over the viewports children for gtk_container_foreach.
99
100         * gtk/gtktoolbar.c: 
101         * gtk/gtktable.c: 
102         * gtk/gtkpaned.c:
103         * gtk/gtkpacker.c:
104         * gtk/gtkmenushell.c: 
105         * gtk/gtklist.c: 
106         * gtk/gtkfixed.c:
107         * gtk/gtkclist.c:
108         * gtk/gtkbox.c: 
109         * gtk/gtkbin.c: 
110         * gtk/gtknotebook.c:
111         removed the old gtk_*_foreach functions and provided gtk_*_forall.
112
113         * gtk/gtknotebook.c:
114         (gtk_notebook_real_switch_page): expose tabs.
115         (gtk_notebook_page_num): new function to return the page number
116         of a distinct child.
117         (gtk_notebook_focus): minor fixups. foxus handling is still screwed
118         under some circumstances.
119
120         * gtk/gtktreeitem.c:
121         (gtk_real_tree_item_select):
122         (gtk_real_tree_item_deselect): major fixes.
123         some general fixups wrt queue_redraw, and tree items not being
124         NO_WINDOW widgets.
125
126         * gtk/gtklistitem.c:
127         (gtk_real_list_item_select): 
128         (gtk_real_list_item_deselect): 
129         (gtk_real_list_item_toggle): 
130         removed unneccessary queue_redraw calls.
131
132 Wed Aug 30 09:42:07 1998  Tim Janik  <timj@gtk.org>
133
134         * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
135         automatically popup the menu on space bar.
136
137 Wed Aug 26 06:40:34 1998  Tim Janik  <timj@gtk.org>
138
139         * gtk/gtkcontainer.h:
140         * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
141         method), which acts similar to gtk_container_foreach(), but iterates
142         over internal children. the GtkContainer::foreach signal vanished in
143         favour of a new class method ->forall() that optionally includes
144         internal widgets.
145
146         * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
147         but a _forall implementation, since all child widgets we have are
148         internal ones.
149         (column_button_create): set the parent window prior
150         to gtk_widget_set_parent().
151
152         * gtk/gtkwidget.c:
153         exchanged all calls to gtk_container_foreach() with
154         gtk_container_forall().
155
156         * gtk/gtkwidget.h: 
157         * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
158         the GtkWidget::composite_child argument. to have a widget created
159         with the flag initially, two new functions got added to wrap a widgets
160         creation:
161         gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
162
163 Wed Aug 25 23:37:39 1998  Tim Janik  <timj@gtk.org>
164
165         * gtk/gtktooltips.h:
166         * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
167         gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
168         prior to the first tip being set.
169         don't put an extra reference on the window, since it is a toplevel,
170         it wont get destroyed from anywhere else.
171
172         * overall macro and GtkType fixups.
173
174 1998-09-02  Federico Mena Quintero  <federico@nuclecu.unam.mx>
175
176         * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
177         constructs by more forgiving ones.  (Does anyone else feel like
178         the color selector need rewriting?).
179
180 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
181
182         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
183         the adjustment.
184
185         * gtk/gtkmenu.c: Modified reference counting so
186         that the reference count from the toplevel that
187         the menu creates to the menu is invisible to the
188         application.
189
190 Mon Aug 31 21:36:31 1998  Raph Levien  <raph@gimp.org>
191
192         * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
193         conversion selection logic, so Suns and other big-endian
194         machines should get faster conv routines. This is also the
195         point where 4bpp gray and 1bpp are checked in, although I
196         wouldn't be surprised if 1bpp is a little buggy. This is
197         synchronized with the 0.0.7 release of GdkRgb.
198
199         * gtk/Makefile.am: 
200         * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
201         appropriate change to the Makefile.am
202
203 Mon Aug 31 15:18:19 1998  Raph Levien  <raph@gimp.org>
204
205         * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
206         which is good for images that scroll (makes the dither patterns
207         align correctly)
208
209 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
210
211         * gdk/gdkcolor.c:
212         (gdk_colormap_new) (gdk_colormap_get_system):
213         quell some warnings with g_hash_table_new
214
215         * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
216         when we're done with it
217
218         * gtk/itemfactory.c:
219         (gtk_item_factory_from_path):
220         (gtk_item_factory_create_item): free some strings
221
222         * gtk/gtklabel.c:
223         (gtk_label_finalize): free label->pattern when done
224         (gtk_label_parse_uline): null terminate pattern string, delete
225         some duplicated code
226
227         * gtk/testthreads.c: add #include <unistd.h> for sleep()
228
229 Tue Aug 25 16:52:47 1998  Owen Taylor  <otaylor@redhat.com>
230
231         * gtk/gtktext.c (recompute_geometry): Make sure the
232         mark we pass to line start is the beginning of a 
233         real line, not a wrapped one.
234
235 Mon Aug 24 18:37:15 1998  Owen Taylor  <otaylor@redhat.com>
236
237         * gtk/gtktext.c: Reference count the fonts used in
238         the text widget.
239
240         * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
241         freeing functions to be more consistent, and more 
242         convenient; leave the old names in for backwards compatibility.
243
244         * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
245         allocations in pseudo-color colormaps to greatly reduce
246         calls to XAllocColor. Keep a per-colormap hashtable to
247         speed up finding if there is an already-allocated matching
248         color.
249
250         * gdk/gdkcolor.c: Don't just match read the system colormap
251         when the colormap is created, but synchronize our copy
252         with the system colormap periodically.
253         
254         * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c: 
255         Change XIM constants names to match GDK conventions
256
257         * gtk/testinput.c: Allow the drawing area to get the focus.
258
259         * gtk/testgtk.c: Change around the Text test to demonstrates
260         multiple fonts, use more colors.
261
262         * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
263         so they work after a widget is unrealized.
264
265         * gtk/gtktext.[ch]: Remove the requirement that the text
266         widget be realized before adding text (!) Allocate colors
267         ourself, instead of requiring the caller allocate them.
268         Allow changing styles to work properly by keeping track
269         of the values for a certain property are default or
270         set explicitely.
271
272         * gtk/gtkmenu.h: Added some comments.
273
274         * gtk/gtkentry.c: Changes to match XIM constants.
275
276         * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
277         for adding keyed data to drawables. (Uses g_dataset
278         internally)
279
280         * gdk/gdkpixmap.c: Keep track of the colors we allocate,
281         when creating an XPM - store them as user data for the GdkPixmap,
282         so we don't leak colors when we create pixmaps from XPM's.
283
284         Allocate memory for color information in large blocks instead of 
285         as many little pieces.
286         
287 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
288
289         * gdk/gdkrgb.c: removed some unused variables
290
291         * gtk/gtkclist.c
292         * gtk/gtkmain.c: #if 0'd out some unused code
293
294         * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
295
296 Mon Aug 24 02:36:53 1998  Tim Janik  <timj@gtk.org>
297
298         * gtk/gtkarg.h:
299         * gtk/gtkarg.c:
300         * gtk/gtkwidget.h: 
301         * gtk/gtkwidget.c: 
302         * gtk/gtkobject.h:
303         * gtk/gtkobject.c:
304         * gtk/gtkcontainer.h: 
305         * gtk/gtkcontainer.c: 
306         (gtk_object_new):
307         (gtk_object_set):
308         (gtk_widget_new):
309         (gtk_widget_set): 
310         (gtk_container_add_with_args):
311         (gtk_container_child_set):
312         begin the parameter elipsis (...) after the first argument name. this
313         change is source compatible, since it was always required, even as NULL.
314         (gtk_args_collect): 
315         (gtk_object_args_collect): 
316         (gtk_container_child_args_collect):
317         changed prototypes to pass first_arg_name, also, pass va_list variable
318         by value (portability concerns). callers changed.
319
320         * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
321         a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
322         can't pass va_list variables by reference for portability reasons.
323
324 Fri Aug 21 22:40:00  Raph Levien  <raph@gtk.org>
325
326         * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
327         get_visual calls, so that it gets implicitly initialized.
328
329 Fri Aug 21 13:06:04 1998  Stuart Parmenter  <pavlov@gimp.org>
330         * gtk/gtkfeatures.h.in:  added GTK_HAVE_FEATURES_1_1_2 for changes
331         such as GtkCTree function name changes
332         
333 Fri Aug 21 02:31:26 1998  Tim Janik  <timj@gtk.org>
334
335         * gtk/gtkmain.h:
336         * gtk/gtkmain.c (gtk_check_version): added a function to perform a
337         binary version check, returning a static string for error descriptions,
338         or NULL on success.
339
340 Thu Aug 20 20:08:15 1998  Owen Taylor  <otaylor@redhat.com>
341
342         * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
343         computed our geometry yet, and if not, ignore the request.
344
345         * gtk/gtktext.c (correct_cache_insert): Fiddled around
346         some more. All the bug-test codes seem to work at once
347         now. (fingers crossed...)
348
349 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
350
351         * gdk/gdkrgb.c: silly visual fixes
352
353         * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
354         works
355
356 1998-08-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
357
358         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
359         anything if the event's window is not the bin window.
360         (gtk_handle_box_motion): Likewise.
361
362 1998-08-19  Raph Levien  <raph@gimp.org>
363
364         * gtk/testgtk.c (create_color_preview): pushed the colormap and
365         visual so it would work better with GdkRgb.
366
367 1998-08-19  Raph Levien  <raph@gimp.org>
368
369         * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
370         4bpp static_color mode (for vga displays). Also fixed a '64' value
371         in the dither matrix, which was causing one pixel out of 16k to be
372         dithered wrong.
373
374         * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
375         most of the contents. This is an API change - any apps that relied
376         on the internal structure of GtkPreview will need some change -
377         most notably in the use of reserved colors. The Gimp needed
378         changes in this regard.
379
380 Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>
381
382         * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
383         G_ENABLE_DEBUG being defined (specifically --gtk-module= and
384         --g-fatal-warnings), noticed by miguel.
385
386 Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>
387
388         * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
389         getcwd().
390
391         * gdk/gdkprivate.h:
392         * gdk/gdkglobals.c:
393         * gdk/gdkwindow.c:
394         * gdk/gdk.c:
395         * gtk/gtkwindow.c: 
396         * gtk/gtkitemfactory.c: 
397         dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
398
399         * gtk/gtkselection.c:
400         * gtk/gtkpreview.c:
401         * gtk/gtkobject.c: 
402         * gtk/gtkmain.c: 
403         * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
404
405         * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
406
407 Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>
408
409         * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab): 
410         * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
411         in case of show_tabs == NULL
412
413 Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>
414
415         * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
416         to --g-fatal-warnings again. this option now causes log levels of
417         WARNING and CRITICAL to abort().
418
419         * gdk/gdk.c: 
420         * gdk/gdkdnd.c: 
421         * gdk/gdkcc.c: 
422         * gdk/gdkfont.c: 
423         * gdk/gdkwindow.c:
424         * gdk/gdkvisual.c:
425         * gtk/gtkwidget.c:
426         * gtk/gtktypeutils.c:
427         * gtk/gtktree.c:
428         * gtk/gtkfontsel.c:
429         * gtk/gtkmain.c:
430         * gtk/gtkobject.c:
431         * gtk/gtkpreview.c:
432         * gtk/gtkselection.c:
433         * gtk/gtktext.c:
434         * gtk/gtktree.c:
435         * gtk/gtktreeitem.c:
436         did a global search&replace to substitute g_print() calls with
437         g_message(). libraries shouldn't use printf(), g_print() or
438         g_printerr() at all.
439         a bunch of the replacements should probably be wrapped into the
440         G{D|T}K_NOTE() macros, so they are special cased for debugging
441         purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
442         things.
443
444         * gdk/gdkdnd.c: added copyright notice.
445
446 Mon Aug 17 17:28:00  Raph Levien  <raph@gtk.org>
447
448         * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
449         impressively fast now - about 4.65 Mpix/s on an IBM TP 600
450         running a PII 233. It's synced with the 0.0.5 release of
451         GdkRgb.
452
453 Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>
454
455         * gtk/gtkclist.h:
456         (struct _GtkCListClass): new class methods:
457         (sort_list) (insert_row) (remove_row) (set_cell_contents)
458
459         * gtk/gtkclist.c :
460         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
461         removed and replaced by (set_cell_contents)
462         (set_cell_contents): function for class method set_cell_contents
463         (real_insert_row): function for class method insert_row
464         (real_remoce_row): function for class method remove_row
465         (real_sort_list): function for class method sort_list
466         (default_compare): fix to avoid problems with cell types != CELL_TEXT
467
468         * gtk/gtkctree.h :
469         (gtk_ctree_export_to_gnode): new function to export a ctree as gnode 
470         (gtk_ctree_node_is_visible): new function to return visibility state
471         of a node
472         (gtk_ctree_show_stub): new function to set visibility of root stub
473
474         renamed functions :
475         (gtk_ctree_insert) -> (gtk_ctree_insert_node)
476         (gtk_ctree_remove) -> (gtk_ctree_remove_node)
477         (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
478         (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
479         (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
480         (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
481         (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
482         (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
483         (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
484         (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
485         (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
486         (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
487         (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
488         (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
489         (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
490         (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
491         (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
492         (gtk_ctree_sort) -> (gtk_ctree_sort_node)
493         (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
494
495         * gtk/gtkctree.c :
496         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
497         removed and replaced by (set_cell_contents)
498         (set_cell_contents): function for class method set_cell_contents
499         (real_insert_row): function for class method insert_row
500         (real_remoce_row): function for class method remove_row
501         (real_sort_list): function for class method sort_list
502         (default_compare): removed. CTree now also compares two GtkCTreeRows
503         instead of two GtkCTreeNodes.
504         (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
505         unlinking the node
506         (real_tree_expand) (real_tree_collapse): fix for refcounting of
507         node pixmaps
508         (set_node_info): call gtk_ctree_node_set_pixtext instead of
509         manipulating the row itself
510         
511         * gtk/testgtk.c: use renamed functions of GtkCTree.
512         new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
513         at work.
514
515 Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>
516
517         * gtk/gtkmain.c: removed gtk_input_add_interp.
518
519         * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
520         keyword.
521         (gtk_editable_get_event_time): fix default: case.
522
523         * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
524
525         * gdk/gdkpixmap.c: made a bunch of unexported functions static.
526
527         * gdk/gdkcolor.c:
528         * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
529         of our functions.
530
531         * various minor compilation cleanups, such as bogus commas in
532         enums and similar things.
533
534 Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>
535
536         * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
537         (thanx raph).
538
539 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
540
541         * NEWS: updated for 1.1.2
542         * gtk+.spec: version = 1.1.2
543
544 Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>
545
546         * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
547         times. changed --gtk-with-module to --gtk-module at owen's request.
548
549 Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>
550
551         * gtk/gtkmain.c (gtk_init): feature a new commandline option
552         --gtk-with-module=<module> that allows additional loading and
553         initialization of modules (e.g. GLE).
554
555 Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>
556
557         * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
558         pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
559
560         * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
561         with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
562         "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
563         different *-fatal-* arguments now. this needs to be revised and
564         compressed to a reasonable amount of arguments.
565
566 Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>
567
568         * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
569         "--g-fatal-warnings" causes fatal warnings in GLib,
570         "--gdk-fatal-warnings" causes fatal warnings in Gdk,
571         "--gtk-fatal-warnings" causes fatal warnings in Gtk.
572
573         * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
574         * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
575
576         * gtk/testgtk.c: 
577         * gdk/gxid.c:
578         we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
579         since automake doesn't support per target _CFLAGS yet.
580
581         * configure.in: require GLib 1.1.3.
582
583 Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>
584
585         * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
586         to set a callback to test if a node in drag can be dropped onto
587         it's currrent location.
588         * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
589         to change the pointer when a drag destination is not allowed.
590
591 Thu Aug 13 21:06:00 1998  Raph Levien  <raph@gtk.org>
592
593         * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
594         speeds up the 565_d case by about 25% total. Thanks Ray!
595
596 Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>
597
598         * Changed GtkSignalFunc back to () from (void). (again!)
599
600         * Added file README.cvs-commits
601         
602 Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>
603
604         * docs/gtk_tut.sgml:
605           - Tidy up of the menufactory example from
606             Andy Kahn <kahn@zk3.dec.com>
607           - New section on Range Widgets from
608             David Huggins-Daines <bn711@freenet.carleton.ca>
609           - Started a new section on 'Advanced Event and Signal
610             Handling' - used an email from Owen.
611           - New appendix on Gdk Event Types
612           - Added the tictactoe full example code to the
613             'Code Examples' appendix
614
615 Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>
616
617         * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - 
618           to calculate all the metrics at once of a string, including
619           things which weren't calculated before.
620
621         * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
622           MenuItem type, that when put as the first thing in a
623           menu, makes the menu tearoff. Currently drawn as a
624           dashed line.
625
626         * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
627           "hide_on_activate" to the MenuItem class structure to allow
628           check and radio buttons to be changed with <Space> without
629           hiding the menu.
630
631         * gtk/gtkitemfactory.c: 
632           - Create a AccelGroup for each MenuShell we create.
633           - If an '_' appears before a  character 'c' in the path,
634             then make 'c' an accelerator in the menu's accel group,
635             and if the menuitem is menubar <alt>C an accelerator 
636             in the itemfactory's accel group. Double '__' inserts
637             a literal '_'
638
639         * gtk/gtklabel.[ch]: Add support for a pattern arg - 
640           which is a string. If an '_' appears in this string,
641           the corresponding position in the label is underlined.
642
643           Add gtk_label_parse_uline() convenience function which
644           takes a string with embedded underlines, sets the
645           pattern and label, and returns the accelerator keyval.
646
647         * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
648           Instead, they create a GtkWindow and add themselves
649           to that. (When torn off, another new feature, they
650           create another GtkWindow to hold the torn off menu)
651
652           New function gtk_menu_set_tearoff_state()
653         
654         * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: 
655           Added action signals  for keyboard navigation of menus.
656
657         * gtk/gtkmenushell.c: Key press handler which activates
658           bindings for navigation, and accelerators, for handling
659           underline accelerators. Exported functions to select 
660           and activate menu items in a menushell.
661
662         * gtk/testgtk.c: Added a new "Item Factory" test which
663           tests GtkItemFactory and the new keyboard navigation
664           of menus.
665
666 Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>
667
668         * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
669         external functions have been called. also relookup nodes after
670         this function has been invoked.
671
672 Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>
673
674         * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
675           beginning of Text when creating the Text widget.
676
677         * gtk/testgtk.c: Grab the focus on the text widget so
678           as to test out the above.
679
680 Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>
681
682         * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16. 
683           ::changed is a notification signal and should have no default
684           handler. A complete redraw of the Text widget does _not_ need to
685           be done on every text insertion.
686
687 Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
688         (gtk-abilleira-072198-patch)
689
690         * gtk/gtkwindow.[ch]: 
691           Add gtk_window_set_modal() which sets a flag; when
692           set the window does a gtk_grab_add() when the window
693           is shown, and a gtk_grab_remove() when the window
694           is hidden. 
695
696         * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
697           that case will run "Create Dir","Delete File" and "Rename File" 
698           dialogs as modal too.
699
700         * gtk/testgtk.c: Added a button with an example of creating modal 
701           dialog boxes. Including file selection and color selection standard
702           dialogs.
703         
704 Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>
705
706         * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
707           Removed CAN_FOCUS by default from scrollbars, button
708           children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
709           (Scrollbar definitely good change, toolbar bit more questionable)
710
711 Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>
712
713         * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
714         Pettersen).
715
716 Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>
717
718         * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0; 
719           added all logical operations to gc->function.
720
721 Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>
722
723         * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
724         gtk_widget_size_allocate instead of gtk_widget_queue_resize
725         if the visibility state of a scrollbar changes.
726
727 Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>
728
729         * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
730
731 Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>
732
733         * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
734         gtk_clist_merge and gtk_clist_mergesort. :)
735
736 1998-08-06  Martin Baulig  <martin@home-of-linux.org>
737
738         * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
739         `mergesort' -> `my_mergesort'.
740
741 Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>
742
743         * gtk/gtkenums.h: new enum GtkSortType.
744         
745         * gtk/gtkclist.h:
746         * gtk/gtkclist.c:
747         Added sorting capabilities to GtkCList. New APIs :
748         gtk_clist_set_compare_func, gtk_clist_set_sort_column,
749         gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort. 
750         New internal functions : default_compare, merge, mergesort.
751
752         (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
753         
754         (gtk_clist_insert): Modified to handle gtk_clist_append and the
755         auto sort flag. Changed the return value from void to gint to
756         return the row number where the element was actually inserted.
757
758         (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
759         
760         * gtk/gtkctree.h:
761         * gtk/gtkctree.c:
762         Removed the auto_sort flag, replaced ctree->node_compare with
763         clist->compare all over the place, modified default_compare to
764         match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
765         gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
766
767         * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
768         sorting. The lists can be sorted by a column by clicking the 
769         corresponding title button.
770         
771 Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
772
773         * Released GTK+ 1.1.1
774
775 Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>
776
777         * gtk/gtkctree.h:
778         * gtk/gtkctree.c:
779         (gtk_ctree_find): changed to return a gboolean
780         (gtk_ctree_insert_gnode): new function for recursive insertion of a
781         GNode tree.
782         (gtk_ctree_real_select_recursive): fix for extended selection
783         (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
784         (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
785
786 Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>
787
788         * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
789         GLib version 1.1.1 is now required at minimum.
790
791         * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
792         of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
793
794 Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>
795  
796         * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
797           cursor before (possibly) deleting the cursor's text
798           property.
799  
800         * gtk/gtktext.c (correct_cache_delete): More attempts
801           to clean the line-start cache up after inserting
802           a property. Among other things, make sure to
803           fix up text->current_line, since it is used to 
804           refetch the changed lines.
805  
806 Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>
807
808         * gtk/gtktable.[ch]: Empty rows/columns of the table
809         should not have been marked as being able to shrink.
810         (Fixes problem with shrinking scrollbarless GIMP canvases)
811
812 1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
813
814         * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
815         function to find a row by its data pointer using a custom
816         comparison function.
817
818 Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>
819
820         * gtk/gtkclist.c: draw the buttons during a "draw" as well,
821           this fixes a bug when the whole widget is made non-sesitive
822           the buttons weren't redrawn
823
824 Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>
825
826         * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
827         * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
828         * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
829
830 Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>
831
832         * gdk/gdkwindow.c (gdk_window_reparent): Change 
833           window_private->parent pointer when reparenting.
834
835 Sat Aug  1 22:17:00 1998  Raph Levien  <raph@acm.org>
836
837         * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
838         with the standalone release.
839
840 Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>
841
842         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
843         (gtk_clist_button_release) (new_column_width): Few fixes for
844         column resize. Store resize column in clist->drag_pos.
845
846 Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>
847
848         * gtk/gtkctree.h 
849         * gtk/gtkctree.c 
850         * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
851         to GtkCTreeNode *node.
852
853         * gtk/gtklist.h : added extended selection mode and auto scrolling.
854         (struct _GtkList): removed unneeded variables timer, button,
855         selection_start_pos, selection_end_pos, scroll_direction, have_grab.
856         Added new variables undo_selection, undo_unselection, last_focus_child,
857         undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
858         drag_selection, add_mode.
859  
860         New functions :
861         (gtk_list_extend_selection), (gtk_list_start_selection),
862         (gtk_list_end_selection), (gtk_list_select_all),
863         (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
864         (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
865         (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
866         (gtk_list_undo_selection), (gtk_list_end_drag_selection)
867         
868         * gtk/gtklist.c : 
869         (gtk_list_enter_notify): removed, because auto scrolling now works
870         with gtk_list_motion_notify
871  
872         New functions, needed for auto scrolling :
873         (gtk_list_motion_notify) (gtk_list_move_focus_child)
874  
875         New functions for extended selection support :
876         (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
877         (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
878         (gtk_list_focus_lost)
879         
880         (gtk_list_set_focus_child): modified gtk_container_set_focus_child
881         function to support auto scrolling, and avoid out-of-sync errors in
882         case auf GTK_SELECTION_BROWSE
883         (gtk_list_focus): modified gtk_container_focus function to avoid out
884         off sync errors in case auf GTK_SELECTION_EXTENDED
885
886         * gtk/gtklistitem.h 
887         * gtk/gtklistitem.c :
888         New signal functions for key binding support :
889         (toggle_focus_row), (select_all), (list_item), (unselect_all)
890         (list_item), (undo_selection), (start_selection), (end_selection)
891         (extend_selection), (scroll_horizontal), (scroll_vertical),
892         (toggle_add_mode)
893         (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
894         GDK_KEY_RELEASE_MASK
895         (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
896  
897         * gtk/gtkcombo.c :
898         (gtk_combo_popup_button_press):  grab pointer for combo->list
899         (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
900         (gtk_combo_list_key_press): take care of which child HAS_GRAB
901         (gtk_comb_init): don't connect combo->button with button_release_event
902
903 Thu Jul 30 12:39:36 1998  Lars Hamann  <lars@gtk.org>
904
905         * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
906
907 Wed Jul 29 23:31:50 1998  Lars Hamann  <lars@gtk.org>
908
909         * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
910         horizontal autoscrolling, GtkCTree's 'reorder ability' now works
911         with horizontal and vertical autoscrolling.
912
913 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
914
915         * gtk/docs/man: new directory
916         * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
917
918 Tue Jul 28 00:03:20 1998  Lars Hamann  <lars@gtk.org>
919
920         * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
921         bug
922
923 Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>
924
925         * docs/gtk_tut.sgml: GtkTree section from
926           David Huggins-Daines <bn711@freenet.carleton.ca>,
927           add a GtkText widget example
928         * examples/text/* example/tree/* : new examples for the
929           GtkTree and GtkText widgets
930         * docs/gtk_tut.sgml: added an appendix to hold complete code
931           examples that aren't in a full form elsewhere in the
932           tutorial (e.g. scribble)
933
934 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
935
936         * Released GTK+ 1.1.0
937
938 Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>
939
940         * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
941         the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
942
943 Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>
944
945         * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
946         values are looked up.
947
948         * gtk/gtktypeutils.h:
949         * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
950         gtk_type_enums_find_value to lookup enum values.
951
952         * gtk/gtkctree.h: 
953         * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
954         GtkCTreeExpansionType. fixed signal creations to pass the enum
955         types not just the base type GTK_TYPE_ENUM.
956
957         * gtk/gtkclist.h: 
958         * gtk/gtkclist.c: fixed signal creations to pass the real enum
959         types not just the base type GTK_TYPE_ENUM.
960
961 Sun Jul 26 14:50:07 1998  Stefan Jeske  <stefan@gtk.org>
962
963         * gtk/testgtk.c : 
964         Began cleanup, e.g. use gtk_widget_show_all instead of many 
965         gtk_widget_show's. Completely rewrote the button box sample
966         (only one window now). Removed "miscellaneous" button.
967
968 Sun Jul 26 14:48:14 1998  Stefan Jeske  <stefan@gtk.org>
969
970         * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate): 
971         Fixed wrong allocation for GTK_BUTTONBOX_END.
972         (allocation->x  =>  allocation->y)
973
974 Sun Jul 26 14:06:37 1998  Lars Hamann  <lars@gtk.org>
975
976         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
977         (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
978         
979         * gtk/gtkctree.c (real_tree_select): added check to avoid double
980         selected rows
981         (gtk_ctree_button_press)
982         (gtk_ctree_button_release): fix for pointer grab
983
984 Sat Jul 25 13:16:00 1998 Damon Chaplin  <DAChaplin@msn.com>
985
986         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): 
987         Fixed initialization problem - dirty memory could cause problems.
988         Also checked that bitmapped fonts can be scaled when showing the
989         available sizes.
990
991 Sat Jul 25 02:25:03 1998  Lars Hamann  <lars@gtk.org>
992
993         * gtk/gtkctree.c (gtk_ctree_sort_recursive)
994         (gtk_ctree_sort_recursive): test for node != NULL
995         (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
996         (gtk_ctree_last) : added sanity checks
997         * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
998
999 Fri Jul 24 18:15:49 1998  Lars Hamann  <lars@gtk.org>
1000
1001         * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
1002
1003 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
1004
1005         * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
1006
1007 Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
1008
1009         * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
1010         to check out binding priorities. someone should really write
1011         gtkrc-mode for emacs.
1012
1013         * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
1014         * gtk/testgtk.c (main): and move it here ;). this test says something
1015         on release of C-9. (this works only if the mouse pointer is on a
1016         spinbutton and there is no focus widget).
1017
1018         * gtk/gtkrc.h:
1019         * gtk/gtkrc.c:
1020         export gtk_rc_parse_color, gtk_rc_parse_state and a new function
1021         gtk_rc_parse_priority to parse path priority types.
1022         export rc tokens.
1023         feature binding parsing.
1024
1025 Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
1026
1027         * gtk/gtkbindings.h: 
1028         * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
1029         feature binding parsing in rc files.
1030         * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
1031         * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
1032         order the bindings with lowest priority first.
1033
1034 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
1035
1036         * gdk/gdkrgb.c: actually builds and runs properly on big
1037         endian machines now, because we #include config.h. Also
1038         fixed up a compile error in the WORDS_BIGENDIAN case in
1039         gdk_rgb_convert_565_gray. I made the fix by looking at
1040         patterns in the other code; Raph can you verify this?
1041
1042         * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
1043         warnings
1044
1045 Wed Jul 22 23:00:44 1998  Lars Hamann  <lars@gtk.org>
1046
1047         * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse) 
1048         (tree_toggle_expansion) (real_select/unselect_row)
1049         (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
1050
1051 Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>
1052
1053         * gtk/gtktext.c (new_text_property): We free things from
1054         the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
1055
1056         * Fix up line start cache when splitting a property
1057         during an insert.
1058
1059 Wed Jul 15 21:15:52 1998  Owen Taylor  <otaylor@redhat.com>
1060
1061         * gtk/gtkwidget.c: restauration => restoration
1062
1063 Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>
1064
1065         * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
1066         hasn't been created yet, don't do the lookup.
1067
1068 1998-07-20  Raph Levien  <raph@acm.org>
1069
1070         * gdk/gdkrgb.c: More cleanups in the config process.
1071
1072 1998-07-20  Raph Levien  <raph@acm.org>
1073
1074         * gdkrgb.c: Fixed minor config bug preventing big-endian
1075         architectures from working.
1076
1077 Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>
1078
1079         * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
1080         activity indicator. It is settable now as a fraction of the
1081         total width/height using gtk_progress_bar_set_activity_blocks.
1082         Renamed gtk_progress_bar_set_number_of_blocks to
1083         gtk_progress_bar_set_discrete_blocks.
1084
1085 Mon Jul 20 21:28:18 1998  Lars Hamann  <lars@gtk.org>
1086
1087         * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
1088         (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
1089         tree to specified depth
1090         (gtk_ctree_expand_to_depth): expand tree to specified depth
1091         (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
1092
1093 Sun Jul 19 23:51:05 1998  Lars Hamann  <lars@gtk.org>
1094
1095         * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
1096         of GTK_CLIST_ADD_MOD
1097         * gtk/testgtk.c (add1000_clist): changed pixmap
1098
1099 Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>
1100
1101         * gtk/gtkmain.h: 
1102         * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
1103
1104         * gtk/gtktypeutils.h:
1105         * gtk/gtkitemfactory.h: remove "void" from prototypes again.
1106
1107 Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>
1108
1109         * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
1110         CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
1111         (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
1112         CHILD_ARG_POSITION
1113         (gtk_notebook_reorder_child): new funktion to change position of a
1114         notebook page
1115         (gtk_notebook_draw_arrow): draw left/right arrow with
1116         GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
1117
1118         * gtk/gtkstyle.c (gtk_default_draw_arrow):
1119         added GTK_SHADOW_ETCHED_IN/OUT
1120
1121 Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>
1122
1123         * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
1124           gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
1125         Introduced generic GtkProgress widget. Derived GtkProgressBar from
1126         GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
1127
1128 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
1129
1130         * gtk/gtktypeutils.h
1131         * gtk/gtkitemfactory.h: explicitly specify void in prototype
1132
1133 Fri Jul 17 17:54:02 1998  Lars Hamann  <lars@gtk.org>
1134
1135         * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
1136         of list
1137
1138 Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>
1139
1140         * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
1141         sropped the approach of copying all signal specific data into a
1142         GtkHandlerInfo structure. we rather keep the signal data on the stack
1143         in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
1144         avoids multiple lookups of the signal pointer and works savely together
1145         with destroy notifiers of handlers.
1146
1147         * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
1148         someone destroys the entry on the ::activate signal.
1149
1150 Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>
1151
1152         * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
1153         instead of ypad (typo).
1154         (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
1155         border around the allocation).
1156         (gtk_arrow_init): the static requisition needs to be setup in this
1157         function rather than gtk_widget_new(), so arrow creation works without
1158         the gtk_arrow_new() constructing.
1159         (gtk_arrow_expose): return TRUE, since we actually handled the expose.
1160
1161         * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
1162         implementation for GtkWidget::size_request, so size requisition for
1163         simple statically sized widgets like GtkArrow works.
1164
1165 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
1166
1167         * gtk-config.in: minor changes to gtk-config: --cflags doesn't
1168         prepend -I@libdir@/glib/include anymore, since glib-config handles
1169         it; --libs strips out redundant -L<path>'s properly (there was
1170         code in there to do it before, but it didn't work)
1171
1172 Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>
1173
1174         * gtk/gtknotebook.h: 
1175         * gtk/gtknotebook.c: signdness corrections all ove the place.
1176         implementation of object arguments: GtkNotebook::enable_popup,
1177         GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
1178         GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
1179         begun implementation of child args, we have GtkNotebook::tab_label, but
1180         GtkNotebook::menu_label and GtkNotebook::position still lack the
1181         implementation.
1182         (gtk_notebook_remove_page):
1183         (gtk_notebook_current_page): allow negative indices (-1) as alias for
1184         the last page.
1185
1186         * gtk/gtkentry.h:
1187         * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
1188         arguments GtkEntry::max_length and GtkEntry::visibility.
1189         (gtk_entry_adjust_scroll): queue a redraw.
1190
1191         * gtk/gtkeditable.h:
1192         * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
1193         object arguments GtkEditable::text_position and GtkEditable::editable.
1194         new (action) signal GtkEditable::set_editable.
1195         provide a default handler for GtkEditable::changed that queues a redraw.
1196
1197         * gtk/gtktext.h: 
1198         * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
1199         set_editable.
1200
1201 Thu Jul 16 14:42:11 1998  Lars Hamann  <lars@gtk.org>
1202
1203         * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
1204         case of drag_target == NULL
1205         * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
1206         Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
1207         * gtk/gtkfilesel.c (gtk_file_selection_file_button,
1208         gtk_dir_selection_file_button): fix due to changes in clist's
1209         select_row signal.
1210
1211 Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
1212
1213         * gtk/gtkwidget.h:
1214         * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
1215         similar to gtk_widget_set_uposition(). that is: -1=unspecified,
1216         -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
1217         to be gint16s rather than guint16s, since that's what the code expected
1218         (for a long time actually).
1219
1220         * gtk/gtkviewport.c:
1221         added support for object arguments: GtkViewport::shadow_type,
1222         GtkViewport::vadjustment and GtkViewport::hadjustment.
1223         (gtk_viewport_add): chain gtk_bin_add.
1224
1225         * gtk/gtkscrolledwindow.c: 
1226         added support for object argument: GtkScrolledWindow::hscrollbar_policy,
1227         GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
1228
1229         * gtk/gtkadjustment.h: 
1230         * gtk/gtkadjustment.c: 
1231         * gtk/gtkctree.h: 
1232         * gtk/gtkclist.h: 
1233         * gtk/gtkctree.c: 
1234         * gtk/gtkclist.c:
1235         * gtk/gtkscrolledwindow.h:
1236         * gtk/gtkscrolledwindow.c:
1237         * gtk/gtkviewport.h:
1238         * gtk/gtkviewport.c:
1239         GtkType and macro fixups.
1240
1241 Thu Jul 16 01:10:02 1998  Lars Hamann  <lars@gtk.org>
1242
1243         * gtk/gtkctree.h :
1244         * gtk/gtkctree.c :
1245         Added focus handling, horizontal and vertical autoscrolling,
1246         extended Selection Mode, key bindings
1247         Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
1248         Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
1249         Removed gtk_ctree_clear.
1250         
1251         * gtk/gtkclist.h :
1252         * gtk/gtkclist.c : 
1253         Added focus handling, horizontal and vertical autoscrolling,
1254         extended Selection Mode, key bindings
1255
1256 Wed Jul 15 12:39:27 1998  Raph Levien  <raph@acm.org>
1257
1258         * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
1259         source tree. For more information on GdkRgb, please see:
1260         http://www.levien.com/gdkrgb/
1261
1262         * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
1263         bothers me slightly that the feature is in gdk, and this file is
1264         in gtk, but it's probably ok.
1265
1266         * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
1267
1268         * gdk/gdkrgb.c:
1269         * gdk/gdkrgb.h: Added this module.
1270
1271         * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
1272
1273         * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
1274
1275 Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>
1276
1277         * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
1278         to this function. it needs to relookup the signal multiple times.
1279         this fixes spurious segfaults that could show up with signal intensive
1280         code, when classes are created during a pending emission (which is
1281         normal case).
1282
1283 Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>
1284
1285         * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
1286         child if it isn't a label.
1287
1288 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
1289
1290         * gtk/gtkdialog.h: 
1291         * gtk/gtkseparator.h: 
1292         * gtk/gtkhseparator.h: 
1293         * gtk/gtkvseparator.h: macro and GtkType fixups.
1294
1295 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
1296
1297         * gtk/testgtk.c (create_cursors): display the current cursor name.
1298
1299         * gtk/gtktypeutils.h: 
1300         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
1301         the fundamental type definition. the GtkArg union now only covers
1302         the required storage types for argument values. adapted the GTK_VALUE_*
1303         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
1304
1305         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
1306         code, fixed int/float collection. fixed a bug in the sanity checking
1307         code for GtkObjects.
1308
1309         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
1310         argument collection code.
1311
1312         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
1313         macros when distinguishing the return type.
1314
1315 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
1316
1317         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
1318           is not NULL before trying to g_list_remove the child. A patch
1319           from Michael Lausch.
1320
1321 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
1322
1323         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
1324         collection (always casted to doubles upon argument passing).
1325
1326 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
1327
1328         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
1329         object_init_func for derived objects with the object's ->klass field
1330         still pointing to the corresponding base class, otherwise overridden
1331         class functions could get called with partly-initialized objects.
1332         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
1333
1334 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
1335
1336         * gtk/gtkobject.h:
1337         * gtk/gtkobject.c:
1338         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
1339
1340         * gtk/gtkcontainer.h:
1341         * gtk/gtkcontainer.c:
1342         (gtk_container_child_arg_get_info): new function which wraps
1343         gtk_arg_get_info().
1344
1345 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
1346
1347         * gtk/gtkcontainer.c:
1348         (gtk_container_arg_get): 
1349         (gtk_container_arg_set): 
1350         * gtk/gtkobject.c:
1351         (gtk_object_arg_set): 
1352         (gtk_object_arg_get):
1353         strictly check for the associated get/set arg functions. if an
1354         arg is readable or writable, the associated class functions *must*
1355         be provided.
1356
1357 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
1358
1359         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
1360         padding into account if there is an accelerator.
1361
1362 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
1363
1364         * gtk/gtkcontainer.c:
1365         (gtk_container_add_with_args): collect the arguments with
1366         gtk_container_child_args_collect, not through gtk_object_args_collect.
1367         (gtk_container_child_set): likewise.
1368
1369 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
1370
1371         * gtk/gtktypeutils.h: 
1372         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
1373         which is derived from GTK_TYPE_STRING.
1374
1375         * gtk/gtkbindings.c: reworked the argument type handling.
1376
1377 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1378
1379         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
1380           so that it seems to allow normal operation in those modes,
1381           although you will only see black  (GIMP toolbar now pops up,
1382           just don't create a new image and GIMP now works in 4 bit.)
1383
1384 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1385
1386         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
1387           array, which was too low (?)
1388
1389 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
1390
1391         * gtk/gtkcontainer.h: 
1392         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
1393         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
1394         we now export a new function gtk_container_child_args_collect().
1395         for consistency with the object arguments, a few functions got renamed:
1396         gtk_container_child_arg_get -> gtk_container_child_get,
1397         gtk_container_child_arg_set -> gtk_container_child_set,
1398         gtk_container_child_arg_getv -> gtk_container_child_getv,
1399         gtk_container_child_arg_setv -> gtk_container_child_setv,
1400         gtk_container_add_with_argv -> gtk_container_addv.
1401         note, gtk_container_add_with_args() remained, because its equivalent
1402         would be gtk_container_add(,, ...) which would break all existing code.
1403         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
1404         we expect the `arg_name' argument to be a const static string now.
1405         (gtk_container_get_child_arg_type): function removed.
1406
1407 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
1408
1409         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
1410         this is a static inline function that collects command line arguments
1411         from a va_list. this file can just be included in all places that
1412         need this functionality.
1413
1414         * gtk/gtkarg.h: 
1415         * gtk/gtkarg.c: new files which implement most of the argument
1416         handling stuff from gtkobject.c. also collected a few more
1417         gtk_arg_* utility functions from else places.
1418
1419         * gtk/gtkobject.h: 
1420         * gtk/gtkobject.c: moved most of the argument handling code into
1421         gtkarg.c. we now export gtk_object_args_collect() as a non-public
1422         method with a blind va_list pointer.
1423         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
1424         const static string now.
1425         (gtk_object_get_arg_type): function got removed.
1426
1427         * gtk/gtkwidget.c: 
1428         (gtk_widget_set): 
1429         (gtk_widget_new): adaptions for gtk_object_args_collect().
1430
1431         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
1432         fundamental type name so as to have a valid prefix, e.g. "bool"->
1433         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
1434         though that should probably be something like GtkNone since the
1435         type itself is called GTK_TYPE_NONE.
1436         even the internal type names need to avoid name clashes and must live
1437         in their own namespace, several code portions rely on that.
1438         we should relly have typedefs such as typedef gchar* GtkString; so the
1439         fundamental type names can be used for code dumpers just like with all
1440         the Gtk/Gdk types.
1441
1442 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
1443
1444         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
1445         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
1446         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
1447         (GTK_RELIEF_HALF).
1448         (gtk_button_paint): set the background for prelighted buttons with
1449         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
1450         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
1451         the shadow type (otherwise we get strange shadows for coloured buttons).
1452         (gtk_button_set_relief): queue a redraw after changing
1453         the relief.
1454         (gtk_button_class_init): 
1455         (gtk_button_set_arg): 
1456         (gtk_button_get_arg): added object argument "GtkButton::relief".
1457
1458         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
1459
1460 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
1461
1462         * gtk/gtkbutton.h:
1463         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
1464         GTK_BIN (button)->child to button->child to keep source compatibility.
1465
1466         * gtk/gtkoptionmenu.c:
1467         * gtk/gtkclist.c:
1468         * gtkcheckbutton.c: don't refer to button->child, but
1469         GTK_BIN (button)->child instead.
1470
1471 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
1472
1473         * docs/gtkfaq.sgml: update anon CVS info
1474
1475 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
1476
1477         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
1478         functions.
1479
1480         * gdk/gdkwindow.c:
1481         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
1482         to XFree() calls.
1483
1484 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1485
1486         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
1487         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
1488
1489 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
1490
1491         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
1492
1493 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
1494
1495         * gtk/gtkwidget.h:
1496         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
1497
1498         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
1499         error that prevented signal to entry addition for signals with
1500         parameters.
1501
1502 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
1503
1504         * ltconfig: fix for properly detecting shared lib support on
1505         SunPro cc (taken from libtool 1.2.a)
1506
1507 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
1508
1509         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
1510
1511 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
1512
1513         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
1514         rc set pattern is favoured, this is needed for overriding of style
1515         patterns with subsequently parsed rc files.
1516
1517 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
1518
1519         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
1520         error messages.
1521
1522 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
1523
1524         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
1525         modifier as well.
1526         (gtk_accelerator_name): add "<Release>" to the accelerator name if
1527         neccessary.
1528
1529         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
1530         account.
1531
1532         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
1533         default handler for key-release events, which checks for activation
1534         of GDK_RELEASE_MASK key bindings.
1535
1536         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
1537
1538 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
1539
1540         * gtk/gtkarrow.h: GtkType and macro fixups.
1541         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
1542         "GtkArrow::shadow_type".
1543
1544 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
1545
1546         * gtk/gtkalignment.h:
1547         * gtk/gtkbin.h: GtkType and macro fixups.
1548         
1549         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
1550         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
1551         GtkAlignment::xscale, GtkAlignment::yscale.
1552
1553 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
1554
1555         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
1556         fucntions from all parent types upon class initialization.
1557
1558         * gtk/gtkcontainer.c:
1559         (gtk_container_get_type): announce gtk_container_base_class_init to
1560         the type system.
1561         (gtk_container_base_class_init): new function to feature base class
1562         initialization.
1563         (gtk_container_get_child_arg): 
1564         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
1565         and set_child_arg methods of the class indicated through the argument
1566         name.
1567
1568         * gtk/gtkobject.c:
1569         (gtk_object_base_class_init): new function to feature base class
1570         initialization.
1571         (gtk_object_init_type): announce gtk_object_base_class_init to the type
1572         system.
1573         (gtk_object_class_init): setup the get_arg and set_arg pointers for
1574         GtkObjectClass.
1575         (gtk_object_setv): 
1576         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
1577         instead of bothering the type system with this.
1578
1579         * gtk/gtkaccellabel.c: 
1580         * gtk/gtkbutton.c: 
1581         * gtk/gtkradiobutton.c: 
1582         * gtk/gtktable.c:
1583         * gtk/gtktogglebutton.c: 
1584         * gtk/gtktipsquery.c: 
1585         * gtk/gtkbox.c: 
1586         * gtk/gtkpacker.c: 
1587         * gtk/gtkwidget.c: 
1588         * gtk/gtkwindow.c: 
1589         * gtk/gtkframe.c: 
1590         * gtk/gtkmisc.c:
1591         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
1592         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
1593         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
1594         arg functions to take a GtkObject argument.
1595
1596         gtk/gtkadjustment.c:
1597         gtk/gtkalignment.c:
1598         gtk/gtkarrow.c:
1599         gtk/gtkaspectframe.c:
1600         gtk/gtkbbox.c:
1601         gtk/gtkbin.c:
1602         gtk/gtkcheckbutton.c:
1603         gtk/gtkcheckmenuitem.c:
1604         gtk/gtkclist.c:
1605         gtk/gtkcolorsel.c:
1606         gtk/gtkcombo.c:
1607         gtk/gtkctree.c:
1608         gtk/gtkcurve.c:
1609         gtk/gtkdata.c:
1610         gtk/gtkdialog.c:
1611         gtk/gtkdrawingarea.c:
1612         gtk/gtkeditable.c:
1613         gtk/gtkentry.c:
1614         gtk/gtkeventbox.c:
1615         gtk/gtkfilesel.c:
1616         gtk/gtkfixed.c:
1617         gtk/gtkfontsel.c:
1618         gtk/gtkgamma.c:
1619         gtk/gtkhandlebox.c:
1620         gtk/gtkhbbox.c:
1621         gtk/gtkhbox.c:
1622         gtk/gtkhpaned.c:
1623         gtk/gtkhruler.c:
1624         gtk/gtkhscale.c:
1625         gtk/gtkhscrollbar.c:
1626         gtk/gtkhseparator.c:
1627         gtk/gtkimage.c:
1628         gtk/gtkinputdialog.c:
1629         gtk/gtkitem.c:
1630         gtk/gtkitemfactory.c:
1631         gtk/gtklist.c:
1632         gtk/gtklistitem.c:
1633         gtk/gtkmenu.c:
1634         gtk/gtkmenubar.c:
1635         gtk/gtkmenuitem.c:
1636         gtk/gtkmenushell.c:
1637         gtk/gtknotebook.c:
1638         gtk/gtkoptionmenu.c:
1639         gtk/gtkpaned.c:
1640         gtk/gtkpixmap.c:
1641         gtk/gtkpreview.c:
1642         gtk/gtkprogressbar.c:
1643         gtk/gtkradiomenuitem.c:
1644         gtk/gtkrange.c:
1645         gtk/gtkruler.c:
1646         gtk/gtkscale.c:
1647         gtk/gtkscrollbar.c:
1648         gtk/gtkscrolledwindow.c:
1649         gtk/gtkseparator.c:
1650         gtk/gtkspinbutton.c:
1651         gtk/gtkstatusbar.c:
1652         gtk/gtktext.c:
1653         gtk/gtktoolbar.c:
1654         gtk/gtktooltips.c:
1655         gtk/gtktree.c:
1656         gtk/gtktreeitem.c:
1657         gtk/gtkvbbox.c:
1658         gtk/gtkvbox.c:
1659         gtk/gtkviewport.c:
1660         gtk/gtkvpaned.c:
1661         gtk/gtkvruler.c:
1662         gtk/gtkvscale.c:
1663         gtk/gtkvscrollbar.c:
1664         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
1665         match the modified GtkTypeInfo structure.
1666
1667 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
1668
1669         * gtk/testgtk.c: use rand() instead of random() for portability
1670
1671 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
1672
1673         * configure.in
1674         * acconfig.h
1675         * gdk/gdk.c: use native Xlib XConvertCase if it's available
1676
1677 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
1678
1679         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
1680         XConvertCase() functionality from X11R6 on X11R5 systems.
1681
1682 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
1683
1684         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
1685         gdk_string_height, gdk_char_height to retrieve the exact
1686         height of a text.
1687
1688 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
1689
1690         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
1691           by Stefan Mars <mars@lysator.liu.se>
1692         * examples/clist/clist.c examples/clist/Makefile: example code
1693           for GtkCList widget from the Tutorial
1694
1695 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
1696
1697         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
1698         if the container is not visible, we might be a toplevel! this holds
1699         for all other base container implementations as well, that are
1700         candidates to derive toplevels from. in general the resizing code will
1701         care about visibility itself.
1702         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
1703         * gtk/gtkbox.c (gtk_box_remove): likewise.
1704
1705         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
1706         gtk_window_set_hints(), since we haven't calculated the new position
1707         yet.
1708
1709         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
1710         *mask are alway initialized in a sane way, regardless of the return
1711         value.
1712
1713 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
1714
1715         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
1716         to gtk_container_child_arg_setv, but takes a variable argument list.
1717         new function gtk_container_get_child_arg_type, which is needed by
1718         gtk_object_collect_args.
1719
1720         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
1721         take a function pointer to figure the argument type.
1722         adapted callers to pass gtk_object_get_arg_type.
1723         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
1724         gtk_object_get_arg_type..
1725
1726         * gtk/gtkpacker.h: 
1727         * gtk/gtkpacker.c:
1728         (gtk_packer_reorder_child): new function to change the packing order
1729         of a child.
1730         (gtk_packer_size_request): 
1731         (gtk_packer_size_allocate): take container->border_width into acount.
1732
1733         * gtk/gtkpacker.c: implemented widget arguments:
1734         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
1735         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
1736         implemented child arguments:
1737         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
1738         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
1739         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
1740         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
1741
1742         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
1743         not the alignment.
1744
1745         * gtk/gtkeventbox.h:
1746         * gtk/gtkeventbox.c: GtkType and macro fixups.
1747
1748         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
1749         sensitivity of an entry.
1750
1751         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
1752         for insensitive base and text.
1753
1754         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
1755         widget state dependent.
1756         (gtk_entry_style_set): likewise.
1757         (gtk_entry_state_changed): set background color on state changes.
1758         (gtk_entry_draw_text): for non selected text, use state dependent
1759         colors.
1760
1761         * gtk/gtktogglebutton.c: support for widget arguments
1762         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
1763
1764 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
1765
1766         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
1767         code for 1.0.x-like parameters. Changed internal interface of
1768         gtk_spin_button_real_spin. Several fixes to avoid emission of
1769         "value_changed" where possible.
1770
1771 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
1772
1773         * gtk-boxed.defs: s/GkWidget/GtkWidget/
1774
1775 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
1776
1777         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
1778         to select the resize_mode for the idle-labels container.
1779
1780         * gtk/gtkframe.h: 
1781         * gtk/gtkframe.c: GtkType and macro corrections.
1782
1783         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
1784         support widget argument "GtkRadioButton::group".
1785
1786 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
1787
1788         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
1789         unconditionally if resize_mode has changed.
1790
1791         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
1792         GTK_RESIZE_QUEUE on the scrolled window.
1793         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
1794
1795 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
1796
1797         * gtk/gtkcontainer.h:
1798         * gtk/gtkcontainer.c:
1799         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
1800         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
1801         (gtk_container_queue_resize): new function to queue a container for
1802         a *size* reallocation (doesn't affect its position, and thus its
1803         parent is left untouched usually).
1804         (gtk_container_get_resize_container): new function to retrive the next
1805         most resize container which is not itself queued for a resize.
1806         (gtk_container_idle_sizer): new function to carefully process the
1807         container_resize_queue since it can change during invokation of
1808         gtk_container_check_resize().
1809         (gtk_container_resize_children): total rework of this function to
1810         properly handle resize containers. makes a lot of assumptions whitch
1811         are stated in the comments.
1812
1813         * gtk/gtkcontainer.c:
1814         (gtk_container_real_check_resize): only requeue ourselves if we are not
1815         a resize container.
1816         (gtk_container_clear_resize_widgets): care for automatic deletion of our
1817         resize_widgets list on size_allocate through a handler connection.
1818
1819         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
1820         focus and default widget of a window, so to take the burden from
1821         gtk_widget_unparent.
1822
1823         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
1824         to be clever, but actually messed up the resize_children logic and
1825         caused unneccessary allocations on its whole branch. besides this,
1826         it messed up the display by not invoking a redraw after the allocation.
1827
1828         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
1829         that it is the child again that is queued for a resize.
1830         (gtk_table_attach): likewise.
1831         (gtk_table_remove): likewise.
1832
1833 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
1834
1835         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
1836         gtk_entry_adjust_scroll.  Required if you change the cursor
1837         position and want to sync it up with your code (Midnight Commander
1838         gtk front end needs this).
1839
1840         * gtk/gtktable.c: Deal with tables that have size 0, 0.
1841
1842 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
1843
1844         * examples/README.1ST: new file to explain how the
1845           code examples should be extracted from the tutorial.
1846
1847 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
1848
1849         * gtk/gtkctree.c (draw_row): added new "line style"
1850         GTK_CTREE_LINES_TABBED 
1851         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
1852         search the glist pointer of an GtkCTreeRow
1853
1854 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
1855  
1856         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
1857         from, and clean up, the dependencies.  Generate to intermediate
1858         files to prevent problems with Ctrl-C.
1859
1860         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
1861
1862 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
1863
1864         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
1865         - Bug fix for precision problem causing occasional double emission 
1866           of "value_changed" signal (hopefully works now).
1867         - API change (should be binary compatible) : 
1868           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
1869           Modified cursor example appropriately.
1870           To spin by something other than step_/page_increment, use
1871           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
1872         - Made GTK_SHADOW_NONE the default. ;)
1873         - Fixed casting of GtkAdjustment* to GtkWidget* in
1874           gtk_spin_button_value_changed.
1875
1876 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
1877
1878         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
1879         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
1880         resize widget list before queuing the container for a new reize.
1881         (gtk_container_need_resize): changed return value to FALSE, since this
1882         used to indicate that no further resizes are needed.
1883         (gtk_container_set_arg): 
1884         (gtk_container_get_arg): 
1885         (gtk_container_class_init): implemented GtkContainer::resize_mode
1886         argument.
1887
1888         (gtk_container_resize_children): when we walk up the tree of a resize
1889         widget we need to stop if we are the current parent.
1890
1891         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
1892         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
1893         (gtk_widget_hide_all): retrive the toplevel widget from via
1894         gtk_widget_get_resize_container().
1895
1896 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
1897
1898         * gtk/gtklist.c (gtk_list_button_press): Only respond
1899           to selection with button 1. This allows context-sensitive
1900           menus to work correctly.
1901
1902 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
1903
1904         * gtk/gtkaccelgroup.c: 
1905         * gtk/gtkbindings.c: 
1906         * gtk/gtkcontainer.c:
1907         * gtk/gtkitemfactory.c:
1908         * gtk/gtkobject.c: 
1909         * gtk/gtksignal.c:
1910         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
1911         g_quark_from_static_string calls to save memory.
1912
1913         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
1914         function _after_ the new data has been setup.
1915         minor changes to object data functions to feature the GQuark type.
1916
1917 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
1918
1919         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
1920           from argv.
1921
1922 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
1923
1924         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
1925           to be more readable perl, to spit out stuff that looks
1926           more like readable C, and to pipe output through indent
1927           so output looks a lot like readable C. No functional
1928           changes.
1929
1930 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
1931
1932         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
1933           necessary when switching to a masked pixmap. (Based on a patch
1934           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
1935
1936 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
1937
1938         * gtk/gtkeditable.[ch]: Added action signals for keyboard
1939           bindings. (move_cursor, kill_word, etc, etc, etc). 
1940
1941           removed the time argument from
1942           gtk_editable_cut/copy/paste_clipboard (source but not
1943           binary incompatible...) Instead get time from
1944           gtk_get_current_event ().
1945         
1946         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
1947           signals.
1948
1949 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
1950
1951         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
1952
1953         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
1954              parent class to GtkNotebookClass when splitting the widget in
1955              two.  Also updated some comments.
1956
1957         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
1958                button without a font selected.
1959
1960              Fixed bug in set_font_name - I hadn't updated the code to
1961                search for the style in the font_style clist - it was
1962                still assuming the style row was equal to its index,
1963                but it isn't any more.
1964         
1965              Changed 'Reset' button on filter page to 'Clear Filter'.
1966              Deleted old code relating to the old 'Filter Fonts' toggle
1967              Updated some comments.
1968              Cleared 'Actual Fontname' if no font is set.
1969
1970         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
1971              destroying the GtkFontSelection instead of the
1972              GtkFontSelectionDialog.
1973
1974 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
1975
1976         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
1977           flag to make all warnings fatal errors.
1978
1979         * gtk/testthreads.c: moved <pthreads.h> include inside 
1980           #ifdef USE_PTHREADS
1981
1982 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
1983
1984         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
1985           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
1986
1987         - Added new function gtk_container_set_resize_mode() for
1988           fine-grained control of where resize-queueing is done.
1989
1990         - Removed GtkContainer::need_resize and GtkWindow::move_resize
1991         - Added GtkContainer::check_resize to replace need_resize.
1992
1993         - Added function gtk_container_check_resize() to trigger
1994           queued resizes, and gtk_container_resize_children() to
1995           Figure which children need to be size-allocated. (logic
1996           moved from gtkwindow.c)
1997
1998         - Reorganized code in gtkwindow.c
1999         
2000         - Set the resize-mode for viewports so that resizes within
2001           a viewport don't propagate out of it. 
2002         
2003 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2004
2005         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
2006
2007         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
2008         g_return_val_if_fail, because the function *does* return a value.
2009
2010 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
2011
2012         * gtk/gtkaccellabel.h:
2013         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
2014         request the size of the accelerator portion of an accel label.
2015         (gtk_accel_label_size_request): don't request for the accelerators size.
2016         (gtk_accel_label_expose_event): only draw the accelerator if we got
2017         enough extra space.
2018
2019         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
2020         width from children.
2021
2022         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
2023         object (after removal has been requested) check if there is still an
2024         accelerator remaining to avoid adding two accelerators on an object.
2025         this can happen for locked accelerators (or accelerator-frozen widgets).
2026         (gtk_menu_size_request): feature childrens accelerator width in size
2027         requests.
2028
2029         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
2030         gtk_widget_freeze_accelerators() for dynamically created menu items.
2031
2032         * gtk/gtksignal.h: 
2033         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
2034         which will return a handler_id > 0 if the specified function is pending
2035         for `signal_id'.
2036
2037         * gtk/gtkwidget.h:
2038         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
2039         a signal handler function to stop accelerator addition.
2040         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
2041         which will prevent (undo) any accelerators from being added to or
2042         removed from a widget.
2043
2044 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
2045
2046         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
2047         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
2048         acceleration, new API gtk_spin_button_set_snap_to_ticks.
2049
2050 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
2051
2052         * gdk/gdk.h:
2053         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
2054         the current GdkWindow the pointer is on if there is any.
2055         
2056         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
2057         and one column, so we don't construction logic at all. changed a few
2058         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
2059         unsigned int wraps.
2060
2061         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
2062         portion, added an additional check for parent != widget.
2063
2064         * more GtkType and macro fixups.
2065
2066 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2067
2068         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
2069         "clip" parameter, which is the clipping rectangle to use.  This
2070         eliminates the extremely annoying flicker when exposing parts of
2071         the handlebox.
2072
2073 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
2074
2075         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
2076         resizing
2077
2078 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
2079
2080         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
2081         != 0 on the argument.
2082
2083         * gtk/gtktable.h: 
2084         * gtk/gtktable.c: new function gtk_table_resize() which allowes
2085         shrinking and expanding of tables. implementation of widget arguments
2086         and child arguments. many signedness corrections.
2087
2088 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
2089
2090         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
2091         not only the child, otherwise we might end up taking away other
2092         childrens space after the resize.
2093
2094         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
2095         an unknown menu path from any source, that path must always be flagged
2096         as "modified", since we don't really know whether it has its default
2097         value or not.
2098
2099         * gtk/gtktree.c:
2100         * gtk/gtkpacker.c:
2101         * gtk/gtknotebook.c:
2102         * gtk/gtkmenushell.c:
2103         * gtk/gtklist.c:
2104         * gtk/gtkpaned.c:
2105         * gtk/gtkfixed.c: 
2106         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
2107
2108         * gtk/gtkbox.h: 
2109         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
2110         arguments. implemented child arguments.
2111
2112         * more GtkType and macro fixups.
2113
2114 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
2115
2116         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
2117
2118         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
2119         and gtk_clist_get_hadjustment.
2120
2121         * gtk/gtkcontainer.c:
2122         implementation of children arguments, new class member functions
2123         (child_type), (get_child_arg) and (set_child_arg) plus a new field
2124         n_child_args.
2125         (gtk_container_child_type): new function which returns the type of a
2126         child that the container expects for its next addition.
2127         (gtk_container_add_child_arg_type): new function to introduce a new
2128         child argument at class creation time.
2129         (gtk_container_query_child_args): new function to query all child
2130         arguments that are supported by a container class.
2131         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
2132         child argument.
2133         (gtk_container_child_arg_setv): new function to set a child argument for
2134         a certain container and child combination.
2135         (gtk_container_add_with_args):
2136         (gtk_container_add_with_argv): new functions to feature addition of a
2137         new child in combination with the setting of certain child arguments.
2138
2139         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
2140         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
2141         this should really be done through class cretion hooks some day.
2142
2143         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
2144         guint : 16.
2145
2146         * gtk/gtkpacker.h:
2147         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
2148         follow the gtk convention for lower case variable names (important
2149         for language wrappers and widget arguments), and made them guint : 16.
2150
2151         * examples/packer/pack.c: adaptions for the case converted GtkPacker
2152         fields.
2153
2154 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
2155
2156         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
2157         change the character pair for single line comments.
2158         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
2159         GtkItemFactoryClass.
2160         (gtk_item_factory_parse_rc_string): likewise.
2161
2162 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
2163
2164         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
2165         lists from the klass structure to a static structure
2166         in gtkfontsel.c; cleans up global the namespace.
2167
2168 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
2169
2170         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
2171         bug with /*< skip >*/ and remove warning.
2172         
2173 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
2174
2175         * gtk/Makefile.am: Made the gtkmarshal.* generation
2176         rules maintainer-only.
2177
2178 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
2179
2180         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
2181           gtk/Makefile.am gtk/makenums.pl 
2182
2183         Removed out the G_ENUM/FLAGS mechanism in favor
2184         of a perl script that parses the standard headers
2185         (with occasional /*< nick=foo >*/ style overrides)
2186         and extracts the enumerations.
2187
2188           gtk/maketypes.awk: Small improvments to the
2189           translation of names. (Avoid splitting gc into
2190           g_c_.)
2191         
2192 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
2193
2194         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
2195         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
2196         
2197 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
2198
2199         * gtk/gtkentry.c:
2200         - Restored gtk_entry_adjust_scroll to static 
2201         - Changed text positioning code so that we always
2202           display as large a portion of the text as possible.
2203
2204 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
2205
2206         * gtk/gtktext.c (gtk_text_finalize): Free internal
2207         structures of text widget. Also, unreference pixmaps
2208         when unrealizing.
2209         
2210 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
2211
2212         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
2213         3.3.1 bug workaround to number keys starting at 1.
2214
2215 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
2216
2217         * docs/gtk_tut.sgml: Fixed urls for complete example
2218         source for scribble+widget-writing examples.
2219
2220 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
2221
2222         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
2223         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
2224         specs of the form c #abcdef [ more keys ] properly.
2225
2226 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
2227
2228         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
2229         (gtk_spin_button_set_shadow_type):
2230         New API to set the shadow type of the arrow panel.
2231
2232 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
2233
2234         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
2235         code for drawing the child in two places at once. Unfortunately,
2236         not only does it not work anymore (because reparenting has
2237         been fixed), but it also triggers reparent/expose loops
2238         in some cases.
2239
2240         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
2241         an unecessary unrealize.
2242
2243 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
2244
2245         * gdk/gdkwindow.c (gdk_window_reparent): Update the
2246           old and new parents' child window lists properly.
2247
2248 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
2249
2250         * gtk/gtkpacker.h:
2251         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
2252         and GtkSideType, to be consistent with the rest of Gtk's enum
2253         definitions. wrapped the enum definitions with the G_ eunm wrappers.
2254         spelled out the GTK_ANCHOR_* enum values, since single letters don't
2255         work out corectly as nick-names (left the old values as aliases).
2256         some signdness corrections (border-width, spacing), could stand more.
2257
2258 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2259
2260         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
2261           Added gtkpacker
2262
2263         * examples/packer/pack.c, examples/packer/Makefile: Added
2264           gtkpacker example
2265
2266 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
2267
2268         * gtk/gtktext.c (remove_cache_line): Fixed broken
2269         list-removal code.
2270
2271         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
2272         Check bounds before deleting.
2273
2274 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
2275
2276         * autogen.sh: Support ACLOCAL_FLAGS
2277
2278 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
2279
2280         * gtk-config.in: Added missing quotes.
2281
2282 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
2283
2284         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
2285
2286 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
2287
2288         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
2289         G_COMPILED_WITH_DEBUGGING.
2290
2291         * configure.in (fd_set): Explain check better.
2292
2293         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
2294         the version from which gtk+'s libtool forked.  Needed for people
2295         who use post-1.2 alphas of libtool.
2296
2297 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
2298
2299         * glib/* Moved to glib module
2300
2301         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
2302           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
2303
2304           configuration changes for the above:
2305          
2306           - Use AM_PATH_GLIB by default to find glib; also accept
2307             a --with-glib option for using an uninstalled glib.
2308          
2309           - Put --enable-debug information into config.h so
2310             that we rebuild when it changes. (was in glibconfig.h)
2311
2312 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
2313
2314         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
2315
2316         * gtk/gtknotebook.h (struct _GtkNotebookClass):
2317         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
2318         added missing argument (according to Joseph Coleman's bug report)
2319
2320         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
2321         function to fix notebook focus handling
2322         
2323 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
2324
2325         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
2326           glib/gutils.c glib/testglib.c glib/gdataset.c
2327           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
2328           gtk/gtktext.c gtk/gtkbindings.c:
2329
2330          renamed g_const_pointer => gconstpointer
2331
2332 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
2333
2334         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
2335         invoked with (NULL, NULL); (this worked sometime ago).
2336
2337         * gtk/gtktypeutils.h: 
2338         * gtk/gtktypeutils.c: enum and flags type creation can now be done
2339         through gtk_type_register_enum() and gtk_type_register_flags(),
2340         which allow to specify the enum value arrays directly.
2341         the NULL terminated value arrays can be retrived through
2342         gtk_type_enum_get_values() and gtk_type_flags_get_values();
2343         (gtk_type_children_types): new function to query derived types.
2344
2345 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
2346
2347         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
2348         environment to genmarshal.pl.
2349         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
2350         rule), and removed it where not needed (in the dependencies).
2351
2352         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
2353
2354 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
2355
2356         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
2357         was just g_direct_hash.
2358
2359 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
2360
2361         * configure.in: x_libs=, not $x_libs=. Enough said.
2362           (Case only hit for --disable-xshm)
2363         
2364 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
2365
2366         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
2367           when testing for X libraries, don't replace them. Because
2368           the user might have specified the path to the X libraries
2369           themself before running configure.
2370
2371         * examples/**.c: Changed all gpointer * to gpointer
2372         
2373 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2374
2375         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
2376         fleur_cursor field.  Now the cursor is created/destroyed on demand
2377         by the routines that need it.
2378
2379         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
2380         (gtk_handle_box_motion): The fleur cursor is created and destroyed
2381         only when needed.
2382
2383 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
2384
2385         * gtk/gtktypeutils.h: 
2386         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
2387         gtk_enum_set_values to gtk_type_enum_get_values and
2388         gtk_type_enum_set_values respectively, since they are actually type
2389         system features.
2390
2391         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
2392         my last commit. ;)
2393
2394 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
2395
2396         * gtk/gtkselection.h: 
2397         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
2398         gtk_selection_data_free.
2399
2400         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
2401         for "selection_received", which was completely bogus.
2402         * other fixups to gtk_signal_new() calls all over the place.
2403
2404         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
2405         * gtk/gtktypebuiltins_vars.c: type variable implementations.
2406         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
2407         declarations.
2408         * gtk/gtktypebuiltins_evals.c: enum value arrays.
2409         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
2410         gtk.defs.
2411         * gtk/gtk.defs: generated file with scheme syntax for type definitions
2412         of gtk and gdk structures and enums.
2413         * gtk/gtktypeutils.h: 
2414         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
2415         macros anymore (this fixes binary incompatibility with new enum
2416         definitions).
2417
2418         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
2419         key bindings for this widget.
2420         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
2421         handler.
2422
2423         * gtk/gtkobject.h:
2424         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
2425         again. new functions gtk_object_class_user_signal_new () and
2426         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
2427         flag on the signal creation.
2428
2429 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
2430
2431         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
2432
2433 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
2434
2435         * gdk/gdkprivate.h: 
2436         * gdk/gdktypes.h: 
2437         * gtk/gtkprivate.h: 
2438         * gtk/gtkwidget.h: 
2439         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
2440
2441         * reworked enum value array generation code. gtk.defs is a generated
2442         file now.
2443
2444 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
2445
2446         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
2447         check menu items in the compatibility code (this required me to remove
2448         the "<check>" part from the menu item name, grrr).
2449
2450 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
2451
2452         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
2453         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
2454         
2455 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
2456
2457         * gtk/gtkitemfactory.h: 
2458         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
2459         additions to the dumping code to feature GtkPatternSpec.
2460         even found a bug to fix in the original code ;)
2461         
2462 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
2463
2464         * gtk/gtkitemfactory.c: support different types of callbacks, to
2465         maintain existing code.
2466
2467 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
2468
2469         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
2470
2471         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
2472         this should eventually be done by gentypeinfo.el somewhen.
2473         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
2474
2475         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
2476         enum values of an enum type.
2477
2478         * gtk/gtk.defs:
2479         * gtk/gtkcurve.h: 
2480         * gtk/gtkobject.h: 
2481         * gtk/gtkprivate.h: 
2482         * gtk/gtkwidget.h:
2483         * gtk/gtkenums.h: 
2484         brought enum/flags definitions in sync, added a few more enum
2485         definitions for bindings and pattern matching.
2486
2487         * some more macro and GtkType fixups in various places.
2488
2489         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
2490         as a key-release modifier for the binding system.
2491
2492 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
2493
2494         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
2495         was a stale list pointer that is already present in GtkMenuShell.
2496
2497         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
2498         GtkMenuShell::selection_done which is emitted after the menu shell
2499         poped down again and all possible menu items have been activated.
2500
2501 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
2502
2503         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
2504         before activation of the menuitem, so the menu is actually taken off the
2505         screen prior to any menu item activation.
2506
2507         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
2508         for NULL nodes.
2509
2510         * gtk/gtkwidget.h:
2511         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
2512         the emission of the "add-accelerator" signal on a widget. this is
2513         usefull to prevent accelerator installation on certain widgets.
2514
2515         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
2516         labels left justified, by setting their alignment. stop accelerator
2517         installation for the menu items, since we use dynamic menus.
2518
2519 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
2520
2521         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
2522         should *really* use GtkItemFactory. this is only for preserving source
2523         compatibility where possible, use of GtkMenuFactory is deprecated as of
2524         now.
2525
2526         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
2527         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
2528         missed this possibility when i added gtk_object_class_add_user_signal
2529         in late january.
2530
2531         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
2532
2533 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
2534
2535         * gtk/gtkaccelgroup.h: 
2536         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
2537
2538         * gtk/gtkaccellabel.h: 
2539         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
2540         display of the accelerators associated with a certain widget.
2541
2542         * gtk/gtkitemfactory.h: 
2543         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
2544         parsing and accelerator handling.
2545
2546         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
2547         positioning a menu.
2548         (gtk_menu_map): removed the allocation code.
2549         (gtk_menu_size_allocate): care for redrawing of children and resize
2550         our widget->window correctly.
2551         (gtk_menu_key_press): feature the new accelerator groups.
2552
2553         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
2554         submenu if neccessary.
2555
2556         * gtk/gtkmenuitem.c:
2557         * gtk/gtkcheckmenuitem.c:
2558         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
2559         function variants.
2560
2561         * gdk/gdk.c:
2562         (gdk_keyval_from_name): 
2563         (gdk_keyval_name): new functions for keyval<->key-name associations.
2564         (gdk_keyval_to_upper): 
2565         (gdk_keyval_to_lower): 
2566         (gdk_keyval_is_upper): 
2567         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
2568         regards to their cases.
2569
2570 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
2571
2572         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
2573         widget's class path.
2574         (gtk_widget_path): new function to calculate a widget's name path.
2575
2576         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
2577         pattern matching, features reversed pattern matches.
2578
2579 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
2580
2581         * examples/extract.sh, examples/extract.awk:
2582           New files to automagically extract code examples from the
2583           tutorial.
2584
2585 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
2586
2587         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
2588         * gtk/gtkcontainer.c (gtk_container_focus_move):
2589         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
2590
2591 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
2592
2593         * docs/gtk_tut.sgml: minor changes to support auto
2594           extraction of example code
2595
2596 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
2597
2598         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
2599           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
2600
2601 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
2602
2603         * docs/gtk_tut.sgml:
2604           - new section on Events
2605           - change all delete_event callbacks to include
2606             a GdkEvent parameter
2607           - clean up the formatting
2608
2609         * examples - helloworld.c, helloworld2.c, notebook.c,
2610           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
2611           rulers.c, table.c, wheelbarrow.c: change all delete_event
2612            callbacks to include a GdkEvent parameter.
2613
2614 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2615
2616         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
2617         field of crossing events.
2618         (struct _GdkEventCrossing): Added the following fields: time, x,
2619         y, x_root, y_root, mode, focus, state.
2620
2621         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
2622         crossing event structure.
2623
2624         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
2625         changes to the crossing event structure.
2626
2627 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
2628
2629         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
2630
2631 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
2632
2633         * docs/gtk_tut.sgml:
2634            - GtkTooltips, update to current API
2635            - change all 'gpointer *data' to 'gpointer data'
2636            - other minor changes
2637
2638 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
2639
2640         * configure.in (LDFLAGS): Bomb out with a moderately
2641           helpful message if detection of X libraries fails.
2642
2643 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
2644
2645   [ Combination of:
2646      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
2647      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
2648
2649         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
2650           gtk/gtksignal.c gtk/gtktext.c: 
2651
2652           Fixups for warnings from adding const to type of GHashFunc,
2653           GCompareFunc
2654         
2655         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
2656           ansi-warnings fixups.
2657
2658 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
2659
2660         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
2661         Locate child at (border_width,border_width), not
2662         (2*border_width,2*border_width). [ The border is _outside_
2663         widget->window ]
2664         
2665         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
2666           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
2667
2668 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
2669
2670         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
2671         used in gnome-libs
2672
2673 1998-05-22    <sopwith@redhat.com>
2674
2675         * gtk/gtkeventbox.c: Pass size_allocate on to the child
2676         regardless of whether it is visible or not. Also
2677         locate child at (border_width,border_width), not (0,0)
2678
2679 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
2680
2681         * gtk/gtkhandlebox.c: Added style_set handler.
2682
2683 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
2684  [ From: Chris Lahey  <clahey@umich.edu> ]
2685         
2686         * gtk/gtkeditable.c, gtk/gtkeditable.h,
2687           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
2688           and set_position functions to get and set the cursor position.
2689
2690         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
2691           signal status. Make GtkText do user-controlled insertion
2692           and deletion through the Editable widget so that these
2693           signals are properly emitted.
2694
2695         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
2696           display asterisks instead of empty space when visible = FALSE)
2697
2698 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
2699
2700         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
2701         signal.
2702
2703 1998-05-21    <sopwith@redhat.com>
2704
2705         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
2706         custom routine for loading images specified in gtkrc's.
2707
2708 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
2709
2710         * configure.in: Use pthread_attr_init() as a test function,
2711         since most of the rest of -lpthread is macros on DU4.
2712
2713 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
2714
2715         * gtk/gtkcombo.c: implemented completion in the entry.
2716
2717 1998-05-18    <sopwith@moebuis.labs.redhat.com>
2718
2719         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
2720
2721 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
2722
2723         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
2724         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
2725         to be of runtype GTK_RUN_LAST.
2726
2727         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
2728         "need-resize".
2729
2730         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
2731         "widget-selected".
2732
2733 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
2734
2735         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
2736         text retrived from GtkEntry. only intercept the Tab key if there
2737         was some text to complete.
2738
2739 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
2740
2741         Basic thread-awareness:
2742
2743         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
2744
2745         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
2746         gdk_threads_[init/enter/leave] for applications, plus
2747         gdk_threads_wake to wake the mainloop thread out of
2748         the select().
2749
2750         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
2751
2752 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
2753
2754         * gtk/testgtk.c (list_clear): Account for the fact
2755         that gtk_list_clear_items is not inclusive. (Clears
2756         [start, end))
2757
2758 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
2759
2760         * gdk/gdk.c: include gdkkeysyms.h always
2761         
2762
2763 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
2764
2765         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
2766         the visibility_notify_event method and changed method order.
2767
2768 1998-05-14    <sopwith@moebuis.labs.redhat.com>
2769
2770         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
2771
2772 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
2773
2774         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
2775         from Olli Helenius <ollhel@batman.jytol.fi>.
2776
2777         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
2778         freeing types.
2779         (gtk_type_set_chunk_alloc): new function to allow allocation of new
2780         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
2781         thorugh g_malloc).
2782
2783         * gtk/gtkobject.c (gtk_object_finalize): free an object through
2784         gtk_type_free().
2785
2786         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
2787         GtkButtons to 16.
2788         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
2789         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
2790
2791 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
2792
2793         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
2794           GPOINTER_TO_UINT fixes.
2795
2796         * gtk/gtksignal.c: Include <string.h> for memset.
2797
2798 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
2799         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
2800
2801         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
2802         Cleanups, comments and the ability to have rulers with 
2803         a reversed direction.
2804
2805 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
2806
2807         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
2808         that Sopwith missed when changing stat => lstat.
2809
2810 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
2811
2812         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
2813           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
2814         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
2815
2816         * gdk/gdk.c: Print sizeof() results
2817         as g_print("%ld", (glong)sizeof(foo)), to deal with
2818         sizeof() being long on Alpha's.
2819
2820         * gtk/testgtk.c: include <string.h> for strlen
2821
2822 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
2823         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
2824         
2825         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
2826         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
2827
2828         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
2829
2830 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
2831         (From: Christopher James Lahey <clahey@umich.edu>)
2832         
2833         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
2834           gtk/testgtk.c:
2835
2836         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
2837         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
2838         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
2839         the default relief for the toolbars buttons. Added an
2840         toggle for the toolbar test in testgtk.c.
2841
2842 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
2843
2844         * docs/gtk-config.1: Rewritten and hopefully improved.
2845
2846 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
2847
2848         * docs/Makefile.am
2849         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
2850
2851 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2852
2853         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
2854         GtkPreview's visual and colormap, otherwise things can BadMatch.
2855
2856         * gtk/testgtk.c (create_color_preview): 
2857         (create_gray_preview): Removed pushing/popping of visual/colormap
2858         now that GtkPreview does things correctly.
2859
2860         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
2861         (gtk_color_selection_draw_wheel): Pick the style from the correct
2862         place (the colorsel->wheel_area widget) so that the GCs will match
2863         with where we are going to paint to.
2864
2865         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
2866         of visual/colormap now that GtkColorSelection does things the
2867         right way.
2868
2869 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
2870
2871         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
2872         previously unused window->need_resize flag to mark if a window's
2873         descendents changed size while the window was not visible. In this
2874         case, when the window becomes visible, we reallocate everything,
2875         since we didn't keep track of what actually changed.
2876
2877         (Fixes bug where changing the popdown strings of a
2878         combo to something of the same length caused them to
2879         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
2880
2881 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
2882
2883         [security audit by Alan Cox]
2884
2885         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
2886         exceed maximum assumed size.
2887
2888         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
2889         not exceed maximum assumed size.
2890         (gtk_menu_factory_remove): likewise.
2891         (gtk_menu_factory_find_recurse): likewise.
2892
2893 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
2894
2895         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
2896         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
2897         redrawn if that is still neccessary. don't allow queueing of already
2898         destructed objects.
2899         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
2900         widgets which are in the queue can be destroyed safely, handle
2901         requeueing properly.
2902         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
2903         widgets which are in the queue can be destroyed/unrealized safely.
2904
2905 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
2906
2907         * gtkfaq.sgml: add question on multi-threading,
2908           minor URL cleanups.
2909
2910 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
2911
2912         * configure.in (cflags_set): preserve automake CFLAGS.
2913
2914         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
2915         and libgdk-1.1.la. this means we need to change certain portions of
2916         the Makefile.am on major/minor version bumps.
2917
2918         * ltmain.sh: the -release option is not required anymore.
2919         
2920         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
2921         of the first argument to be of type GtkObject. unconditionally compile
2922         this function. removed __GNUC__ dependancy of the gtk_object_ref and
2923         gtk_object_unref macro wrappers for this function.
2924
2925 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
2926
2927         * gtk/gtkobject.h:
2928         * gtk/gtkobject.c:
2929         (gtk_object_data_try_key):
2930         (gtk_object_data_force_id): these are now macros substituting the old
2931         functions. we just use the corresponding g_dataset_* functions for
2932         key->id associations. (this is to assure unique key<->id associations).
2933
2934 1998-05-10  Stefan Jeske  <stefan@gtk.org>
2935
2936         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
2937         to gboolean.
2938
2939         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
2940
2941 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
2942
2943         * configure.in (LIBS): Try to figure out if this
2944         is Digital Unix and we need -std1 to get the
2945         right prototypes.
2946
2947 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
2948
2949         * docs/gtk_tut_it.sgml: update of Italian tutorial
2950           translation from Daniele Canazza <dcanazz@tin.it>
2951
2952 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
2953
2954         * gtk/gtkfeatures.h.in: new file used as template for
2955         * gtk/gtkfeatures.h: new file to define macros indicating newly
2956         introduced features, such as GTK_HAVE_SIGNAL_INIT.
2957
2958         * gtk/gtksignal.c:
2959         (gtk_signal_emitv_by_name):
2960         (gtk_signal_emitv):
2961         new functions to emit signals with an already provided parameter set.
2962         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
2963         (gtk_signal_real_emit): prototype changes, so this functions always
2964         gets its parameters and signal structure as arguments.
2965         (gtk_signal_emit): provide the signal structure and parameter list for
2966         gtk_signal_real_emit.
2967         (gtk_signal_emit_by_name): likewise.
2968
2969 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
2970
2971         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
2972         signal connections through unsetting GTK_CONNECTED.
2973         (gtk_signal_handler_insert): reflect the presence of signal connections
2974         through setting GTK_CONNECTED.
2975         (gtk_signal_real_emit): only check for handler emissions if the object
2976         has the GTK_CONNECTED flag set.
2977         (gtk_signal_handler_pending): don't check for pending handlers if the
2978         GTK_CONNECTED flag is not set for this object.
2979
2980         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
2981         a GtkObject has signal handler connections.
2982
2983         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
2984         set for this object call gtk_signal_handlers_destroy().
2985         
2986         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
2987         multiple processing of macro args.
2988
2989         * gtk/gtktypeutils.c:
2990         * gtk/gtkobject.c:
2991         * gtk/gtkwidget.c:
2992         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
2993
2994 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
2995
2996         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
2997         draw-queue when we are done. 
2998
2999         (gtk_widget_queue_draw/_queu_resize): Always return
3000         FALSE and avoid having two idles at the same time.
3001         
3002 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
3003
3004         * gtk/gtktext.c: Various fixes to make sure cache
3005         lines are freed if line_start_cache doesn't point to the
3006         beginning of the cache.
3007
3008 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
3009
3010         * style_set improvements for GtkText and GtkEntry
3011
3012 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
3013
3014         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
3015         been initialized.
3016
3017 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
3018
3019         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
3020         data chunks through a global object data structure list. unlink
3021         object data before invoking its destroy function.
3022         (gtk_object_finalize): slight modification to allow usage of object
3023         data during object finalization.
3024
3025 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
3026
3027         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
3028         signal names, e.g. "signal-name" is now an alias for "signal_name".
3029         (gtk_signal_handler_new): allocate handlers through a global handler
3030         structure list, that's faster than memchunks.
3031         (gtk_emission_new): allocate emissions through a global emission
3032         structure list, that's faster than memchunks.
3033
3034 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
3035
3036         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
3037
3038         * ltmain.sh: added a new commandline flag -postfix similar to -release,
3039         but will immediately change the library name.
3040
3041         * gdk/Makefile.am:
3042         * gtk/Makefile.am: specify -postfix and -version-info
3043
3044         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
3045         GTK_BINARY_AGE. calculate LT_* variables for libtool.
3046
3047 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3048
3049         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
3050         background (fg_set -> bg_set confusion).
3051
3052 1998-05-06  Stefan Jeske  <stefan@gtk.org>
3053
3054         * gtk/testgtk.c (unselect_all): Removed code that caused an
3055         endless loop.
3056
3057 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
3058
3059         * gtk/gtksignal.c: reimplemented the signal storage system to use a
3060         linear array rather than a hash table.
3061         be carefull *not* to keep any GtkSignal pointers across invokations
3062         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
3063         general code cleanups, made all allocations through memchunks.
3064         (gtk_signal_lookup): we now do the lookup of signals through a key_id
3065         for the signal names to avoid multiple hashing of the signal name on
3066         lookups for the several hirarchy levels of an object.
3067
3068 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
3069
3070         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
3071         to speed things up and remove code duplication.
3072
3073         Reintegrated buffer overflow patches, and added
3074         some extra paranoia.
3075         
3076 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
3077
3078         * gdk/gdk.c (gdk_event_translate): A guint * was
3079         being passed where X expected a Keysym *, and
3080         keysyms are long's on Alpha Linux. This was causing
3081         segfaults in Xlib, apparently because of alignment.
3082         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
3083         
3084 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
3085
3086         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
3087         set GDK_EXPOSURE_MASK for DrawingAreas
3088
3089 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
3090
3091         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
3092         (superceded by RC file reparsing capabilities)
3093
3094         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
3095         events. (Shouldn't be sent to the InputOnly leader, which
3096         it is now by gdk_event_send_clientmessage_toall
3097
3098         * gtk/testgtk.c: Added extra button to rcfiles test
3099         to send out _GDK_READ_RCFILES events.
3100         
3101 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
3102
3103         * gtk/gtkselection.c (gtk_selection_clear): Fixed
3104         reversed conditionals that caused segfault on some
3105         platforms.
3106
3107 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
3108
3109         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
3110         cast to GTK_OBJECT for gtk_object_ref.
3111
3112 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
3113
3114         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
3115         checking for signal initialization in gtksignal.c.
3116
3117         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
3118         a long debugging period ;)
3119
3120 1998-05-05  Stefan Jeske  <stefan@gtk.org>
3121
3122         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
3123         New function to wrap XSetDashes; modified gtkctree.c to use it.
3124
3125 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3126
3127         * configure.in: Added $x_libs in the other_libraries field in the
3128         check for XShapeCombineMask.
3129
3130 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
3131
3132         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
3133         gtk_type_is_a().
3134         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
3135         linear array rather than a hash table. it actually speeded up testgtk
3136         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
3137         pointers across invokations of gtk_type_node_next_and_invalidate() and
3138         therefore gtk_type_unique()!
3139
3140         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
3141         inheritance of a class pointer.
3142         (GTK_OBJECT): modifications for speedups.
3143         (GTK_IS_OBJECT): likewise.
3144         (GTK_OBJECT_CLASS): likewise.
3145         (suggested by owen).
3146
3147         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
3148
3149         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
3150
3151         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
3152         since its derivation changed 4 month ago ;(. showed up with the unique
3153         type name checking code in gtk_type_unique().
3154
3155         * random guint->GtkType and macro fixups.
3156
3157 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
3158
3159         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
3160         Configure events that would result in a negative
3161         size.
3162
3163 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
3164
3165         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
3166         "glibconfig.h" and another about writing another IRC
3167         client.
3168
3169 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
3170
3171         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
3172         parameters to log are doubles. Digital Unix apparently
3173         is missing the argument in its prototype.
3174
3175 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
3176
3177         * gtk/gtklabel.c (gtk_label_state_changed): Don't
3178         force a clear until the widget is actually on
3179         screen.
3180
3181 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
3182
3183         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
3184         to make this consistent with the gtk-1-0 tree.
3185
3186 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
3187
3188         * configure.in acheader.h gdk/gdkwindow.c 
3189         Check for Shape extension both on the client and server
3190         side. (And, more importantly, check for the shape extension
3191         so we may include -lXext even when compiling with --disable-xshm)
3192
3193         Don't set override_redirect on all shaped windows. It isn't
3194         necessary.
3195
3196         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
3197         and foreign windows. Use this to check if we
3198         need to get the colormap from X.
3199
3200 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
3201
3202         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
3203         between the default and the button always in GTK_STATE_NORMAL.
3204
3205         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
3206         callback.
3207
3208 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
3209
3210         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
3211           Fix a buffer overflow on pixmaps that claim to have
3212           more than 31 characters per pixel.
3213
3214           (gdk_pixmap_read_string): Don't wrap around strings longer
3215           than half of address space ;-)
3216
3217         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
3218         that were used for printing integers.
3219
3220         * */* (almost):
3221
3222         Style: All 
3223           int foo () { ... }
3224         changed to
3225           int foo (void) { ... }
3226
3227         Even where there were proper prototypes elsewhere.
3228
3229         * gdk/gxid.c (handle_claim_device): Some extra checks.
3230         It isn't safe against being fed bad X id's, but at
3231         least it should be safe against deleting all your
3232         files.
3233
3234 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
3235
3236         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
3237         to set the adjustments value when there is no current emission.
3238         [ Removed by mutual agreement owt 5/3/1998 ]
3239
3240         * gtk/gtksignal.c: added new functions to retrive the number of
3241         existing emissions for a certain signal.
3242         (gtk_signal_n_emissions): new function.
3243         (gtk_signal_n_emissions_by_name): new function.
3244
3245 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
3246
3247         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
3248         set the current focus_child of a container, does proper referencing and
3249         adjusts the vadjustment/hadjustment associated with the focus widget.
3250
3251         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
3252         containers via gtk_container_set_focus_child.
3253
3254         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
3255         where appropriate.
3256
3257         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
3258         child since not every child removal goes through this function (this
3259         showed up after gtk_container_set_focus_child() started to reference the
3260         focus_child of a container).
3261
3262         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
3263         of a container from gtk_container_remove into this place.
3264
3265 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
3266
3267         * gtk/gtksignal.c: added new functions to operate on intermediate
3268         function pointers. implemented incremental blocking.
3269         (gtk_signal_disconnect_by_func): new function.
3270         (gtk_signal_handler_block_by_func): new function.
3271         (gtk_signal_handler_unblock_by_func): new function
3272
3273 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
3274
3275         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
3276         Always show the scrollbars when the policy is
3277         GTK_POLICY_ALWAYS...
3278
3279 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
3280
3281         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
3282         "value_changed" if we really passed a new value.
3283         (gtk_adjustment_changed): new function to emit the "changed" signal.
3284         (gtk_adjustment_set_value): new function to emit the "value_changed"
3285         signal.
3286
3287 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
3288
3289         * gtk/gtkcombo.c: Further changes to the way the window
3290         is popped up so that it will be compatible with 
3291         auto-scrolling in the future.
3292
3293 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
3294
3295         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
3296         the combo-list is empty since that will cause the combo to operate
3297         on a non existing GtkList window.
3298         (gtk_combo_get_pos): provide the combo list with a usfull default
3299         height if empty.
3300         (gtk_combo_popup_button_press): grab the focus.
3301         (gtk_combo_activate): grab the focus.
3302
3303 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
3304
3305         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
3306         function to reset the RC styles for a heirarchy
3307
3308         Clear the window background if necessary in
3309         gtk_window_style_set.
3310
3311         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
3312         rereads all previously read RC files.
3313
3314         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
3315         (Should it just be called gdk_get_toplevels?)
3316
3317         * gtk/testgtk.c: New test to reload RC files.
3318
3319 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
3320
3321         * gtk/gtkclist.h:
3322         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
3323         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
3324         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
3325         the GTK_ prefix (this solution involved less changes in the
3326         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
3327         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
3328         from lars & stefan to support the derivation of GtkCtree.
3329
3330         * gtkctree.h:
3331         * gtkctree.c:
3332         initial import of a tree widget derived from gtkclist, courtesy
3333         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
3334         it just damn rocks!
3335
3336 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
3337
3338         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
3339         for us.
3340         (gtk_list_insert_items):
3341         (gtk_list_remove_items_internal): 
3342         (gtk_list_clear_items): 
3343         remove a possible pointer grab, we might get thrown into a loop
3344         otherwise.
3345         (gtk_list_button_press): grab the pointer *before* selecting the child,
3346         because selection of items may cause the lists children to change,
3347         resulting in a grab release.
3348         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
3349         children.
3350         (gtk_list_shutdown): remove all children from the list.
3351         (gtk_real_list_unselect_child): 
3352         (gtk_real_list_select_child): *always* put our internal structures into
3353         sane state *before* signal emisions (i.e. list->selection updates prior
3354         to gtk_list_item_[de]select() calls).
3355
3356         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
3357         focused child walks out of the window.
3358         removed CAN_FOCUS for the combo arrow's button since it doesn't react
3359         to keyboard events ("clicked" connection is missing).
3360
3361 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
3362
3363         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
3364         getting colormap for FOREIGN windows to go along with
3365         Raster's fix for visuals.
3366
3367 Merges from gtk-1-0
3368 ===================
3369         
3370 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
3371
3372         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
3373         Check to catch the case when the viewport fits in either
3374         direction or both, instead of flip-flopping infinitely.
3375
3376         Only show/hide the scrollbars once at the end.
3377
3378 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
3379
3380         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
3381         Include the scrollbars in the foreach call.
3382         (gtk-fortier-980405-0.patch; 
3383          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
3384
3385         The notebook widget
3386         really should also include its tabs, but that might cause
3387         problems for programs if they
3388
3389 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
3390
3391         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
3392         resize if the size actually changed. 
3393         (gtk-johannes-980414-0.patch ;  
3394          johannes@nada.kth.se (Johannes Keukelaar) )
3395
3396 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
3397
3398         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
3399           ltmain.sh ltconfig config.sub config.guess:
3400
3401         Reverted back to libtool-1.2 (plus minor patches) so as not to
3402         force the issue for everyone else.
3403
3404 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
3405
3406         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
3407         Updated to libtool 1.2a.
3408
3409         * gtk/gtkclist.c: Draw the in-between lines with style->base
3410         instead of style->white.
3411         
3412 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
3413
3414         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
3415         Cache the colormap and children of a window locally
3416         instead of fetching them from the server when needed.
3417         Huge performance difference for creating/destroying
3418         windows.
3419
3420         * gtk/gtkstyle.c: Find the depth from the cached
3421         visual, instead of asking the server.
3422
3423         * gtk.m4: Distribute the new version which tries to
3424         figure out what went wrong and give helpful error
3425         messages.
3426
3427         * ltmain.sh ltconfig config.sub config.sh: 
3428         Updated to libtool 1.2a
3429
3430         * gtk/gtktext.c: Fixed a bug where the drawn level
3431         was being messed up when the text was scrolled
3432         during a deletion.
3433         
3434 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
3435
3436         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
3437         the filesystem under you (fix from Josh)
3438
3439 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
3440
3441         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
3442         if the viewport already exists before iterating over it, maybe we
3443         haven't been constructed yet.
3444
3445 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
3446
3447         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
3448         the GtkBin widget already has a child.
3449
3450         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
3451         check that child->parent == NULL;
3452
3453 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
3454
3455         * gtk/gtkselection.c (gtk_selection_clear): Only return
3456         FALSE when the clear event is been rejected, not when
3457         widget has already lost the selection. (Which should
3458         only happen when we are setting the selection to another
3459         widget ourself.)
3460         
3461 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
3462
3463         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
3464
3465         Removed the "check visibility after gtk_widget_unparent" bug 
3466         in hopefully the last three places.
3467
3468 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
3469
3470         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
3471         rc-files.
3472
3473 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
3474
3475         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
3476         for CAN_FOCUS widgets.
3477
3478         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
3479         adjustments for the table.
3480         (create_list): feature automatic adjustment of the scrolled window to
3481         always contain the focused child.
3482         (create_main_window): keep the focussed button always inside of the
3483         scrolled windoww.
3484
3485         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
3486         adjustments, to contain the allocation of the currently focused child.
3487         (gtk_container_set_focus_hadjustment): new functin to set the
3488         horizontal focus adjustment.
3489         (gtk_container_set_focus_vadjustment): new functin to set the vertical
3490         focus adjustment.
3491
3492         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
3493         clamp the currents adjustment page into a specific range.
3494
3495         * random GtkType fixups for gtk_*_get_type() functions.
3496
3497 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
3498
3499         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
3500         Account for the fact that gtk_tree_item_remove_subtree
3501         will be called recursively. 
3502
3503         Handle removing a collapsed subtree.
3504
3505         (From Andy Dustman <adustman@comstar.net>)
3506         
3507         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
3508         root tree when removing items from a non-previously
3509         mapped tree.
3510
3511         * gtk/testgtk.c: Added a remove_subtree button.
3512         
3513 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
3514
3515         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
3516         before object removing data. This change fixes a bug where 
3517         removing the last weak references would cause it to be 
3518         triggered.
3519
3520 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
3521
3522         * gdk/Makefile.am: Removed mostly useless dependency that
3523         was causing problems for SGI's make, when used with
3524         the 'make dist' form of GTK+. (Dependency caused dependencies
3525         to be redone when BUILT_SOURCES changed)
3526
3527 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
3528
3529         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
3530         like a menu.
3531         
3532         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
3533         to gtkitem.c so dragging can also work in lists.
3534
3535         * gtk/gtklist.[ch]: Track child enter events and use
3536         those to allow dragging the selection. 
3537
3538 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
3539
3540         * gtk/gtktext.c: Try enabling background pixmaps for editable text
3541         widgets.  There is a bit of flashing, but not too bad. If you
3542         don't want the flashing, you can always not set a background
3543         pixmap.
3544
3545 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
3546
3547         * gtk/gtktext.c: Fixed a bug where the drawn level
3548         was being messed up when the text was scrolled
3549         during a deletion.
3550         
3551 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
3552
3553         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
3554         bug:  There is no need to set the ExposureMask in the XGrabPointer
3555         (this caused DnD programs to crash).
3556
3557 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
3558
3559         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
3560         field to be of type guint.
3561         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
3562         ref_count>0;
3563         (gtk_accelerator_table_install): keep a per object list of accelerator
3564         tables that refer to this object.
3565         (gtk_accelerator_table_remove): remove the accelerator table from the
3566         per object list.
3567         (gtk_accelerator_table_clean): warn if there are any object references
3568         left in an accelerator table upon destruction.
3569         (gtk_accelerator_tables_delete): new function to delete object
3570         references from the accelerator tables associated with this object.
3571
3572         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
3573         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
3574         of an accelerator can be prevented by gtk_signal_emit_stop().
3575         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
3576         so there are no stale pointers in accelerator tables left.
3577
3578 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3579
3580         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
3581         visible before we unparent it.
3582
3583 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
3584
3585         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
3586         running_timeouts list with the tmp_list link itself, not with a new
3587         GList structure pointing to our link. that would fill up memory and
3588         causes the GList.data fields of the running_timeouts list to point to
3589         GList structures and not GtkTimeoutFunction structures which is a
3590         *really* bad thing.
3591         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
3592         the above entry ;).
3593
3594 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
3595
3596         * gtk/gtkradiomenuitem.h: 
3597         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
3598         ala gtk_radio_button_set_group.
3599         (gtk_radio_menu_item_init): assure that we always have at least a group
3600         that points to self.
3601
3602         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
3603         added g_return_if_fail() statements.
3604         (gtk_radio_button_init): assure that we always have at least a group
3605         that points to self.
3606
3607 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
3608
3609         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
3610
3611 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
3612
3613         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
3614         (Damon Chaplin), which i got wrong when applying Damon's patch the last
3615         time.
3616
3617 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
3618
3619         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
3620         that when we are running with a non-installed colormap,
3621         in 8-bit pseudo-color, we actually are using the system
3622         visual. (Fixes *Bad Match* errors on Digital Unix machines
3623         with multiple 8-bit pseudo-color visuals)
3624
3625 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
3626
3627         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
3628         by whoever thought that randomly changing ints to unsigned int
3629         without reviewing the code was a good idea.  It is, btw not
3630         mentioned in the ChangeLog as usual, but I know it was not Elliot
3631         the culprit this time. 
3632
3633 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3634
3635         * Released GTK+ 1.0.0