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