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