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