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