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