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