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