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