]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
d0d75a8a9ef912deb29c3e77ed3af6b7d76406f9
[~andy/gtk] / ChangeLog.pre-2-4
1 Tue Dec 15 21:36:14 1998  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/testgtk.c (create_layout): Create buttons,
4         not combos again.
5
6 1998-12-15  Joel Becker  <jlbec@ocala.cs.miami.edu>
7
8         * autogen.sh: reordered gettextize and aclocal, because
9         gettextize was messing up aclocal.m4.
10
11 Tue Dec 15 22:30:44 1998  Lars Hamann  <lars@gtk.org>
12
13         * gtk/gtkclist.h : 
14         removed clist flag : GTK_CLIST_DRAG_SELECTION
15         added flags : GTK_CLIST_REORDERABLE, GTK_CLIST_USE_DRAG_ICONS,
16         GTK_CLIST_DRAW_DRAG_LINE, GTK_CLIST_DRAW_DRAG_RECT
17         (GtkCListDragPos) : new enum for DND
18         (GtkButtonAction) : new enum of possible mouse button actions
19         (struct _GtkCList): added button_actions array.
20         Added drag_button and click_cell struct, to store cell and
21         mouse button of last button_press_event
22         
23         (struct _GtkCListClass): new class method draw_drag_highlight.
24         (gtk_clist_set_reorderable) (gtk_clist_set_use_drag_icons) :
25         new functions. Moved from gtkctree.h. Now clist is reorderable
26         as well.
27         (gtk_clist_set_button_actions) new function to customize mouse
28         button actions.
29
30         * gtk/gtkclist.c:
31         (gtk_clist_drag_begin)
32         (gtk_clist_drag_motion)
33         (gtk_clist_drag_leave)
34         (gtk_clist_drag_end)
35         (gtk_clist_drag_drop)
36         (gtk_clist_drag_data_get)
37         (gtk_clist_drag_data_received) : new dnd widget methods to
38         implement clists reorderability via DND
39
40         (remove_grab) : new function. remove mouse grab if necessary.
41         (draw_drag_highlight) : new method. Draw dnd highlight depending
42         on clist flags GTK_CLIST_DRAW_DRAG_LINE and GTK_CLIST_DRAW_DRAG_RECT
43
44         (gtk_clist_class_init): added object args "reorderable" and
45         "use_drag_icons"
46
47         (gtk_clist_button_press) (gtk_clist_button_release) :
48         use button_actions array to decide which action to perform.
49         (gtk_clist_motion) : start reorder operation if necessary.
50
51         * gtk/gtkctree.h :
52         (struct _GtkCTree): removed drag_icon, icon_widht, icon_height,
53         drag_row, drag_source, drag_target, reorderable, use_icons,
54         in_drag, drag_rect
55         (gtk_ctree_set_reorderable) :  deprecated function.
56         use gtk_clist_set_reorderable instead.
57         (gtk_ctree_set_use_drag_icons) : deprecated function.
58         use gtk_clist_set_use_drag_icons instead.
59
60         * gtk/gtkctree.c :
61         (gtk_ctree_class_init): removed object args "reorderable" and
62         and "use_drag_icons"
63
64         (draw_xor_line) (draw_xor_rect) (create_drag_icon) (check_cursor)
65         (tree_toggle_selection) (set_mouse_cursor) : removed
66         
67         (draw_drag_highlight) : new clist method. replacement for
68         draw_xor_line and draw_xor_rect functions
69         (check_drag) renamed check_cursor function
70
71         (gtk_ctree_drag_begin)
72         (gtk_ctree_drag_motion)
73         (gtk_ctree_drag_data_received) : new dnd methods to implement ctrees
74         reorderability via DND
75
76         (gtk_ctree_button_release)
77         (gtk_ctree_button_motion) : removed.
78
79         * gtk/testgtk.c:
80         (create_clist) : added new reorderable toggle button
81         
82 Tue Dec 15 19:50:41 1998  Owen Taylor  <otaylor@redhat.com>
83
84         * gtk/gtkctree.c gtk/gtkclist.c gtk/testgtk.c: Use 
85         base[NORMAL] instead of bg[PRELIGHT] so CLists now can be
86         used in detergent commercials.
87
88 Tue Dec 15 16:54:09 1998  Owen Taylor  <otaylor@redhat.com>
89
90         * gtk/gtklabel.h: Moved gtk_label_set() compatiblity
91         define from <gtkcompat.h> to <gtklabel.h> for
92         compatibility.
93
94 1998-12-15  Jeff Garzik  <jgarzik@pobox.com>
95
96         * configure.in, gdk/Makefile.am, gtk/Makefile.am:
97         Removed last remaining thread-related configure bits 
98         that have been moved into GLib.
99
100 1998-12-15  Elliot Lee  <sopwith@bogus.cuc.ml.org>
101
102         * gdk/gdkevents.c: Use G_IO_ERR|G_IO_HUP|G_IO_NVAL
103         as the mask for checking for GDK_INPUT_EXCEPTION events.
104
105 1998-12-15  Martin Baulig  <martin@home-of-linux.org>
106
107         * acinclude.m4: Make the gettext check for for libc5 systems.
108
109         * autogen.sh: Not running gettextize fails on a fresh CVS checkout
110         and we'll get a lot of bug reports tomorrow, so I add it back.
111
112         * acinclude.m4: Rename AM_GNU_GETTEXT_GTK to AM_GTK_GNU_GETTEXT and
113         AM_WITH_NLS_GTK to AM_GTK_WITH_NLS to avoid this ugly automake
114         warnings.
115
116 Tue Dec 15 16:06:15 1998  Owen Taylor  <otaylor@redhat.com>
117
118         * acinclude.m4: Provide a hacked version of the
119           gettext macros that never use the included gettext.
120          
121         * Makefile.am configure.in: Remove references
122           to intl/
123         
124         * autogen.sh: Don't run gettextize.
125
126 Tue Dec 15 14:30:35 1998  Owen Taylor  <otaylor@redhat.com>
127
128         * gdk/gdk.h gdk/gdkfonts.c: Added gdk_text_extents_wc()
129
130         * Patch from Jonathan Blanford <jrb@redhat.com> to add line wrapping
131           to label. (Based on patch from Jeff Dairiki
132           <dairiki@mac-ceope.apl.washington.edu> gtk-dairiki-971208-0)
133
134         - Adds new function gtk_label_set_line_wrap()
135         - implement GTK_JUSTIFY_FILL.
136         - rename gtk_label_set to gtk_label_set_text() add
137            gtk_label_set() to gtkcompat.h.
138
139         * Use an internal wc representation in the label, so
140           that we handle underlining and line breaks correctly
141           for multi-byte strings.
142
143 Tue Dec 15 13:32:28 1998  Owen Taylor  <otaylor@redhat.com>
144
145         * gtk/gtkwidget.h: Added GTK_USER_DRAW flag.
146
147         * gtk/gtkwindow.c: Honor GTK_USER_DRAW flag.
148
149         * gtk/gtkdrawwindow.c gtk/Makefile.am: Removed 
150         GtkDrawWindow, which GTK_USER_DRAW obsoletes.
151
152 Tue Dec 15 11:37:05 1998  Owen Taylor  <otaylor@redhat.com>
153
154         * gtk/gtkmain.c: Fixed up some warnings.
155
156 Tue Dec 15 10:32:01 1998  Owen Taylor  <otaylor@redhat.com>
157
158         * gtk/gtk{h,v,}paned.{c,h}: Add new functions 
159         gtk_paned_set_position(),
160         gtk_paned_pack1/2(). The latter take a
161         shrink and resize parameters, that allows setting
162         minimum sizes and getting 'relative' resizing.
163
164 Tue Dec 15 10:26:23 1998  Owen Taylor  <otaylor@redhat.com>
165
166         * gdk/gdkevents.c: Keep separate putback_events and 
167         queued_events queues so that we get both FIFO and 
168         preemptive behavior for gdk_event_put().
169
170 Tue Dec 15 09:22:44 1998  Owen Taylor  <otaylor@gtk.org>
171
172         * gtk/gtkrc.c (gtk_rc_init): Removed unused 
173         variable, fixed minor memory leak.
174
175         * gdk/gdk.c: Fixed another merge problem.
176
177 Tue Dec 15 08:53:38 1998  Owen Taylor  <otaylor@redhat.com>
178
179         * gdk/gdk.c (gdk_get_display): Remove gdk_signal,
180         which crept back in in last commit.
181
182 Tue Dec 15 01:38:53 1998  Owen Taylor  <otaylor@redhat.com>
183
184         * gtk/Makefile.am: Commented out testthreads from
185         the build process, since we won't have any idea
186         how to create a thread.
187
188         * configure.in (LIBS): use glib-config ... gthread
189         so we always build a thread-compatible library.
190
191         * gtk/gtkaccellabel.c gtk/gtkclist.c gtk/gtkcolorsel.c
192           gtk/gtkcombo.c gtk/gtkcontainer.c gtk/gtkentry.c
193           gtk/gtklist.c gtk/gtkmenuitem.c gtk/gtknotebook.c
194           gtk/gtkrange.c gtk/gtkselection.c gtk/gtkspinbutton.c
195           gtk/gtktext.c gtk/gtktooltips.c gtk/gtkwidget.c:
196         
197         Add GTK_THREADS_ENTER/LEAVE pairs around timeouts
198         and idles to account for the fact that they are no
199         longer called within the GTK+ lock.
200
201         * gtk/gtkprivate.h: Added definitions for locking
202         the main GTK+ mutex.
203         
204         * gtk/gtkmain.c: Re-implement the main loop 
205         in terms of the GLib main loop.
206
207         * gdk/gdk.h gdk/gdkthreads.c gdk/Makefile.am: Removed threading 
208         functionality, as it seems better to subsume GDK within the 
209         GTK+ lock than vice-versa.
210
211         * gdk/gdkevents.c: New file, containing event handling bits 
212         from gdk.c.
213
214         * gdk/gdkevents.c: Implement event source for GDK
215         events.
216         
217         * configure.in gdk/gdkevents.c: Removed attempts to 
218         subtract base_id, which were already non-functional.
219
220 Mon Dec 14 23:05:20 PST 1998 Manish Singh <yosh@gimp.org>
221
222         * acconfig.h
223         * configure.in: removed IPC_RMID_DEFERRED_RELEASE check
224
225         * gdk/gdk.c: remove signal handlers, since we do an IPC_RMID
226         after XShmAttach, and nobody complained
227
228 Tue Dec 15 02:27:42 MET 1998 Sven Neumann <sven@gimp.org>
229
230         * po/de.po: Replaced the crappy german po-file with a valid one.
231
232 Mon Dec 14 16:10:05 1998  Owen Taylor  <otaylor@redhat.com>
233
234         * gtk/gtkrc.c (gtk_rc_init): Append locale-specific
235         suffixes to default rc file names, and look these
236         up in addition to the base filename, to facilitate
237         having the correct fontset per-locale.
238
239         move $(sysconfdir)/gtkrc to $(sysconfdir)/gtk/gtkrc
240
241         * gtk/gtkitemfactory.[ch] (gtk_item_factory_set_translate_func):
242         New function to set a function to translate menu paths.
243
244         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Free
245         results of g_strsplit().
246
247 1998-12-14  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>
248
249         * configure.in (ALL_LINGUAS): Added 'pt'.
250
251         * po/pt.po: Added Portuguese translation.
252
253 Mon Dec 14 20:04:31 1998  Stefan Jeske  <stefan@gtk.org>
254
255         * gtk/gtkspinbutton.c: Only call gtk_spin_button_update if
256         the spinbutton is editable.
257
258 Mon Dec 14 12:24:13 1998  Owen Taylor  <otaylor@redhat.com>
259
260         * HACKING: Added gettext-10.35
261
262         * autogen.sh: Run gettextize.
263
264 Wed Dec  9 16:29:06 1998  Owen Taylor  <otaylor@redhat.com>
265
266         Applied gtk-egger-981010-[12] 
267         [ Daniel.Egger@t-online.de (Daniel Egger) ]
268
269         * gtk/gtkintl.h: New file - defines for localization.
270
271         * gtk/gtkfilesel.c gtk/gtkinputdialog.c: Mark strings
272         for internationalization.
273
274         * gtk/gtkmain.c: call bindtextdomain
275
276         * po/ - directory for translations. Initially includes
277         German translation.
278
279 Mon Dec 14 02:42:11 1998  Tim Janik  <timj@gtk.org>
280
281         * gtk/gtkwidget.c: made GtkWidget::grab_focus a RUN_LAST and
282         RUN_ACTION signal. moved stuff from gtk_widget_grab_focus() into
283         gtk_widget_real_grab_focus() so a signal is always emitted
284         if the focus is grabbed on a widget.
285
286 Mon Dec 14 02:13:01 1998  Tim Janik  <timj@gtk.org>
287
288         * gtk/gtkmenuitem.c: fixed submenu popup timeouts, we decide whether or
289         not to delay the submenu popup from a menu item deselection time stamp.
290         the code looks even more hackish than before, but in practice "feels"
291         very well.
292
293 1998-12-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
294
295         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added a "grab_focus"
296         signal for widgets.  When the signal is emitted, the widget will
297         grab the focus.  This is needed to let the user press an
298         accelerator key in a dialog box and have the corresponding widget
299         be focused.
300
301         * gtk/gtkwidget.c (gtk_widget_class_init): Create the "grab_focus"
302         signal.  The default handler is simply gtk_widget_grab_focus().
303
304 Sun Dec 13 22:15:48 GMT 1998  Tony Gale  <gale@gtk.org>
305
306         * docs/gtk_tut.sgml: Update the following sections to the
307           current API:
308             - Container Widgets
309             - CList Widget
310             - List Widget
311             - Tree Widget
312
313 Sat Dec 12 19:11:35 1998  Tim Janik  <timj@gtk.org>
314
315         * gtk/gtkmenuitem.c: made GtkMenuItem::activate a GTK_RUN_ACTION signal.
316
317         * gtk/gtkbutton.c: made GtkButton::clicked a GTK_RUN_ACTION signal.
318
319         * gtk/gtkfeatures.h.in: define GTK_HAVE_FEATURES_1_1_8.
320
321 Sat Dec 12 17:46:55 1998  Owen Taylor  <otaylor@gtk.org>
322
323         * gtk/gtklayout.c (gtk_layout_unrealize): Mark
324         child->window as destroyed so we don't destroy
325         it again.
326
327 Sat Dec 12 17:18:32 1998  Owen Taylor  <otaylor@redhat.com>
328
329         * gdk/gdkfont.c (gdk_text_extents): Corrections
330         to computation of extents of text from a font set.
331         (from Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
332          and Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>)
333         
334 Fri Dec 11 08:59:12 1998  Owen Taylor  <otaylor@redhat.com>
335
336         * gtk/gtklistitem.c (gtk_list_item_style_set):
337         * gtk/gtklist.c     (gtk_list_style_set):
338         Added "style_set" handlers.
339
340 Fri Dec 11 05:49:30 1998  Owen Taylor  <otaylor@redhat.com>
341
342         * gtk/gtkclist.c (gtk_clist_style_set): Add in a "style_set"
343         handler so that the background of the clist changes
344         with the theme.
345
346 Thu Dec 10 22:02:49 CST 1998 Shawn T. Amundson <amundson@gtk.org>
347
348         * Released GTK+ 1.1.7
349
350         * INSTALL:
351           NEWS:
352           README:
353           configure.in:
354           gtk+.spec:
355           gtk/gtkfeatures.h.in: 
356           docs/gtk-config.1: Version to 1.1.7
357
358 Thu Dec 10 20:48:19 PST 1998 Manish Singh <yosh@gimp.org>
359
360         * gtk/gtkclist.c: avoid void pointer math
361
362         * gtk/gtkhscale.c
363         * gtk/gtkhscrollbar.c
364         * gtk/gtkvscale.c
365         * gtk/gtkvscrollbar.c: removed trailing , from enums
366
367         * gtk/gtksignal.c: can't use enums as a bitfield type, use guint
368
369         * gtk/testgtk.c: removed C++ comment added by owenpoo
370
371 Thu Dec 10 21:48:34 1998  Owen Taylor  <otaylor@redhat.com>
372
373         * gtk/gtkdnd.[ch]: Added gtk_drag_source_unset()
374
375 Thu Dec 10 20:42:22 1998  Owen Taylor  <otaylor@redhat.com>
376
377         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Use 
378         gdk_window_get_origin() instead of gdk_window_get_position,
379         because get_position is unreliable for plugs. 
380
381         This is a bad hack, maybe we need GDK_WINDOW_PLUG?
382
383 Thu Dec 10 17:58:49 GMT 1998  Tony Gale  <gale@gtk.org>
384
385         * docs/gtk_tut.sgml:
386           - re-write the GtkProgressBar section to the 1.1 API.
387           - add an Appendix listing all the signals
388             (apologies to TimJ for taking so long in using his hard work
389              in automating the extraction - thanx Tim). 
390         * examples/*: bring them all upto the tutorial versions
391
392 Thu Dec 10 02:21:16 1998  Jeff Garzik  <jgarzik@pobox.com>
393
394         * gtk/testdnd.c: use g_snprintf, eliminate need for string.h
395         * gtk/testrgb.c: include string.h, for strlen
396
397 Wed Dec  9 17:39:26 1998  Owen Taylor  <otaylor@redhat.com>
398
399         * configure.in: Add a case for success in 
400         test for XUnregisterIMInstantiate, to prevent
401         screwing up $LIBS.
402
403 Wed Dec  9 13:06:31 1998  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
404  
405         * gdk/gdkim.c (gdk_ic_new,gdk_ic_{set,get}_attr): Fixed argument
406         list and return type for non-XIM fallback.
407  
408         * configure.in: Only build XIM-support if available.
409  
410 Wed Dec  9 12:23:30 1998  Owen Taylor  <otaylor@redhat.com>
411         
412         * gtk/testselection.c (main): Add in missing 'flags'
413         field to target list.
414
415         * gdk/gdkproperty.c (gdk_atom_intern): Actually
416         add the atoms to the local cache.
417
418 Wed Dec  9 04:57:31 PST 1998 Manish Singh <yosh@gimp.org>
419
420         * gdk/gdkprivate.h: put text after #endif in comment
421
422         * gdk/gdktypes.h: change whitespace in enum to shut up makeenums.pl
423
424         * gtk/testdnd.c: #include <string.h>
425
426 Mon Dec  7 10:27:09 1998  Owen Taylor  <otaylor@redhat.com>
427
428         * gtk/gtkwidget.c: Destroy widgets _after_ propagating unrealize
429         signals through the widget heirarchy. This is unpleasant, as it
430         causes more X traffic, but is necessary, because we have to clean
431         up our Input Contexts before destroying the X windows.
432         (from matsu-981109-0.patch)
433         
434 Mon Dec  7 10:18:18 1998  Owen Taylor  <otaylor@redhat.com>
435
436         Applied gtk-a-higuti-981202-0 : 
437         [ a-higuti@math.sci.hokudai.ac.jp (Akira Higuchi) ]
438         
439         * gdk/gdk.h gdk/gdk.c
440                 (gdk_mbstowcs): New function. Nearly equals to mbstowcs, but
441                         implemented by a combination of Xlib functions, so
442                         it works even with X_LOCALE.
443                 (gdk_wcstombs): New function.
444                 (g_mbtowc): Removed. No longer needed.
445
446         * gdk/gdk.h gdk/gdkfont.c gdk/gdkdraw.c: 
447                 Added _wc() variants to gdk_text_width(), 
448                 gdk_char_width(), gdk_draw_text(),
449                 
450         * gdk/gdki18n.h
451                 (mblen, mbtowc, wctomb, mbstowcs, wcstombs,
452                  wcslen, wcscpy, wcsncpy):
453                         Removed. No longer needed.
454                 (iswalnum): Removed.
455                 (gdk_iswalnum): New macro.
456                 (gdk_iswspace): New macro.
457         * gdk/gdktype.h
458                 (GdkWChar): New typedef.
459         
460         * gtk/gtkentry.h, gtk/gtkentry.c
461                 There are many changes according to the change of the
462                 internal representation of text, from multibyte string
463                 to wide characters. 
464         * gtk/gtkprivate.h, gtk/gtkmain.c
465                 Removed the variable gtk_use_mb and related codes.
466         * gtk/gtkspinbutton.c
467                 Some changes according to the change of type of entry->text.
468         * gtk/gtktext.h, gtk/gtktext.c
469                 Changed the internal representation of text. We use GdkWchar
470                 if a fontset is supplied. If not, we use guchar to save
471                 memory.
472         
473 Tue Dec  1 15:20:39 1998  Owen Taylor  <otaylor@redhat.com>
474
475         * gdk/gdkwindow.c (gdk_window_new): When creating
476         a window with a specified non-system visual, use
477         a matching colormap.
478
479 Mon Nov 30 11:50:13 1998  Owen Taylor  <otaylor@redhat.com>
480
481         * gdk/gdk.c gdk/gdkim.c gdk/gdkprivate.h gdk/gdk.h
482           gdk/gdktypes.h gtk/gtkeditable.c gtk/gtkmain.c
483           gtk/gtkentry.c gtk/gtktext.c:
484
485          Applied matsu-981109-0
486          [ matsu@arch.comp.kyutech.ac.jp (Takashi Matsuda) ]
487         
488          - Change system of setting input method values 
489            from varargs to a structure, similar to GC's
490            or window attributes.
491
492          - Various fixes to event handling.
493
494          Also:
495
496          * gdk/gdkim.c: Split of input method stuff into
497            a separate source file.
498
499          * Remove GdkIM typedef, change everything from
500            GdkIC to GdkIC * to be consistent with the
501            rest of GTK.
502         
503 Wed Dec  9 00:41:41 1998  Owen Taylor  <otaylor@redhat.com>
504
505         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Allocate
506         correct amount of memory for strings.
507
508 Tue Dec  8 18:29:05 CST 1998 Shawn T. Amundson <amundson@gtk.org>
509
510         * Released GTK+ 1.1.6
511
512         * NEWS: updated
513
514         * gtk/Makefile.am:
515           gtk/testgtk.c:
516           gtk/gtkrc.h:
517           gtk/gtkrc.c: Read in default files.
518
519 Wed Dec  9 00:49:12 1998  Tim Janik  <timj@gtk.org>
520
521         * gtk/gtktypeutils.h:
522         * gtk/gtktypeutils.c: added gtk_type_query() which returns a newly
523         allocated structure holding certain type specific informations.
524         fixed the big bunch of `discards const' warnings with the
525         initialization of enum/flags values.
526
527 Tue Dec  8 15:10:17 1998  Owen Taylor  <otaylor@redhat.com>
528
529         * gtk/gtkwindow.c (gtk_window_transient_parent_realized):
530         Fixed order of arguments to gdk_window_transient_for().
531
532 Tue Dec  8 18:02:57 GMT 1998  Tony Gale  <gale@gtk.org>
533
534         * examples/Makefile: simple top level Makefile that invokes all
535           the sub-directory Makefiles.
536
537 1998-12-08  Andrew T. Veliath  <andrewtv@usa.net>
538
539         * gtk/testgtk.c: Functions to test the toolbar space style.
540
541         * gtk/gtktoolbar.c: Add a private GtkToolbarChildSpace subclass of
542         GtkToolbarChild to hold allocation. Set default space style to
543         GTK_TOOLBAR_SPACE_EMPTY, define SPACE_LINE_* for separator
544         fraction defaults.
545         (gtk_toolbar_paint_space_line): New function; paints the separator
546         line, using "toolbar" as the detail.
547         (gtk_toolbar_expose): (gtk_toolbar_draw): Handle CHILD_SPACE when
548         style is set to SPACE_LINE.
549         (gtk_toolbar_size_allocate): Store space allocations.
550         (gtk_toolbar_insert_element): If we are a space, allocate and
551         initialize a GtkToolbarChildSpace instead of a GtkToolbarChild.
552         (gtk_toolbar_set_space_style): New function.
553
554         * gtk/gtktoolbar.h: Add GtkToolbarSpaceStyle, with styles of EMPTY
555         and LINE. Add prototype for gtk_toolbar_set_space_style.
556
557 Mon Dec  7 16:03:55 1998  Owen Taylor  <otaylor@redhat.com>
558
559         * gtk/gtkthemes.h: Remove random unnecessary includes
560         of standard headers.
561
562 1998-12-07  Damon Chaplin  <DAChaplin@msn.com>
563
564         * gtk/gtkfontsel.c (gtk_font_selection_select_best_style): made sure
565         we only try to match styles which are currently shown.
566
567         (gtk_font_selection_init): set the notebook tabs homogeneous and set
568         the border, so we don't need to set the size explicitly (bad for i18n).
569         Used the clist auto-resize feature for the font and style lists on the
570         main page and all the filters. Used padding for the 'Reset Filter'
571         button instead of spaces around it (bad for i18n).
572
573         (gtk_font_selection_find_font): when searching for
574         a font, if we can't match both the family and foundry, we return any
575         font where just the family matches. (The foundry can even be '*'.)
576
577         (gtk_font_selection_show_available_styles): 
578         (gtk_font_selection_realize_list): don't set the style clist row
579         colours (for the charset rows) until the clist is realized, since we
580         use the clist style's insensitive colours.
581
582 Mon Dec  7 13:38:06 1998  Owen Taylor  <otaylor@redhat.com>
583
584         * gdk/gdkimage.c (gdk_image_new): Use IPC_RMID
585         _after_ doing XShmAttach. This should work everywhere,
586         and avoid the need for signal handlers or configure
587         checks.
588
589 Thu Dec  3 19:58:45 1998  Owen Taylor  <otaylor@redhat.com>
590
591         * gtk/gtkinputdialog.c: Use _add_with_viewport() for
592         scrolled window contents.
593
594 1998-12-07  Federico Mena Quintero  <federico@nuclecu.unam.mx>
595
596         * gtk/gtkpaned.h (struct _GtkPaned): Removed the unused cursor
597         field in the structure.
598
599 Mon Dec  7 15:15:06 GMT 1998  Tony Gale <gale@gtk.org>
600
601         * docs/gtk_tut.sgml: Start mass update for GTK 1.1
602         * examples/extract.sh: Look for the best version of awk
603         * examples/extract.awk: Fix FD leak
604         * example/base: minimal example from Tutorial
605
606 Mon Dec  7 01:29:27 1998  Owen Taylor  <otaylor@gtk.org>
607
608         * gtk/gtkwindow.c: New functions
609         gtk_window_set_transient_for() - set up a "transient for" relationship.
610         gtk_window_set_default_size() - set the initial size of a window
611            distinct from its minimum size.
612         gtk_window_set_geometry_hints() - Allow the user to set
613            minimum, maximum sizes, aspect rations, and gridded geometry, 
614            possibly all with respect to a subwidget of the window.
615         These interfaces are still a wee bit experimental.
616
617         * gdk/gdk.c: Added gdk_window_set_transient_for(),
618         gdk_window_set_geometry_hints(), and gdk_window_set_role().
619
620         * gdk/gdktypes.h: Added new types for find-grained specification
621         of WM hints.
622
623         * gtk/testgtk.c: Various changes to tests to test the
624         above new functions.
625
626         * gtk/gtkfontsel.c: Squash a few 'const' warnings.
627         
628         * gtk/gtktogglebutton.c (gtk_toggle_button_realize): Restored
629         call to gtk_style_set_background() to prevent egregious
630         flashing to black.
631
632 Mon Dec  7 03:52:01 1998  Tim Janik  <timj@gtk.org>
633
634         * gtk/gtksignal.c (gtk_handlers_run): when marshalling connect_object
635         signals, don't pass the data pointer twice, but swap it with the
636         object pointer (proposed on Nov 30 1998 on gtk-devel-list).
637
638 Mon Dec  7 03:08:39 1998  Tim Janik  <timj@gtk.org>
639
640         * gtk/gtktypeutils.h: 
641         * gtk/gtktypeutils.c: reverted Marius's change to expose the type systems
642         internal type info data to the user. if such functionality is required
643         we should provide wrapping accessors, ala gtk_signal_query(). also the
644         GtkTypeInfo structures are dynamically allocated memory portions, so
645         only the type system is really allowed to access that stuff.
646
647         * gtk/gtksignal.c (gtk_signal_connect_by_type): reverted marius change,
648         since it destroys the possibility to implement automatic marshaller
649         lookups some day, and it also disables third party code's ability to
650         connect to any signal.
651
652 Mon Dec  7 01:32:18 1998  Tim Janik  <timj@gtk.org>
653
654         * gtk/gtkfilesel.c (gtk_file_selection_key_press): always intercept the
655         Tab key on the entry. the focus shouldn't get lost even if completion
656         is attempted from an empty entry, since an empty entry string does
657         indeed have a valid completion meaning (complete all).
658         (gtk_file_selection_init): cast the gchar array parameter in calls to
659         gtk_clist_new_with_titles() to quit compiler warnings.
660         (check_dir): the no_stat_dirs struct must not be const, since we do
661         indeed modify its contents.
662
663         * gtk/testgtk.c (event_watcher): adapted prototype to fit new emission
664         hook semantics.
665
666         * gtk/gtksignal.h:
667         * gtk/gtksignal.c:
668         changed emission allocation, so we don't use a doubly linked list
669         but link ourselfs (singly linked).
670         changed emission hooks, they get the emision parameters passed as
671         well now and are emitted during the actuall signal emission (after
672         the RUN_FIRST class method, but prior to RUN_FIRST handlers).
673         the existing restrictions do still apply to signal emission hooks,
674         i.e. an emission may not be stopped or restarted from an emission hook.
675         due to possibly huge perfomance impacts, frequent use of emision hooks
676         is also not recommended.
677         (gtk_signal_next_and_invalidate): added an
678         assertments which explicits what the code assumes anyways: a
679         maximum amount of 65535 signals.
680
681         * gtk/gtkcontainer.h: deprecated gtk_container_foreach_interp(),
682         gtk_container_foreach_full() should be used instead.
683
684         * gtk/gtkmain.h:
685         deprecated gtk_timeout_add_interp and gtk_idle_add_interp, since
686         we provide _full variants.
687
688         * gtk/gtksignal.h: deprecated gtk_signal_connect_interp(), we provide
689         gtk_signal_connect_full() for long enough now.
690
691 1998-12-06  Marius Vollmer  <mvo@zagadka.ping.de>
692
693         * gtk/gtksignal.c (gtk_signal_newv): Allow a NULL marshaller.
694         (gtk_signal_connect_by_type): Allow only no_marshal handlers to
695         connect to signals with a NULL marshaller.
696
697         * gtk/gtktypeutils.c (gtk_type_get_info): New.
698         gtk/gtktypeutils.h (gtk_type_get_info): New prototype.
699
700 Sun Dec  6 14:27:35 1998  Stefan Jeske  <stefan@gtk.org>
701
702         * gtk/gtkspinbutton.c (gtk_spin_button_draw_arrow): Grey out
703         arrows if wrap == FALSE and interval borders are reached.
704
705 Sat Dec  5 21:07:09 1998  Owen Taylor  <otaylor@gtk.org>
706
707         * gtk/gtkaspectframe.c (gtk_aspect_frame_size_allocate): Fixed
708         long-standing typo in aspect ratio computation code.
709         (pointed out by Sebastian Rittau <srittau@jroger.in-berlin.de>)
710
711 Fri Dec  4 01:20:06 1998  Lars Hamann  <lars@gtk.org>
712
713         * gtk/gtkclist.c (gtk_clist_button_release): call toggle_row with
714         valid row numbers only
715         (toggle_row): check if clist_row != NULL
716
717 Fri Dec  4 00:50:12 1998  Lars Hamann  <lars@gtk.org>
718
719         * gtk/gtkctree.c (gtk_ctree_export_to_gnode): fixed for-loop.
720
721         * gtk/gtkclist.c 
722         (gtk_clist_set_column_visibility)
723         (gtk_clist_column_titles_active)
724         (gtk_clist_column_titles_active)
725         (gtk_clist_column_title_passive)
726         (gtk_clist_column_title_active): few additional tests whether
727         column->button != NULL
728
729 Thu Dec  3 16:49:18 1998  Owen Taylor  <otaylor@redhat.com>
730
731         * gtk/gtkdnd.c (DROP_ABORT_TIME): Changed to 5 min
732         from 10 seconds, so it doesn't abort while users
733         have an ACTION_ASK menu up.
734
735         * gtk/gtkdnd.c: Hide the icon window between sending a a 
736         drop event to the destination and displaying the
737         snapback animation, so that it doesn't hang around
738         during ACTION_ASK.
739
740 Thu Dec  3 16:37:42 1998  Owen Taylor  <otaylor@redhat.com>
741
742         * gtk/gtkclist.c (get_cell_style): Use GTK_STATE_INSENSITIVE
743         for the foreground of cells for CLists in the insensitive
744         state, instead of GTK_STATE_PRELIGHT.
745
746 Thu Dec  3 06:20:59 1998  Tim Janik  <timj@gtk.org>
747
748         * gtk/gtkwindow.c: moved checks upon focus setting from
749         gtk_window_real_set_focus to gtk_window_set_focus, so we don't
750         emit the signal if unneccessary.
751
752         * gtk/gtkwidget.c (gtk_widget_grab_focus): clear up the old focus
753         containers when grabbing focus on a new widget. this is based on
754         a patch from Alexis Mikhailov, submitted to gtk-list on 4 Nov 1998.
755
756         * gtk/gtkclist.c (gtk_clist_focus_out): set CLIST_CHILD_HAS_FOCUS
757         flag, so we take the buttons into consideration upon the next focus
758         request.
759
760         * gtk/gtkcontainer.c (gtk_container_set_focus_child): fixed an
761         assertment.
762
763 Wed Dec  2 17:45:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
764
765         * gtk/gtkpixmap.c: Fixes for low-color displays and a slight
766           enhancement for true-color displays.
767
768         * INSTALL:
769           README:
770           configure.in:
771           gtk+.spec:
772           docs/gtk-config.1: up to version 1.1.6
773
774 Wed Dec  2 01:36:49 PST 1998 Manish Singh <yosh@gimp.org>
775
776         * gtk/gtkfeatures.h.in: lets #define GTK_HAVE_FEATURES_1_1_6 before
777         we release it this time
778
779 Wed Dec  2 01:39:02 1998  Tim Janik  <timj@gtk.org>
780
781         * gtk/gtknotebook.h: 
782         * gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
783
784         * incremented version number to 1.1.6 and made Gtk
785         dependant on GLib 1.1.6.
786
787         * gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
788         from guint16 to gint16, since sizes bigger than 32767 are not supported
789         anyways, and aritmethics with intermediate negative values are possible
790         now.
791
792 Tue Dec  1 00:00:04 1998  Tim Janik  <timj@gtk.org>
793
794         * gtk/gtkscrolledwindow.c:
795         implementation of GTK_POLICY_NEVER functionality, added rationales
796         on the policy and size requisition handling at the top.
797         (gtk_scrolled_window_size_request):
798         we assume a default minimum for our child's width and height
799         if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
800         specified the dimension explicitely.
801         (gtk_scrolled_window_size_allocate): 
802         do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.
803
804         * gtk/gtkviewport.c (gtk_viewport_size_request): report the real
805         size we require (including the child).
806
807         * gtk/gtkclist.c:
808         (gtk_clist_size_request): report the real size required.
809
810         * gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.
811
812         * gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
813         need to be a static variable.
814
815 Mon Nov 30 22:41:25 1998  Tim Janik  <timj@gtk.org>
816
817         * gtk/gtkclist.h: 
818         * gtk/gtkclist.c: 
819         * gtk/gtkviewport.h:
820         * gtk/gtkviewport.c:
821         * gtk/gtktext.h:
822         * gtk/gtktext.c:
823         * gtk/gtklayout.h:
824         * gtk/gtklayout.c:
825         * gtk/gtkwidget.h:
826         * gtk/gtkwidget.c:
827         * gtk/gtkscrolledwindow.h:
828         * gtk/gtkscrolledwindow.c:
829         s/scroll_adjustements/scroll_adjustments/
830         s/scroll_adjustments/set_scroll_adjustments/g
831
832 Tue Dec  1 22:45:58 1998  Lars Hamann  <lars@gtk.org>
833
834         * gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
835         row_move.
836         * gtk/gtkclist.c (gtk_clist_row_move): new public function.
837         emit a row_move signal
838         (real_row_move): move source_row to dest_row
839         (gtk_clist_swap_rows): use gtk_clist_row_move calls.
840         (gtk_clist_columns_autosize): resize all columns to their optimal
841         width
842         * gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
843         entire sub-tree.
844         * gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
845
846 Tue Dec  1 02:40:22 PST 1998 Manish Singh <yosh@gimp.org>
847
848         * configure.in
849         * gdk/Makefile.am
850         * gtk/Makefile.am: Put -DFOO stuff into Makefile.am INCLUDES.
851         Separate vars for each, for granularity.
852
853 Tue Dec  1 02:19:54 1998  Tim Janik  <timj@gtk.org>
854
855         * gtk/gtkenums.h: fixed a stupid error of mine about the run type
856         values.
857
858 1998-11-30  Elliot Lee  <sopwith@cuc.ml.org>
859
860         * {gdk,gtk}/*.c: Make read-only data structures "static const" to
861         allow them to be shared, mainly including (but not limited to) the
862         GtkTypeInfo structures for each class.
863
864         * gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
865
866 Mon Nov 30 12:17:10 1998  Jeff Garzik  <jgarzik@pobox.com>
867
868         * gtk/gtksignal.c:
869         Surround debug variable with #ifdef to silence gcc.
870
871         * gtk/gtknotebook.c (gtk_notebook_reorder_child):
872         Added initializer to quiet gcc warning.
873         Added assertion to check for null pointer deref.
874
875 Mon Nov 30 10:11:29 1998  Tim Janik  <timj@gtk.org>
876
877         * gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
878         system specific includes.
879
880         * gtk/gtksignal.c: asured that stop and restart emissions are also
881         checked and processed for not connected objects. fixed up restart
882         emission administration. invoke emission hooks after emission, hooks
883         are not supposed to muck around with the current emission, and
884         may also not cause emission restarts. fixed up stop emission
885         administration.
886
887 Mon Nov 30 06:20:36 1998  Tim Janik  <timj@gtk.org>
888
889         * gtk/testgtk.c: added an event watcher for enter/leave based on
890         signal emission hooks.
891
892         * gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
893         GTK_RUN_NO_HOOKS signal.
894
895         * gtk/gtksignal.h: 
896         * gtk/gtksignal.c: implemented emission hooks, new hooks can be added
897         to a signal with gtk_signal_add_emission_hook or
898         gtk_signal_add_emission_hook_full, and can be removed again with
899         gtk_signal_remove_emission_hook.
900
901         * gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
902         an appropriate mask for signal runtypes for a long time now.
903         added GTK_RUN_NO_HOOKS value, which is used to flag signals
904         that do not allow the running of signal hooks.
905
906 1998-11-26  Michael Krause  <m.krause@tu-harburg.de>
907
908         * gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
909         argument a gint: switch_page signal delivers valid page numbers
910         again.
911
912 Sun Nov 29 06:12:01 1998  Tim Janik  <timj@gtk.org>
913
914         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_[hv]adjustment): 
915         set composite names.
916
917         * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
918         check, people must use gtk_type_init().
919         fixed up type allocation for foreign fundamentals.
920
921         * gtk/gtkwidget.h: 
922         * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
923         for internal use by containers, that want to assign specific composite
924         names to their composite children.
925         added gtk_widget_get_composite_name() which will return a newly
926         allocated string, containing the composite name of a widget. valid
927         composite names can only be retrived from widgets that have a parent
928         assigned and are flagged as GTK_COMPOSITE_CHILD.
929
930         * gtk/gtkcontainer.h:
931         * gtk/gtkcontainer.c: added a new function
932         gtk_container_child_default_composite_name() which will return a
933         newly allocated string, holding the composite name of a containers
934         child. a default implementation is provided which will compose the
935         composite name out of the widgets type and its sequential children
936         id. this implementation can be overidden through a new class function
937         *(composite_name)().
938
939 Sat Nov 28 10:57:59 1998  Owen Taylor  <otaylor@redhat.com>
940
941         * gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
942         expose_event handler - we had two expose_event
943         handlers!
944
945 Sat Nov 28 03:13:42 1998  Tim Janik  <timj@gtk.org>
946
947         * gtk/gtkscrolledwindow.h: 
948         * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
949         it inherits from GtkBin now.
950
951         * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
952         visibility of child.
953         (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
954         added check so a child gets only drawn if it's visible.
955
956         * gtk/gtkwidget.h: 
957         * gtk/gtkwidget.c: removed gtk_widget_draw_children().
958
959         * gtk/gtkstyle.h: 
960         * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
961
962         * gtk/gtkwidget.h: 
963         * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
964         added internal function gtk_widget_reset_shapes() from gtkstyle.c.
965
966         * gtk/gtkrc.h:
967         * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
968         argument, changed callers.
969
970         * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
971         it will issue a warning now.
972
973         * gtk/gtkcompat.h: new file to #define aliases for historic
974         function names.
975
976         * changed 8 function names for consistency and provided aliases to keep
977         source compatibility in gtkcompat.h:
978         (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
979         (gtk_container_set_border_width): renamed from gtk_container_border_width
980         (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
981         (gtk_packer_configure): renamed from gtk_packer_set_child_packing
982         (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
983         (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
984         (gtk_scale_get_value_width): renamed from gtk_scale_value_width
985         (gtk_window_set_position): renamed from gtk_window_position
986
987         * renamed a few recently added funtions for consistency:
988         (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
989         (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
990         (gtk_progress_configure): renamed from gtk_progress_reconfigure.
991
992 Fri Nov 27 18:57:20 PST 1998 Manish Singh <yosh@gimp.org>
993
994         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
995         check for existing viewport first, and don't add one if there
996         already is one
997
998 Sat Nov 28 00:06:49 1998  Tim Janik  <timj@gtk.org>
999
1000         * gtk/gtkwidget.h: 
1001         * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
1002         gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
1003         and gtk_widget_unlock_accelerators.
1004
1005         * gtk/gtklayout.h:
1006         * gtk/gtklayout.c: implemented incremental freezing facility.
1007
1008         * gtk/gtktext.h: 
1009         * gtk/gtktext.c: implemented incremental freezing facility.
1010
1011         * gtk/gtkenums.h:
1012         * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
1013
1014         * gtk/gtkentry.h:
1015         * gtk/gtkentry.c:
1016         deprecated gtk_entry_adjust_scroll().
1017         
1018         * random GtkType, macro and indentation fixes.
1019
1020 Fri Nov 27 22:50:15 1998  Tim Janik  <timj@gtk.org>
1021
1022         * gtk/gtkclist.h: 
1023         * gtk/gtkclist.c: implemented incremental freezing facility, added
1024         a new class member (*refresh)() which takes over the thaw
1025         functionality. the clist FROZEN flag got removed on the way.
1026         * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
1027         and incremental freezing.
1028
1029         * gtk/gtkcalendar.c: implemented incremental freezing facility.
1030
1031 Fri Nov 27 11:41:27 1998  Raph Levien  <raph@gimp.org>
1032
1033         * gdk/gdkinputcommon.h (gdk_input_common_init): Fixed it so that
1034         it still includes the core pointer in gdk_input_devices even
1035         if the XInput extension is not present in the X server.
1036
1037 Fri Nov 27 12:17:15 1998  Owen Taylor  <otaylor@redhat.com>
1038
1039         * gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
1040         get the source widget of a drag.
1041
1042         * gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
1043         to restrict certain targets to the same widget or to
1044         the same application.
1045
1046         * gtk/testdnd.c: Test gtk_drag_get_source_widget().
1047         
1048 Thu Nov 26 19:11:46 1998  Lars Hamann  <lars@gtk.org>
1049
1050         * gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
1051         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
1052         instead of GTK_TYPE_POINTER in signal definitions.
1053         (patch from James Henstridge <james@daa.com.au>)
1054
1055 Thu Nov 26 18:48:44 1998  Lars Hamann  <lars@gtk.org>
1056
1057         * gtk/gtkclist.c (set_cell_contents)
1058         * gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
1059         if auto.resize == TRUE
1060
1061         * gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
1062         don't draw tab, if show_tabs == FALSE
1063         (bug reports from Alexis Mikhailov / Dave Cole)
1064         (gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
1065         the focus rectangle, not the hole tab.
1066
1067 Thu Nov 26 03:18:08 1998  Tim Janik  <timj@gtk.org>
1068
1069         * gtk/gtkclist.h: 
1070         * gtk/gtkctree.h: 
1071         * gtk/gtkclist.c:
1072         * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
1073         Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
1074
1075         * gtk/maketypes.awk: changed underline substitution, so we get
1076         GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
1077         * gtk/makeenums.pl: likewise.
1078         * gtk/gtkctree.c: adapted type names accordingly.
1079
1080 Tue Nov 24 11:31:06 1998  Owen Taylor  <otaylor@redhat.com>
1081
1082         * docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
1083
1084         * gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
1085         some code duplication.
1086
1087         * gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
1088         and child widgets when scrolling greater than 32k pixels.
1089
1090         * testgtk.c: Modified layout test to test scrolling over 
1091         long distances.
1092
1093         * gtk/gtkplug.c: Added a few blank lines.
1094
1095 Tue Nov 24 11:11:05 1998  Owen Taylor  <otaylor@redhat.com>
1096
1097         * gtk/gtklayout.[ch]: Fixed up copyright message.
1098
1099         * gdk/gdkrgb.c (DM): Make the dither matrix constant
1100         so it can be shared.
1101
1102         * gtk/gtkdnd.c: Make cursor bitmaps const.
1103
1104         * gdk/gdk.h gdk/gdkpixmap.c: Added const to 
1105         gdk_pixmap/bitmap_create_from_data.
1106
1107 Tue Nov 24 07:46:09 1998  Tim Janik  <timj@gtk.org>
1108
1109         * docs/Changes-1.2.txt: added a section on scrolled windows and
1110         scrollable widgets.
1111
1112 1998-11-24  Andrew T. Veliath  <andrewtv@usa.net>
1113
1114         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
1115         buttons when setting relief for button items.
1116         (gtk_toolbar_set_button_relief): Same.
1117
1118 1998-11-23  Jeff Garzik  <jgarzik@pobox.com>
1119
1120         * gdk/Makefile.am, gtk/Makefile.am:
1121         Removed DEFS "+=" mess that breaks recent automakes.
1122         INCLUDES is the correct way to add to CFLAGS from Makefile.am.
1123
1124         * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
1125         gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
1126         gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
1127         gtk/testthreads.c:
1128         Include "config.h" instead of "../config.h".
1129         Now that DEFS works again, automake will automatically pass us
1130         the location of config.h in -I.
1131
1132 Mon Nov 23 22:10:09 1998  Owen Taylor  <otaylor@redhat.com>
1133
1134         * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
1135         gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
1136
1137         Added layout widget for scrolling arbitrarily big areas.
1138         Added plug/socket widgets for interprocess embedding.
1139
1140         These widgets still, at some point, need to be
1141         made more pure in their use of GDK, as opposed
1142         to raw X.
1143
1144         * gtk/testgtk.c: Added test for layout widget.
1145         
1146 1998-11-23  Jeff Garzik  <jgarzik@pobox.com>
1147
1148         * gtk/gtkclist.c: (gtk_clist_swap_rows):  Bugfix from
1149         Brandon Long <blong@fiction.net> - do the right thing with first
1150         and last, which are the absolute values of row arguments row1
1151         and row2.
1152
1153 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
1154
1155         * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
1156         default adjustment (from 0 to 100) instead. I'm not sure if this
1157         is the correct level for the fix, but gtk_progress_bar_new()'s
1158         original default behavior is restored.
1159
1160 1998-11-23  Martin Baulig  <martin@home-of-linux.org>
1161
1162         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
1163         we can check for latest GTK features.
1164
1165 1998-11-23  Havoc Pennington  <hp@pobox.com>
1166
1167         * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
1168         (gtk_toolbar_insert_element): When setting relief, also affect
1169         toggle buttons.
1170
1171 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
1172
1173         * gtk/gtkobject.h: remove extraneous comma
1174
1175 Mon Nov 23 05:21:50 1998  Tim Janik  <timj@gtk.org>
1176
1177         * gtk/gtkcontainer.c:
1178         (gtk_container_add_with_args): 
1179         (gtk_container_addv): 
1180         (gtk_container_add): removed assertements for constructed containers
1181         again, since this essentially breaks the "child" arg.
1182
1183         * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
1184         reference count, we don't need to reference toplevels that already have
1185         destroy notifiers.
1186
1187         * gtk/gtkscrolledwindow.c: check for the composites existance in
1188         _forall since we might not be already constructed.
1189
1190 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1191
1192         * Released GTK+ 1.1.5
1193
1194         * configure.in: require GLib 1.1.5
1195
1196 Mon Nov 23 03:21:17 1998  Tim Janik  <timj@gtk.org>
1197
1198         * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
1199         2 * hadj.
1200         (gtk_text_finalize): only unref the current_font if we have
1201         been realized.
1202
1203 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1204
1205         * configure.in:
1206           INSTALL:
1207           NEWS:
1208           README:
1209           gtk+.spec:
1210           docs/gtk-config.1: Version incremented to 1.1.5
1211
1212 Sun Nov 22 16:21:28 1998  Tim Janik  <timj@gtk.org>
1213
1214         * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
1215         ::text_yalign, ::activity_mode.
1216
1217         * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
1218         ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
1219         ::activity_blocks.
1220         (gtk_progress_bar_new):
1221         (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
1222         (gtk_progress_bar_construct): deprecated.
1223
1224         * gtk/gtkvscrollbar.c:
1225         (gtk_vscrollbar_draw_step_back): 
1226         (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
1227         gtk_paint_arrow, to be consistent with hscrollbar.
1228
1229         * gtk/gtktext.c
1230         added construct args ::hadjustment, ::vadjustment.
1231         added args ::line_wrap, ::word_wrap.
1232         (gtk_text_class_init): added scroll_adjustments signal.
1233         (gtk_text_new): use gtk_widget_new.
1234         (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
1235         so we don't screw the reference counts and don't leave signals connected.
1236         (gtk_text_destroy): disconnect adjustments signals.
1237         (gtk_text_finalize): unref adjustments.
1238
1239         * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
1240         added args ::indent, ::spacing, ::show_stub, ::reorderable,
1241         ::use_drag_icons, ::line_style and ::expander_style.
1242         (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
1243         deprecated now.
1244
1245         * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
1246         * gtk/gtkclist.c:
1247         removed ::vadjustment and ::hadjustment args, introduced
1248         ::scroll_adjustments signal.
1249         added ::shadow_type, ::selection_mode and ::row_height args.
1250         added n_columns construct arg.
1251         (gtk_clist_construct): call gtk_object_constructed().
1252         (gtk_clist_set_row_height): if height is passed as 0,
1253         revert to automatic height calculation.
1254         (gtk_clist_destroy): before unrefing the adjustments, disconnect our
1255         signal handlers.
1256
1257 Fri Nov 21 22:34:58 1998  Tim Janik  <timj@gtk.org>
1258
1259         * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
1260         like gtk_object_new.
1261         (gtk_widget_destroy): assert that we only destroy constructed widgets.
1262
1263         * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
1264         to identify args that may only be used for construction.
1265         GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
1266         time.
1267         * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
1268         at the end if the object is not fully constructed.
1269         (gtk_object_newv): likewise.
1270         (gtk_object_destroy): assert that we only destroy constructed objects.
1271         (gtk_object_init): setup GTK_CONSTRUCTED from the
1272         objects real klass.
1273         (gtk_object_default_construct): new function to complete default
1274         construction of an object by applying missing construtor args with
1275         default values of 0, 0.0 or NULL.
1276         (gtk_object_constructed): new function to mark an object as being
1277         constructed (used from within constructors).
1278
1279         * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
1280         so it is immediatedly available for the caller.
1281
1282         * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
1283         the object initilizer (GtkObjectInitFunc takes a second arg now, the
1284         real klass), and asure that object initializers may temporarily alter
1285         the class pointer.
1286
1287 Fri Nov 20 08:00:30 1998  Tim Janik  <timj@gtk.org>
1288
1289         * gtk/testgtk.c: change all occourances of gtk_container_add (
1290         scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
1291         for widget!=(clist, ctree, text, viewport).
1292
1293         * gtk/gtkcombo.c:
1294         (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
1295         to add children to the scrolled window.
1296
1297         * gtk/gtkscrolledwindow.h:
1298         * gtk/gtkscrolledwindow.c:
1299         changed scrolled_window->viewport to scrolled_window->child, and use
1300         gtk_widget_scroll_adjustements() to set the scroll adjustments for the
1301         widget, we do not create an additional viewport anymore.
1302         added ::hadjustment and ::vadjustment constructor args.
1303         (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
1304         (gtk_scrolled_window_set_hadjustment):
1305         (gtk_scrolled_window_set_vadjustment): new functions that superceed
1306         gtk_scrolled_window_construct.
1307         (gtk_scrolled_window_construct): deprecated this function.
1308         
1309         * gtk/gtkhscrollbar.c:
1310         * gtk/gtkvscrollbar.c:
1311         * gtk/gtkhscale.c:
1312         * gtk/gtkvscale.c:
1313         support a constructor arg "::adjustment", and use gtk_widget_new() for
1314         the widget creation.
1315
1316         * gtk/gtkrange.c: added ::update_policy arg.
1317         (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
1318         a default adjustment so this function can be used for derived widgets
1319         that depend on the adjustment's existance.
1320         (gtk_range_destroy): disconnect the adjustment signal, so we don't
1321         get called after we got destroyed, we don't destroy the adjustment
1322         in here, because it might have been provided from another widget.
1323
1324         * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
1325         (gtk_viewport_destroy): same as gtk_range_destroy.
1326
1327         * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
1328
1329         * gtk/gtkwidget.h: 
1330         * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
1331         gboolean, indicating whether this widget supports activation.
1332         added gtk_widget_scroll_adjustements() to set the scrolling
1333         adjustments of a widget.
1334
1335 Wed Nov 19 01:22:42 1998  Tim Janik  <timj@gtk.org>
1336
1337         * gtk/gtkoptionmenu.c:
1338         (gtk_option_menu_remove_contents):
1339         (gtk_option_menu_update_contents): removed
1340         gtk_container_[un]block_resize() pairs.
1341
1342         * gtk/gtknotebook.h: 
1343         * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
1344         be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
1345         wrtie-only argument.
1346
1347         * *.c: made deprecated functions issue a message:
1348         gtk_clist_set_border, gtk_container_block_resize,
1349         gtk_container_unblock_resize, gtk_container_need_resize,
1350         gtk_object_class_add_user_signal, gtk_spin_button_construct,
1351         gtk_scrolled_window_construct.
1352         removed non-functional functions:
1353         gtk_container_disable_resize, gtk_container_enable_resize,
1354         gtk_clist_set_policy.
1355
1356 Wed Nov 18 22:54:36 1998  Tim Janik  <timj@gtk.org>
1357
1358         * gtk/gtkbox.c (gtk_box_init): 
1359         * gtk/gtkdrawingarea.c (gtk_drawing_area_init): 
1360         * gtk/gtkeventbox.c (gtk_event_box_init): 
1361         * gtk/gtkfixed.c (gtk_fixed_init): 
1362         * gtk/gtkframe.c (gtk_frame_init): 
1363         * gtk/gtkhandlebox.c (gtk_handle_box_init): 
1364         * gtk/gtkpacker.c (gtk_packer_init): 
1365         * gtk/gtkmisc.c (gtk_misc_init): 
1366         * gtk/gtkpreview.c (gtk_preview_init): 
1367         * gtk/gtkprogress.c (gtk_progress_init): 
1368         * gtk/gtkprogressbar.c (gtk_progress_bar_init): 
1369         * gtk/gtkseparator.c (gtk_separator_init): 
1370         * gtk/gtktable.c (gtk_table_init): 
1371         * gtk/gtkviewport.c (gtk_viewport_init): 
1372         * gtk/gtkalignment.c (gtk_alignment_init): 
1373         removed setting of the GTK_BASIC flag.
1374
1375         * gtk/gtkwidget.h:
1376         * gtk/gtkwidget.c:
1377         removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
1378
1379         * miscellaneous GtkType and macro fixups.
1380
1381 Sat Nov 21 18:53:13 1998  Owen Taylor  <otaylor@redhat.com>
1382
1383         * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin): 
1384         Fixed so it at least works with window managers other
1385         than Enlightenment, though it probably needs to be
1386         removed altogether.
1387
1388 1998-11-21  Andrew T. Veliath  <andrewtv@usa.net>
1389
1390         * gtk/gtkhandlebox.[ch]: Add shadow_type and
1391         gtk_handle_box_set_shadow_type function (plus a
1392         GtkHandleBox::shadow arg) to allow configuration of shadow in the
1393         bin window.
1394
1395 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1396
1397         * gtk/gtkcalendar.c: Fix for marking days from 
1398           Dan Reish <dreish@izzy.net>.
1399
1400 Thu Nov 19 00:15:27 1998  Lars Hamann  <lars@gtk.org>
1401
1402         * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
1403         in row_list. (from Samuel Solon <ssolon@usa.net>)
1404         
1405         * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
1406         (gtk_clist_get_column_widget): return column widget
1407
1408 Wed Nov 18 11:54:57 1998  Owen Taylor  <otaylor@redhat.com>
1409
1410         * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
1411         that are sent to a toplevel but are not within the
1412         toplevels bounds.
1413
1414         * gdk/gdkdnd.c gdk/gdk.h: Added support for a
1415         XdndProxy atom which proxies the drag to another window.
1416
1417 1998-11-17  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1418
1419         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
1420         that it is not needed.
1421
1422 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
1423         * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
1424           function to correctly determine gdk window position relative to
1425           its "root window" - contains check for an Enlightenment
1426           virtual root window.
1427         * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
1428           gdk_window_get_deskrelative_origin to get the origin of dragged
1429           handleboxes correctly. Now it works correctly with E.
1430           
1431 Tue Nov 17 1998  Tuomas Lukka <lukka@iki.fi>
1432
1433         * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
1434           getting types even though we were not using real type names,
1435           just the index.  This caused random crashes when more than 
1436           256 types were defined.
1437
1438 1998-11-17  Martin Baulig  <martin@home-of-linux.org>
1439
1440         * gtk/genmarshal.pl: Put output files in the current directory
1441         and not in the $(srcdir) since the VPATH is ignored for built
1442         sources.
1443
1444 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
1445
1446         * gtk/genmarshal.pl
1447         * gtk/Makefile.am: check for unchanged autogenerated files, so
1448         we don't rebuild everything just for adding a new function
1449
1450 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1451
1452         * gtk/gtkpixmap.h
1453           gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
1454           code thanks to GNOME stock by Eckehard Berns.  New function
1455           gtk_pixmap_set_build_insensitive to provide ability to turn 
1456           this off.
1457
1458 Tue Nov 17 00:06:29 1998  Lars Hamann  <lars@gtk.org>
1459
1460         * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
1461         new guints : tab_hborder, tab_vborder; marked tab_border deprecated
1462         (struct _GtkNotebookPage): new flags : expand, fill, pack
1463
1464         * gtk/gtknotebook.h/c
1465         (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
1466         tabs
1467         (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
1468         (gtk_notebook_set_tab_hborder): new function. set tab_hborder
1469         (gtk_notebook_set_tab_vborder): new function. set tab_vborder
1470         (gtk_notebook_query_tab_label): new function. get tab_label widget.
1471         (gtk_notebook_set_tab_label): new function. set tab_label widget.
1472         (gtk_notebook_set_tab_label_text): new function. set tab_label text.
1473         (gtk_notebook_query_menu_label): new function. get tab_label widget.
1474         (gtk_notebook_set_menu_label): new function. set tab_label widget.
1475         (gtk_notebook_set_menu_label_text): new function. set tab_label text.
1476         (gtk_notebook_set_tab_label_packing): new function. set tab_label
1477         fill, expand, fill_type
1478         (gtk_notebook_query_tab_label_packing): new function. get tab_label
1479         fill, expand, fill_type
1480
1481         (gtk_notebook_real_page_position): return logic page number
1482         (gtk_notebook_search_page) search next/prev logic page
1483         (gtk_notebook_update_labels): set logic page number.
1484         (gtk_notebook_page_compare): renamed gtk_notebook_find_page
1485         (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
1486         CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
1487         (gtk_notebook_button_press) (gtk_notebook_key_press)
1488         (gtk_notebook_focus) (gtk_notebook_pages_allocate)
1489         (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
1490         use gtk_notebook_search_page
1491         (gtk_notebook_page_allocate): fixed allocation bug
1492         (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
1493         (gtk_notebook_init): unset GTK_NO_WINDOW flag
1494         (gtk_notebook_size_request): check whether page->child is visible.
1495         changes due to tab h/vborder, homogeneous tabs
1496         (gtk_notebook_paint): don't draw invisible tabs
1497         (gtk_notebook_switch_page): calculate page_num if it's less than 0
1498         (gtk_notebook_append_*) (gtk_notebook_prepend_*)
1499         (gtk_notebook_insert_page): removed sanity checks
1500
1501         * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
1502
1503 Mon Nov 16 15:10:33 1998  Owen Taylor  <otaylor@redhat.com>
1504
1505         * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
1506         (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
1507
1508         * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was 
1509         broken. (GtkWidget's default unmap handler should work fine).
1510         Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
1511
1512 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
1513
1514         * gtk/gtkmenubar.[ch]: added shadow_type setting and
1515         gtk_menu_bar_set_shadow_type function to allow shadow
1516         configurability for menubars
1517
1518         * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
1519         guint
1520
1521 Mon Nov 16 00:17:53 1998  Tim Janik  <timj@gtk.org>
1522
1523         * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
1524         class creation and parent class' object initializer.
1525
1526 1998-11-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1527
1528         * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
1529         have assigned it to the window -- there is no point in keeping it around.
1530         (gtk_paned_unrealize): No need to destroy the cursor here.
1531
1532         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
1533         it is not needed.
1534
1535 Fri Nov 13 11:22:38 1998  Owen Taylor  <otaylor@redhat.com>
1536
1537         * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
1538         (gtk-blizzard-981005-0. 
1539          Christopher Blizzard <blizzard@applied-theory.com)
1540
1541         * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
1542         gdk_pixmap_foreign_new to gdkx.h.
1543
1544 Fri Nov 13 16:06:48 1998  Owen Taylor  <otaylor@redhat.com>
1545
1546         * gtk/Makefile.am: Added rules to generate an empty
1547         GTK+ theme called "Default" upon installation.
1548         
1549         * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
1550         of fonts and fontsets. 
1551         (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
1552
1553         * gtk/gtkmain.c: Change test to detect glibc's
1554         utf8 based mb* functions to be more specific.
1555
1556         * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation 
1557         cleanups.
1558
1559 Fri Nov 13 16:43:36 1998  Lars Hamann  <lars@gtk.org>
1560
1561         * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
1562         show event_window
1563         (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
1564         event_window if draw_indicator is set
1565         (gtk_toggle_button_set_mode):
1566
1567 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
1568
1569         * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
1570         ensure proper type (SunPro cc complains)
1571
1572         * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
1573
1574         * gtk/gtktogglebutton.c: use our own draw method so we get proper
1575         redraws on active state
1576
1577 Thu Nov 12 00:26:13 1998  Lars Hamann  <lars@gtk.org>
1578
1579         * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
1580         defines.
1581
1582         * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
1583         GTP_POS_RIGHT
1584
1585 Wed Nov 11 19:54:58 1998  Lars Hamann  <lars@gtk.org>
1586
1587         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
1588         (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
1589         added ARG_WINDOW_PLACEMENT
1590
1591         * gtk/gtkclist.c (size_allocate_columns): resize column if column
1592         button > column width and auto_resize is set
1593         (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
1594         consider column button width of auto resized columns
1595         (gtk_clist_parent_set): removed 
1596
1597         * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
1598         (auto_resize_columns): auto_resize all columns
1599         (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
1600         (column_auto_resize): respect column button width of auto resized
1601         columns
1602
1603 1998-11-10  Martin Baulig  <baulig@merkur.uni-trier.de>
1604
1605         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
1606         we can check for latest GTK features.
1607
1608 Mon Nov  9 00:39:20 1998  Lars Hamann  <lars@gtk.org>
1609
1610         * gtk/gtkenums.h : new enum GtkCornerType 
1611         * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
1612         window_placement.
1613         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement): 
1614         new method to set window_placement.
1615         (gtk_scrolled_window_viewport_allocate)
1616         (gtk_scrolled_window_size_allocate): few changes due to
1617         window_placement.
1618         * gtk/testgtk.c (remove_selection): fixed while loop.
1619
1620 Sat Nov  7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
1621
1622         * gtk/gtkclist.c: check if column[i].button is valid before calling
1623         gtk_widget_intersect on it in gtk_clist_draw
1624
1625         * gtk/gtkdnd.c: removed unused variable empty_bits
1626
1627         * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
1628
1629         * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
1630         a boolean (thanks to Elrond for noticing this)
1631
1632 1998-11-07  Jay Cox  <jaycox@earthlink.net>
1633
1634         * gtk/gtkwindow.c: forward declaration for gtk_window_paint
1635         * gdk/gdkxid.c: declare xid_ht static
1636         * examples/*/Makefile: get the link ordering right.
1637
1638 Sat Nov  7 16:31:56 1998  Stefan Jeske  <stefan@gtk.org>
1639
1640         * gtk/gtkclist.c (gtk_clist_realize): Set background of
1641         title button window to GTK_STATE_NORMAL instead of
1642         GTK_STATE_SELECTED to avoid ugly flicker.
1643
1644 Fri Nov  6 23:29:40 1998  Lars Hamann  <lars@gtk.org>
1645
1646         * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
1647         if adjustments are NULL and list size has changed
1648         (gtk_clist_size_request): return real list requsition,
1649         if adjustments are NULL.
1650         (size_allocate_columns): use button->requisition.with, if column
1651         width is not set.
1652         (list_requisition_width): new function. return full list width.
1653         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
1654         auto create adjustments.
1655         (gtk_clist_motion) (move_vertical) (move_horizontal):
1656         check adjustment != NULL.
1657
1658 Thu Nov  5 12:06:16 1998  Owen Taylor  <otaylor@redhat.com>
1659
1660         * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
1661         a clear/redraw, not just a redraw, so the focus
1662         gets undrawn properly.
1663
1664         * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize): 
1665         Chain to gtk_widget_unrealize() instead of duplicating
1666         code.
1667
1668 Wed Nov  4 14:34:51 1998  Owen Taylor  <otaylor@redhat.com>
1669
1670         * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
1671         last vestiges of old DND.
1672
1673 Tue Nov  3 12:27:52 1998  Owen Taylor  <otaylor@redhat.com>
1674
1675         * gtk/gtkentry.c: Restored inner border to entries,
1676         erase cursors to background image.
1677
1678 Fri Oct 30 12:09:21 1998  Owen Taylor  <otaylor@redhat.com>
1679
1680         * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
1681         it was identical to paint_flat_box().
1682
1683         * gtk/gtkstyle.c: Coding style fixups.
1684
1685         * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
1686         test.
1687
1688         * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c: 
1689         Change 'side' for paint_[box/shadow]_gap and paint_extension
1690         to be GtkPositionType instead of a random int.
1691
1692         * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use 
1693         "frame" as detail - an aspectframe should draw identical
1694         to a frame.
1695
1696 Tue Oct 27 09:58:11 1998  Owen Taylor  <otaylor@redhat.com>
1697
1698         * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
1699         from combine_child_shapes().
1700
1701         * gdk/gdkwindow.c: Merge propagate_shapes() and
1702         propagate_combine_shapes() to remove code duplication.
1703
1704 Thu Nov  5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
1705
1706         * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
1707         gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
1708         So allocate some mem if it's not already done.
1709
1710         * clist scrollbar merges from HEAD
1711
1712 Tue Nov  3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
1713
1714         * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
1715
1716         * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
1717         of 0x80000000, so we stay within the bounds of a postive signed
1718         int (it broke some compilers)
1719
1720         * gtk/gtkmenushell.c
1721         * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
1722         when some of the menuitems are hidden
1723
1724         * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
1725         care of that
1726
1727         * gtk/gtkwidget.c: add a dummy continue after the line label
1728         next_rect, since some compilers don't like label: }
1729
1730 Sun Nov  1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
1731
1732         * Okay, so we need the X11R6 keysyms so programs don't have to
1733         worry about them. They don't conflict anyway. Reverted the #ifdef
1734         changes to gtk/*.c
1735
1736         * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
1737         special rule for them (X-derived-headers)
1738
1739 Sun Nov  1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
1740
1741         * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
1742         and gdkkeysyms.h into sed scripts, since the awk scripts weren't
1743         portable, and we really shouldn't be using awk anyway.
1744
1745         * makecursors.awk
1746         * makekeysyms.awk: bye bye
1747
1748         * gtk/gtkaccelgroup.c
1749         * gtk/gtkclist.c
1750         * gtk/gtknotebook.c
1751         * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
1752
1753 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
1754
1755         * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
1756         and gdkkeysyms.h. Remove those files from CVS.
1757
1758 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
1759
1760         * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
1761         of the USE_XIM #ifdef
1762
1763         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1764         even with --include-deps. Slightly different from timj's fix, to avoid
1765         circular dependency with gtkmarshal.c
1766
1767         * autogen.sh
1768         * gtk/gtkclist.[ch]
1769         * gtk/gtkctree.c
1770         * gtk/gtkfontsel.[ch]
1771         * gtk/gtklist.c
1772         * gtk/gtklistitem.c
1773         * gtk/gtkobject.[ch]
1774         * gtk/testgtk.c: merges from HEAD
1775
1776         * gtk/gtkmenubar.c
1777         * gtk/gtkradiomenuitem.c
1778         * gtk/gtktreeitem.c: cleanups
1779
1780 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
1781
1782         * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
1783
1784 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
1785
1786         * configure.in: AIX has libpthreads, to make sure you can have
1787         more than one thread. Also add -D_THREAD_SAFE, and reorder
1788         configure.in so CFLAGS doesn't get clobbered when we actually
1789         want to modify it
1790
1791         * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
1792         in gdk_image_get
1793
1794         * gtk/testdnd.c: removed unused variable "buf"
1795
1796 Mon Oct 26 16:46:15 1998  Owen Taylor  <otaylor@redhat.com>
1797
1798         * gtk/gtkcontainer.c (gtk_container_unregister_toplevel): 
1799         remove_link(), not remove()
1800
1801 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
1802
1803         * gdk/gdkrgb.c: use glib endian stuff
1804
1805         * configure.in: don't need to check for endianness anymore
1806
1807         * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
1808
1809 Wed Oct 21 17:44:27 1998  Owen Taylor  <otaylor@redhat.com>
1810
1811         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
1812         all toplevel widgets, not toplevel windows. (I.e.,
1813         plugs should be reset)
1814
1815         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
1816         _do_ need to notify the other toplevels - by the time
1817         the get the client messages, the RC file dates will
1818         have been updated.
1819
1820         * gtk/gtkcontainer.h: Added a function call to list
1821         every toplevel widget.
1822
1823         * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse): 
1824         Don't send client messages to _every_ window on display!
1825         
1826 Tue Oct 20 16:21:04 1998  Owen Taylor  <otaylor@redhat.com>
1827
1828         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags 
1829         when dragging across widgets, only in drags
1830         starting in widget.
1831
1832 Tue Oct 20 15:59:49 1998  Owen Taylor  <otaylor@redhat.com>
1833
1834         * gtk/gtkdnd.c (gtk_drag_source_info_destroy): 
1835         Emit "drag_end" signal at end of drag.
1836
1837 Tue Oct 20 13:07:54 1998  Owen Taylor  <otaylor@redhat.com>
1838
1839         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
1840         for "gtk-embedded" data currently set by 
1841         GtkSocket, and use that to forward client message
1842         on to embedded windows. Only reset our own toplevel -
1843         the others will handle themselves. (Now that
1844         GtkMenus live in GtkWindows)
1845
1846 Mon Oct 19 16:40:40 1998  Owen Taylor  <otaylor@redhat.com>
1847
1848         * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
1849         client window finding code so that it works with
1850         WM's other than fvwm.
1851  
1852 Sun Oct 18 22:48:27 1998  Owen Taylor  <otaylor@redhat.com>
1853
1854         * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
1855         the "GtkDrawWindow" class, which is a descendent
1856         of the Window class which leaves its background alone.
1857         Essentially, a toplevel drawing area, though it does
1858         allow adding a child.
1859
1860 Sat Oct 17 00:40:51 1998  Owen Taylor  <otaylor@redhat.com>
1861
1862         * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
1863         merging RC styles. Report new share/themes path for
1864         themes directory. Deref theme engines when appropriate.
1865
1866         * gtk/gtkclist.c: Set all backgrounds in _style_set().
1867         Make sure that pixel for xor_gc is never 0.
1868
1869         * gtk/gtkctree.c: Choose colors for plus/minus more
1870         carefully, in a hopefully style-independent fashion.
1871         (Still needs a bit more work)
1872
1873         * gtk/gtkwidget.c: Don't send expose events to widgets
1874         which are about to be resized and redrawn. (Needs a
1875         bit more thought.)
1876
1877         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
1878         drawing on tabs for newly allocated, un-sized
1879         pages - we'll get the size wrong.
1880
1881 Thu Oct  1 17:38:07 1998  Owen Taylor  <otaylor@redhat.com>
1882
1883         * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
1884         up stupidities in last commit.
1885
1886 Thu Oct  1 14:25:43 1998  Owen Taylor  <otaylor@redhat.com>
1887
1888         * gtk/gtkwidget.c: When handling queued resizes, account
1889         for handleboxes, where the widget heirarchy is different
1890         than the window heirarchy by just queueing a resize on
1891         the entire handlebox if the detached child is changed.
1892
1893         - Remove widgets from the redraw queue when reparenting,
1894         even if not unrealizing. We queue a resize/redraw in
1895         any case.
1896
1897 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
1898         * gtk/gtkstyle.c: added check to see if the widget has been shaped
1899         byt the app via gtk_widget_shape_combine_mask and if it has does
1900         not reset the shape on theme change.
1901         
1902 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
1903
1904         * gtk/gtkfilesel.c: Keep a list of directories in which we never
1905         want to stat the entries (like /afs), and assume everything in
1906         those directories is a subdirectory.
1907
1908         - When following a path, try to open components even when
1909         we don't find them in their parent's directory to
1910         support automounters.
1911
1912 Fri Sep 11 15:36:33 1998  Owen Taylor  <otaylor@redhat.com>
1913
1914         * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
1915         now at least compiles again.
1916
1917         * gdk/gdk.c (gdk_event_translate): Don't pass events
1918         on destroyed widgets to the gdk_input layer.
1919
1920 Thu Sep  3 19:45:34 1998  Owen Taylor  <otaylor@redhat.com>
1921
1922         * gtk/gtkthemes.c: Use g_module instead of dlopen()
1923
1924 Thu Sep  3 19:30:11 1998  Owen Taylor  <otaylor@redhat.com>
1925
1926         * gtk/gtktooltips.c (gtk_tooltips_expose): Check
1927         if we've changed widgets since the expose event
1928         was queued.
1929
1930 Mon Aug 31 15:33:13 1998  Owen Taylor  <otaylor@redhat.com>
1931
1932         * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
1933         to restore approximate bin compatibility with the
1934         non-themes branch. (This does break bin compat
1935         within the themes branch.)
1936
1937 Sun Aug 30 16:48:27 1998  Owen Taylor  <otaylor@gtk.org>
1938
1939         * gtk/gtklabel.c (gtk_label_set): Eliminate a 
1940         gdk_window_clear_area() that snuck in with the
1941         menu underlines merge.
1942
1943 Mon Aug 24 23:37:26 1998  Owen Taylor  <otaylor@redhat.com>
1944
1945         * gtk/gtktext.c: Fixed some remaining background drawing,
1946           merges from main branch, cleanups.
1947
1948 Mon Aug 24 10:55:51 1998  Owen Taylor  <otaylor@redhat.com>
1949
1950         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
1951           dereference NULL focus tab.
1952
1953         * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
1954           functions since we need to both show/hide and 
1955           queue a redraw. (There's some duplication of drawing here, 
1956           we probably should only be queuing a redraw on the
1957           "value" portion of the scale.)
1958
1959 Fri Aug 21 19:02:30 1998  Owen Taylor  <otaylor@redhat.com>
1960
1961         * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
1962           into the theme-drawing framework. We do this by making them,
1963           like check/radio-buttons, no-window widgets with subwindows. We
1964           then move the value by calling gtk_widget_queue_clear() and only
1965           redraw the value in our draw() / expose() handler.  A virtual
1966           function clear_background is added which queues a clear on the
1967           "background" portion of the widget.
1968
1969 Fri Aug 21 13:04:27 1998  Owen Taylor  <otaylor@redhat.com>
1970
1971         * gtk/gtktext.c (mark_bg_gc): Make background colors work
1972           again. (We can't always paint the background with a
1973           paint() function - only do that for selected text)
1974
1975 Mon Aug 17 20:31:01 1998  Owen Taylor  <otaylor@redhat.com>
1976
1977         * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
1978           gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
1979
1980         * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
1981           the themes can't be built as part of the same build since
1982           they depend on gdk_imlib.
1983
1984 Fri Aug 14 12:44:30 1998  Owen Taylor  <otaylor@redhat.com>
1985
1986         * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
1987           from gtkthemes.c.
1988                 
1989         * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
1990           gtk/
1991
1992           - Upgrade to libtool-1.2b + patch to add shared library dependencies
1993             for Linux. (Needs to be extended to other platforms where they
1994             are safe)
1995
1996          - Check for -ldl so this branch should build on all platforms, though
1997            themes will work on all platforms they could work on.
1998
1999          - Use -version and -release simultaneously: sonames stay as they are
2000            in the current scheme, but -lgtk-1.1 changes to -lgtk.
2001
2002          - Added in extra -l flags to library LDFLAGS so we get shared library
2003            dependencies against X libs and -ldl. (But not libgtk against 
2004            libgdk or libglib yet, since dependencies against uninstalled
2005            libraries aren't portable)
2006
2007 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
2008         * gtkrc.c - added api calls to find module and theme paths from gtk.
2009           nuked gtk_install_prefix global.
2010         
2011 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
2012         * fixed gtk_install_prefix global.
2013           
2014 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
2015         * added gtk_install_prefix global const variabel to find where gtk is
2016           installed.
2017           
2018 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
2019         * added ~/.gtk/lib/themes/engines/ to the default searchpath for
2020           gtk theme engines
2021         
2022 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
2023         * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
2024
2025 Mon Aug 10 23:03:55 1998  The Rasterman <raster@redhat.com>
2026         * Fixed minor problem in gtkhandlebox.c with drawing, and some
2027           notebook stuff. Also pixmap theme is now "clean" again.
2028           
2029 Mon Aug 10 23:03:55 1998  Owen Taylor  <otaylor@redhat.com>
2030         * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up 
2031           queued area resizing once more.
2032
2033 Mon Aug 10 23:09:30 EDT 1998
2034         * Added a few drawing fixes for notebook and other widgets. finished
2035           pixmap theme up to the level that can be supported so far. (need to
2036           add path discovery 9ie where is the rc fiel from - add to pixmap 
2037           path so we can get theimages from there too). then we can package 
2038           themes. After that need to add to theme seartch path stuff in users 
2039           home dir.
2040           
2041 Thu Aug  6 16:49:25 1998  Owen Taylor  <otaylor@redhat.com>
2042
2043         * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
2044           drawing area, draw in an expose handler.
2045
2046         * gtk/gtknotebook.c (gtk_notebook_expose): Check for
2047           empty current page.
2048
2049 Wed Aug  5 16:13:15 1998  Owen Taylor  <otaylor@redhat.com>
2050
2051         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
2052           creation of GC's so that they will be set before
2053           they are used for map events (why are they used there?)
2054
2055         * gtk/gtkwidget.c: Fixed mistake that caused widgets to
2056           be queued in multiple times in the queue.
2057
2058 Wed Aug  5 14:23:52 1998  Owen Taylor  <otaylor@redhat.com>
2059
2060         * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
2061           clip rects (or do anything) for shadow_none.
2062
2063 Wed Aug  5 13:14:57 1998  Owen Taylor  <otaylor@redhat.com>
2064
2065         * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
2066           Yes, it was needed. draw() and expose() are _not_
2067           identical.
2068
2069 Sat Aug  1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
2070         * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
2071
2072 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
2073         * YES YES YES YES YES clist borders work again! YES! YES YES! gimme 
2074           more baby oooh yeah more more MORE YES YES.
2075
2076 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
2077         * hopefully fixed problem wiht togglebuttons acting like
2078           radiobuttons in gtktogglebutton.c
2079
2080 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
2081         * fixed another drawing buglet in the frame drawing code (actually
2082           in the clearing code but anyway in gtkstyle.c)
2083
2084 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
2085         * Fixed warning from colorsel widget...
2086
2087 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
2088         * Fixed defautl drawing code to no longer clobber the original style
2089           pixmap bgs as it did and added a helper funciton og gtkstyle.c to
2090           help with this.
2091
2092 Thu Jul 30 18:09:21 1998  Owen Taylor  <otaylor@redhat.com>
2093
2094         * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
2095
2096         * gtk/gtktooltips.c: Pass a widget (the window) to the
2097           drawing function instead of the GtkTooltips.
2098
2099 Thu Jul 30 17:27:10 1998  Owen Taylor  <otaylor@redhat.com>
2100
2101         * gdk/gdkwindow.c: Abstract out checking for shape
2102           extension into a function.
2103
2104         * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
2105           Remove extra callls to gtk_window_draw().
2106
2107 Thu Jul 30 11:18:43 1998  Owen Taylor  <otaylor@redhat.com>
2108
2109         * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
2110
2111         * themes/th_main.c: Moved messages around so they are
2112           printed before destroying strings.
2113
2114 Wed Jul 29 16:56:07 1998  Owen Taylor  <otaylor@redhat.com>
2115
2116         * gdk/gdk.c: Fairly simple implementation of expose compression.
2117           (No GraphicsExpose compression yet, always compress
2118           with the equivalent of XtCompressMultiple - no compression
2119           of Expose events across non-Expose events)
2120         
2121         * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
2122           Find rectangle bounding two rectangles.
2123
2124         * gtk/gtkstyle.c: Set clip rects for a few extra GC's
2125           in gdk_default_draw_shadow()
2126         
2127 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
2128         * Fixed drawing functions to handle switching themes on the fly 
2129           gracefully and look decent.
2130           
2131 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
2132         * Added all the theme drawing code to all widgets, fixed up minor
2133           nigglies in some widgets when it comes to themes, seem to be
2134           running into some funky behavior with clipping rects in GC's. Too
2135           many files to list here. (all files that now use gtk_paint_* are
2136           affected).
2137
2138 Tue Jul 28 22:49:16 1998  Owen Taylor  <otaylor@redhat.com>
2139
2140         * themes/th_main.c themes/th_draw.c gtk/testgtkrc: 
2141           Set up the demo theme so it is loaded from the RC file.
2142
2143         * themes/th_draw.c: Alleviate the hardcoded paths a wee
2144           bit. (use $HOME/themes/)
2145
2146         * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in 
2147           the RC file via dlopen()
2148
2149 Tue Jul 28 20:30:56 1998  Owen Taylor  <otaylor@redhat.com>
2150
2151         Internal handling of styles and RC styles pretty much
2152         completely reworked for Theme work.
2153
2154         * gtkthemes.[ch]: 
2155          - Added routines for virtualization of RcStyle and Style handling.
2156          - Temporary "sample" inline theme-engine. (Does nothing
2157            but print out a few messages.
2158         
2159         * gtkrc.[ch]
2160          - Made GtkRcStyle public, added flags to tell if particular
2161            colors have been set.
2162          - RC Styles are "transparent", and the final style for
2163            a widget is the composition of all matching styles
2164          - Added pointer to GtkThemeEngine, and gpointer engine_data
2165            to RC style and style.
2166          - Parse "engine" keyword, load the appropriate theme engine
2167            and call the engine's parser.
2168         
2169         *  gtkstyle.[ch]
2170          - Keep a GtkRcStyle * in styles created from Rc Styles.
2171          - Load up images from RC file at style attachment time.
2172          - Call ->engine->foo() at appropriate times.
2173          - Don't use a GCache. All incarnations for a style are
2174            just linked together in a list, depend on the RC style 
2175            code to find the existing copy.
2176
2177 Tue Jul 28 14:41:54 1998  Owen Taylor  <otaylor@redhat.com>
2178
2179         * gtk/gtkwidget.[ch]: Added the concept of queued redraws
2180           of partial areas. This can be done either relative
2181           to the existing windows (gtk_widget_queue_clear[_area]())
2182           or relative to the future allocation of the widget
2183           (gtk_widget_queue_draw[_area]). 
2184
2185           The initial implementation is pretty braindead, but
2186           can be improved.
2187
2188         * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
2189           in favor of gtk_widget_queue_clear().
2190         
2191         * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
2192           flags in favor of gtk_widget_queue_clear()
2193         
2194 Tue Aug  4 19:12:14 1998  Owen Taylor  <otaylor@redhat.com>
2195
2196         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
2197           handling of partially clipped areas.
2198
2199 Thu Nov  5 18:52:35 1998  Lars Hamann  <lars@gtk.org>
2200
2201         * gtk/gtkclist.h (struct _GtkCListClass)
2202         * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
2203
2204 Thu Nov  5 16:00:32 1998  Lars Hamann  <lars@gtk.org>
2205
2206         * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
2207         vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
2208
2209         * gtk/gtkclist.c (gtk_clist_class_init): added new args types
2210         "hadjustment" & "vadjustment"
2211          (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
2212         set/get_arg functions
2213         (gtk_clist_construct): don't create/adjust scrollbars.
2214         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
2215         to set h/vadjustments
2216         (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
2217         to query h/vadjustments
2218         (create_scrollbars): removed.
2219         (create_adjustments): replacement for create_scrollbars
2220         (gtk_clist_new): call gtk_clist_new_with_titles
2221         (gtk_clist_new_with_titles): don't warn on titles == NULL
2222         (move_horizontal): use CLAMP instead
2223         (gtk_clist_set_policy): deprecated method.
2224         use gtk_scrolled_window_set_policy instead.
2225         (vadjustment_value_changed): use clist->vadj.
2226         (adjust_scrollbars): renamed to adjust_adjustments
2227         (adjust_adjustments): former adjust_scrollbars
2228         (gtk_clist_destroy): unref adjustments
2229         (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
2230         (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
2231         (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
2232         (gtk_clist_thaw) (real_insert_row) (real_remove_row)
2233         (gtk_clist_set_row_height) (real_resize_column):
2234         call adjust_adjustments
2235         (gtk_clist_moveto): return if clist has no adjustments yet.
2236         (gtk_clist_parent_set): new GtkWidget::parent_set function.
2237         Autogenerate h/vadjustments if needed.  
2238         (move_horizontal) (move_vertical): some cleanups
2239
2240         * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
2241         call only gtk_viewport_set_h/vadjustment and let these functions
2242         do the work.
2243         (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
2244         generate a new adjustment if needed
2245
2246         * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
2247         use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
2248         
2249         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
2250         queue_resize if visibility of scrollbars changes
2251         (gtk_scrolled_window_remove): only call container_remove with
2252         scrolled_window->viewport automatically if viewport was autogenerated
2253         (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
2254         auto create a viewport only if widget does not take h/vadjustments.
2255         (gtk_scrolled_window_construct): don't generate a viewport
2256         automatically.
2257         (gtk_scrolled_window_forall): call callback with viewport in any case
2258         (gtk_scrolled_window_set_arg): call gtk_container_add in case of
2259         ARG_VIEWPORT
2260         (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
2261         (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
2262         viewport != NULL
2263
2264         * gtk/testgtk.c 
2265         (create_ctree) (export_ctree) (create_clist): use a scrolled_window
2266         in conjunction with clists/ctrees
2267
2268         * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
2269         in conjunction with clists
2270
2271         * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
2272         in conjunction with clists
2273
2274 Wed Nov  4 21:52:57 1998  Lars Hamann  <lars@gtk.org>
2275
2276         * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
2277         (gtk_ctree_remove_node): select focus_row if needed
2278         (cell_size_request): only get pixmap size if pixmap != NULL
2279
2280 Wed Nov  4 04:30:37 1998  Tim Janik  <timj@gtk.org>
2281
2282         * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
2283         GTK_IS_WIDGET (widget):
2284
2285 Wed Nov  4 02:02:07 1998  Lars Hamann  <lars@gtk.org>
2286
2287         * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
2288         focus_row after a remove_row call.
2289
2290 Sun Nov  1 21:00:06 GMT 1998  Austin Donnelly  <austin@greenend.org.uk>
2291
2292         * gtk/gtkoptionmenu.c
2293         * gtk/gtkmenushell.c: make option menus work when some of the
2294         menuitems are hidden - previously, option menu would popup too
2295         high.
2296
2297 1998-10-31  Raja R Harinath  <harinath@cs.umn.edu>
2298
2299         * gtk/gtkfeatures.h.in: Remove `#pragma }'.
2300
2301         * gdk/gdki18n.h: Update to use new `glib' widechar defines.
2302
2303         * configure.in (CFLAGS): Don't use test -z "echo .. | grep".  Use
2304         case instead.
2305         (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
2306         (GDK_WLIBS): New variable.  Lists extra libraries needed to use
2307         widechar functions.
2308         * gtk-config.in (--libs): List $GDK_WLIBS, too.
2309
2310 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2311
2312         * Released GTK+ 1.1.3
2313         
2314         * INSTALL:
2315         * NEWS:
2316         * README:
2317         * gtk+.spec:
2318         * docs/gtk-config.1: updated for v1.1.3
2319
2320         * Makefile.am
2321         * sanity_check
2322         * docs/Makefile.am: Includes new 'make release' as well as
2323           'make sanity'.  Also handles html and text creation from html,
2324           and puts them into the distribution
2325
2326         * docs/Makefile.sgml: removed, similar functionality is now in 
2327           the Makefile.am file
2328
2329         * docs/.cvsignore: ignore html and text directories
2330         * docs/glib.texi: removed (now in glib dist)
2331
2332 Fri Oct 30 20:02:36 1998  Lars Hamann  <lars@gtk.org>
2333
2334         * gtk/gtklist.c (gtk_list_remove_items_internal): 
2335         free undo_un/selection, unselect list_item before disconnect
2336         signal functions
2337         (gtk_list_destroy): removed. gtk_list_shutdown clears the list
2338         already
2339         (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
2340         (gtk_list_signal_item_toggle)   (gtk_list_signal_scroll_horizontal)
2341         (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
2342         (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
2343         (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
2344         (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
2345         (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
2346         new functions. These functions are signal connected to inserted
2347         list_items, to handle key bindings and GtkItem::de/select/toggle
2348         signals.
2349
2350         * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
2351         gtk_object_class_add_signals call.
2352         (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
2353         (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
2354         (gtk_list_item_start_selection) (gtk_list_item_end_selection)
2355         (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
2356         (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
2357         removed. These functions are handled via connected
2358         gtk_list_signal_* functions now
2359
2360 Fri Oct 30 05:24:43 1998  Tim Janik  <timj@gtk.org>
2361
2362         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
2363         even with --include-deps:
2364         $(libgtk_la_SOURCES): $(BUILT_SOURCES)
2365
2366 Fri Oct 30 01:56:08 1998  Tim Janik  <timj@gtk.org>
2367
2368         * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
2369         gtk_object_data_set_destroy to fit the gtkobject.h API.
2370
2371         * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
2372         * gtk/gtkfontsel.h:
2373         * gtk/gtkfontsel.c:
2374         Added support for an extra 'base' filter which an application can
2375         set to restrict the fonts available to the user (e.g. a terminal
2376         program only wants the user to be able to select fixed-width fonts).
2377         The type of font (bitmap/scalable/scaled bitmap) is now
2378         also a part of the filter, so that an application can
2379         request that only scalable fonts are shown.
2380         There are new functions to set the base & user filters.
2381         I've also stopped the up/down key press signals getting
2382         to the clists since the font selection widget handles
2383         them itself. It acted a bit strangely before.
2384
2385 Sun Oct 25 20:27:02 1998  Tim Janik  <timj@gtk.org>
2386
2387         * gtk/gtkmain.c (gtk_init): support an environment variable
2388         GTK_MODULES= which takes a colon sperated list of module names
2389         automatically loaded at gtk_init() startup.
2390
2391 Sun Oct 25 08:04:33 1998  Tim Janik  <timj@gtk.org>
2392
2393         * gtk/gtkwidget.c: added more g_return_if_fail() statements.
2394
2395 Thu Oct 22 22:40:35 1998  Lars Hamann  <lars@gtk.org>
2396
2397         * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
2398         is sufficient
2399
2400 Thu Oct 22 16:22:55 1998  Lars Hamann  <lars@gtk.org>
2401
2402         * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
2403         columns
2404
2405 Thu Oct 22 02:29:53 1998  Tim Janik  <timj@gtk.org>
2406
2407         * gtk/gtkfilesel.h: GtkType and macro fixups
2408         * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
2409         for the file selection widget to try a completion on (set the
2410         initial filter).
2411
2412 Wed Oct 14 14:34:04 1998  Tim Janik  <timj@gtk.org>
2413
2414         * gtk/gtkmain.c: implement idle functions via GHook. this gives a
2415         slight speed improvement and lessens code duplication.
2416
2417 Tue Oct 20 14:53:28 1998  Owen Taylor  <otaylor@redhat.com>
2418
2419         * gtk/gtkdnd.c: Always send "drag_leave" to dests
2420         without GTK_DEST_DEFAULT_MOTION. 
2421
2422 Tue Oct 20 11:55:24 1998  Owen Taylor  <otaylor@redhat.com>
2423
2424         * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
2425         on destroyed windows so we clear the XID table properly.
2426         Finish up restructure of return value handling that
2427         was half-done before.
2428
2429 Tue Oct 20 12:57:10 1998  Owen Taylor  <otaylor@redhat.com>
2430
2431         * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
2432         the window tree more comprehensively, so that we find
2433         client windows hidden under non-toplevels.
2434
2435 Tue Oct 20 12:43:04 1998  Owen Taylor  <otaylor@redhat.com>
2436
2437         * gtk/gtkselection.c (gtk_selection_data_set): 
2438         Maintain the null-termintation guarantee, even when 
2439         data = NULL, length = 0. (Warn on data = NULL, 
2440         length > 0)
2441
2442 Mon Oct 19 16:41:44 1998  Owen Taylor  <otaylor@redhat.com>
2443
2444         * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
2445         into function prototype for drag_data_received. 
2446
2447 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
2448
2449         * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
2450
2451 Mon Oct 19 23:44:41 1998  Lars Hamann  <lars@gtk.org>
2452
2453         * gtk/gtkclist.c: rearranged some functions
2454         (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
2455         flag of column
2456         (gtk_clist_set_column_resizeable): if resizeable disable auto_resize 
2457         (gtk_clist_set_border): deprecated function, use
2458         gtk_clist_set_shadow_type instead.
2459         (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
2460         (adjust_scrollbars): some cleanups
2461         (select_row) (unselect_row): removed. replaced by equivalent
2462         gtk_signal_emit calls
2463         (add_style_data): removed, use gtk_clist_style_set instead
2464         (gtk_clist_style_set): fill in size data, after style was set. 
2465         (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
2466         (gtk_clist_set_cell_style): auto_resize columns if needed
2467         (column_auto_resize): resize column if needed for auto_resize 
2468         (real_clear): disable auto_resize while list destroy
2469         (resize_column): removed
2470
2471         * gtk/gtkctree.c : (gtk_ctree_remove_node)
2472         (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
2473         (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
2474         (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
2475         (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
2476         (real_tree_collapse) (real_tree_expand) (column_auto_resize):
2477         auto_resize columns if needed
2478         (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
2479         (real_clear): disable auto_resize while processing the tree
2480
2481         * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
2482         for one column
2483
2484 Mon Oct 19 08:31:36 1998  Owen Taylor  <otaylor@redhat.com>
2485
2486         * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
2487         typo - look for right atom on transfer failures.
2488
2489 Sun Oct 18 20:52:22 1998  Owen Taylor  <otaylor@gtk.org>
2490
2491         * gtk/gtkwidget.c gtkmarshal.list: Change signal 
2492         for drag_data_get to match the use that was being
2493         made of it everywhere else...
2494
2495 Sun Oct 18 18:16:39 1998  Owen Taylor  <otaylor@gtk.org>
2496
2497         * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
2498         mechanism, that is used for the DND messages.
2499
2500           Removed all the old DND code.
2501
2502         * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
2503         get the visual of a given colormap.
2504         
2505         * gtk/gtkcolorsel.c: Conversion to new DND, drag 
2506         a color-swatch.
2507
2508         * gdk/gdk.h gdk/gdkdnd.c: The low-level
2509         X oriented portions of drag and drop protocols.
2510         Sending and receiving client messages, and navigating
2511         window trees.
2512
2513         * gdk/gdkimage.c: added a gdk_flush() when destroying
2514         SHM images to hopefully make it more likely that
2515         X will gracefully handle the segment being destroyed.
2516
2517         * gdk/gdkprivate.h gtk/gtkdebug.h: Add new 
2518         DND debugging flags.
2519
2520         * gtk/gtkeditable.[ch]: Updates for the selection handling
2521         changes.
2522         
2523         * gtk/gtkselection.[ch]: Added GtkTargetList, a 
2524         refcounted data structure for keeping track of lists
2525         of GdkAtom + information. Removed selection_handler_add
2526         in favor of a "drag_data_get" signal.
2527
2528         * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
2529         dependent) parts of the DND protocols, display of drag icons,
2530         drag-under highlighting, and the "default handlers".
2531
2532         * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
2533         windows that are used for reliable pointer grabs and
2534         selection handling in the DND code.
2535
2536         * gtk/testdnd.c: New test program for new DND. (Old
2537         DND tests in testgtk still need to be converted.)
2538
2539         * gtk/testselection.c: Use the new selection API.
2540         
2541         * docs/dnd_internals: Start at describing how
2542         all the new code works inside.
2543
2544         * docs/Changes-1.2.txt: New file describing source-incompatible
2545         changes in GTK+-1.2.
2546
2547 Sat Oct 17 22:50:34 1998  Owen Taylor  <otaylor@gtk.org>
2548
2549         * gdk/gdkwindow.c (gdk_window_remove_filter): Free
2550         the right list node.
2551
2552         * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
2553         to the XID table so we can receive events on it.
2554
2555 Wed Oct 14 12:57:40 1998  Owen Taylor  <otaylor@redhat.com>
2556
2557         * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
2558         to get the timestamp from a generic event.
2559
2560 Fri Oct  9 13:16:04 1998  Owen Taylor  <otaylor@redhat.com>
2561
2562         * gtk/gtkwidget.c (gtk_widget_add_events): Added function
2563         that safely adds additional events to a widget's event 
2564         mask, even if the widget has previously been realized.
2565         (We can do this, but not remove events from the event
2566          mask).
2567
2568 Fri Oct  2 17:35:35 1998  Owen Taylor  <otaylor@redhat.com>
2569
2570         * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
2571         for AnyPropertyType.
2572
2573 Fri Oct  2 10:32:21 1998  Owen Taylor  <otaylor@redhat.com>
2574
2575         * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
2576         hashing.
2577
2578 Thu Sep 24 20:33:54 1998  Owen Taylor  <otaylor@redhat.com>
2579
2580         * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
2581         isn't a timestamp.
2582
2583 Thu Sep 17 14:23:03 1998  Owen Taylor  <otaylor@redhat.com>
2584
2585         * gdk/gdk.c (gdk_event_translate): Removed printing
2586         of unknown window lookup warnings. (Made it
2587         a GDK_NOTE) - they happen in many circumstances.
2588
2589 Tue Sep  8 12:38:43 1998  Owen Taylor  <otaylor@redhat.com>
2590
2591         * Call XFilterEvent() on events we get for unknown
2592         windows, since it may be the window Xlib uses to
2593         communicate with the IM. 
2594         (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
2595
2596 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
2597
2598         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2599         the adjustment.
2600
2601 Thu Aug 27 12:03:14 1998  Owen Taylor  <otaylor@redhat.com>
2602
2603         * gtk/gtksignal.c (gtk_signal_newv): Improve warning
2604         message for return_value + GTK_RUN_FIRST.
2605
2606 1998-10-18  Martin Baulig  <martin@home-of-linux.org>
2607
2608         * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
2609         line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
2610
2611 Fri Oct 16 15:59:02 1998  Lars Hamann  <lars@gtk.org>
2612
2613         * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
2614         styles of inserted row
2615         (change_style): change style of focus_row
2616
2617         * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
2618         (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
2619         to set/get row/cell styles.
2620         (gtk_clist_realize): attach row and cell style, allocate row colors.
2621         (gtk_clist_unrealize): detach row and cell styles.
2622         (get_cell_style): new function. get correct cell style.
2623         (draw_cell_pixmap): new function. 
2624         (draw_row): draw cells with row or cell styles.
2625         (row_new): set cell and row styles to NULL.
2626         (row_delete): detach & unref cell and row styles.
2627
2628         * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles): 
2629         new functions to attach/detach styles and allocate colors.
2630         (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
2631         styles of invisible nodes.
2632         (draw_cell_pixmap): new function. 
2633         (get_cell_style):  new function. get correct cell style.
2634         (gtk_ctree_draw_expander): new function. draw tree expander.
2635         (gtk_ctree_draw_lines): new function.draw tree lines.
2636         (draw_row): draw cells with row or cell styles.
2637         (row_new): set cell and row styles to NULL.
2638         (row_delete): detach & unref cell and row styles.
2639         (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style) 
2640         (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style): 
2641         Analogons of GtkCList functions 
2642         (gtk_ctree_set_spacing): new function. set spacing between
2643         tree expander and cell contents
2644         (gtk_ctree_set_expander_style): new function. set expander style
2645         of ctree.
2646         (ctree_is_hot_spot): few changes due to draw_row modifications.
2647
2648 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
2649
2650         * gtk/gtkcombo.c: try completion on MOD1-TAB.
2651         Handle case when the combo->list is empty.
2652
2653 Mon Oct 12 07:51:34 1998  Tim Janik  <timj@gtk.org>
2654
2655         * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
2656         handlers that have not yet been disconnected (finally managed to
2657         trigger the gtk_signal_handler_unref() paranoid warning).
2658
2659 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
2660
2661         * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
2662         width and height which is -1 and not -2.
2663
2664 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
2665
2666         * HACKING
2667         * autogen.sh: we need libtool 1.2b now
2668
2669 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
2670
2671         * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
2672         and bottom attach arguments as mandatory and readjust the table size
2673         and opposing edge accordingly if required. this way the order in which
2674         the arguments are set doesn't matter.
2675
2676 Thu Oct  8 15:53:59 1998  Owen Taylor  <otaylor@redhat.com>
2677
2678         * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
2679         message to print out parent class name correctly.
2680
2681 Thu Oct  8 07:07:10 1998  Tim Janik  <timj@gtk.org>
2682
2683         * gtk/gtkobject.h: 
2684         * gtk/gtkobject.c:
2685         removed functions gtk_object_set_data_destroy and
2686         gtk_object_set_data_destroy_by_id.
2687         added functions gtk_object_remove_no_notify and
2688         gtk_object_remove_no_notify_by_id which will remove a certain data
2689         portion without invokation of its destroy notifier, this should only
2690         be used in very controled circumstances.
2691
2692 Wed Oct  7 23:59:37 1998  Lars Hamann  <lars@gtk.org>
2693
2694         * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
2695         size_allocate_title_buttons call
2696         (gtk_clist_realize): changed initial column.window position
2697
2698 Wed Oct  7 20:27:28 1998  Lars Hamann  <lars@gtk.org>
2699
2700         * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
2701         xor_gc instead
2702         * gtk/gtkctree.c (create_xor_gc): removed
2703         (gtk_ctree_button_press): set correct line_attributes for
2704         clist->xor_gc on drag start
2705         (gtk_ctree_button_release): reset clist->xor_gc
2706
2707 Wed Oct  7 05:15:36 1998  Tim Janik  <timj@gtk.org>
2708
2709         * gtk/gtk*.h:
2710         * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
2711         which were in place to fixup emacs' cc-mode indentation.
2712         putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
2713         proper way to achive this and doesn't produce problems for
2714         stupid pragma-related compiler bugs. ;)
2715
2716 Wed Oct  7 00:59:46 1998  Lars Hamann  <lars@gtk.org>
2717
2718         * gtk/gtkclist.h: new signal GtkCList::resize_column.
2719         * gtk/gtkclist.c (draw_row): don't draw invisible columns
2720         (size_allocate_title_buttons) (size_allocate_columns):
2721         skip invisible columns
2722         (new_column_width): take min/max_width into account 
2723         (gtk_clist_button_release) (gtk_clist_motion):
2724         changes due to changed new_column_width function
2725         (LIST_WIDTH): changed define to inline function.
2726         (real_resize_column): class function for resize_column signal
2727         (gtk_clist_motion): fixed autoscrolling for column resizes
2728         (gtk_clist_set_column_visibility): don't hide last visible column,
2729         changed visible arg to gboolean
2730         (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
2731         new functions : set min/max width of a column
2732         (gtk_clist_set_column_resizeable): new function : enable/disable
2733         column resize operations by mouse
2734
2735         * gtk/gtkctree.c (draw_row): don't draw invisible columns
2736         (ctree_is_hot_spot): return FALSE if tree_column is invisible
2737         (draw_xor_line)  (draw_xor_rect): draw full rectangle/line if
2738         tree_column is invisible
2739         (gtk_ctree_find_all_by_row_data)
2740         (gtk_ctree_find_all_by_row_data_custom):  new function from
2741         Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
2742         GtkCTreeNodes with row->data == data.
2743
2744 Tue Oct  6 14:05:00 1998  Tim Janik  <timj@gtk.org>
2745
2746         * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
2747         memory (Martin Pool <mbp@wistful.humbug.org.au>).
2748
2749 Mon Oct  5 15:26:30 1998  Raph Levien  <raph@gimp.org>
2750
2751         * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
2752         should have been guint32. Thanks to Tristan Colgate for finding it.
2753
2754 Sun Oct  4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2755
2756         * gtk/gtkcalendar.h:
2757           gtk/gtkcalendar.c: More changes:
2758           - The day with focus is now seperated from the day selected
2759           - The day with focus has the xor's line around it
2760           - The selected day is now standard selected style
2761           - The week names and week numbers are now also drawn
2762             with selected style
2763           - Space now selects the day which has focus
2764
2765 Sun Oct  4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2766
2767         * gtk/gtkcalendar.h:
2768           gtk/gtkcalendar.c: Some significant changes, including:
2769           - No longer draw focus around entire widget, only around
2770             the day which has focus
2771           - Draw relief around entire widget like originally planned
2772           - Show header and day names by default 
2773           - Move data private to the widget out of GtkCalendar struct
2774             and only point to it with a gpointer
2775           - Remove some old unused variables from GtkCalendar struct
2776
2777 Sun Oct  4 17:45:43 BST 1998  Tony Gale  <gale@gtk.org>
2778
2779         * docs/gtk_tut.sgml: update I've had sat around:
2780           - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
2781           - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
2782           - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
2783
2784 1998-10-01  Martin Baulig  <martin@home-of-linux.org>
2785
2786         * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
2787         
2788         * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
2789         Makes it possible to individually show and hide columns.
2790         (size_allocate_columns): Adapted to keep track of hidden columns.
2791         (size_allocate_title_buttons): Likewise.
2792
2793 Sat Oct  3 17:54:48 1998  Tim Janik  <timj@gtk.org>
2794
2795         * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
2796         fundamental types, collect an argument of the type returned from
2797         gtk_type_get_varargs_type(). removed the first macro argument which
2798         was just the same as the fundamental type of the *arg passed to
2799         the macro.
2800         * gtk/gtkarg.c (gtk_args_collect): 
2801         * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
2802
2803         * gtk/gtktypeutils.h: 
2804         * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
2805         gtk_type_get_varargs_type() to set and query the varargs collect
2806         type used for a fundamental type, registered outside of Gtk.
2807
2808         * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
2809         GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
2810         GTK_TYPE_FLOAT.
2811
2812         * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
2813         GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
2814         to GTK_TYPE_FLOAT.
2815
2816 Sat Oct  3 01:25:24 1998  Lars Hamann  <lars@gtk.org>
2817
2818         * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
2819         (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand): 
2820         fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
2821
2822         (real_tree_expand) (real_tree_collapse):
2823         don't expand/collapse a leaf
2824
2825 Fri Oct  2 16:10:36 1998  Tim Janik  <timj@gtk.org>
2826
2827         * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
2828         segfault when looking up a non-existant value name (reported by
2829         Pablo <pcj+gtk@primenet.com>).
2830
2831 Thu Oct  1 10:40:20 1998  Tim Janik  <timj@gtk.org>
2832
2833         * gtk/gtkclist.h (gtk_clist_prepend):
2834         * gtk/gtkclist.c (gtk_clist_prepend): new function.
2835         (gtk_clist_insert): added g_return_val_if_fail()
2836         statements. accept a row parameter < 0 or > clist->rows to indicate
2837         append mode.
2838         (real_clear): first clean up all internal pointers and lists (e.g.
2839         clist->row_list or clist->rows), then delete the distinct rows. this
2840         is required because of destroy notifiers, we need to have all internal
2841         structures updated and be reentrant.
2842
2843         * gtk/gtkcalendar.h: 
2844         * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
2845         GtkCalendarClass signal methods.
2846         GtkType and macro fixups, put `void' into () prototypes, avoid C++
2847         style comments, indentation fixes, fixed some g_return_if_fail()
2848         statements.
2849         (gtk_calendar_paint_header):
2850         (gtk_calendar_paint_day_names): 
2851         (gtk_calendar_paint_week_numbers): 
2852         (gtk_calendar_paint_main): made these static functions.
2853         (gtk_calendar_select_month):
2854         (gtk_calendar_select_day):
2855         (gtk_calendar_mark_day):
2856         (gtk_calendar_unmark_day):
2857         (gtk_calendar_get_date): signedness corrections, use guints
2858         rather than gints.
2859         (gtk_calendar_size_request): removed unused variables.
2860
2861 Wed Sep 30 13:11:09 1998  Tim Janik  <timj@gtk.org>
2862
2863         * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
2864         widgets in the ->widgets_by_action list that have a callback
2865         defined (not only those with a callback_action!=0).
2866
2867 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2868
2869         * gtk/gtkcalendar.h:
2870           gtk/gtkcalendar.c:
2871           examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
2872
2873 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2874
2875         * gtk/gtkcalendar.h:
2876           gtk/gtkcalendar.c:
2877           examples/calendar: Added gtkcalendar widget and demo
2878
2879 Sat Sep 26 06:15:34 1998  Tim Janik  <timj@gtk.org>
2880
2881         * gtk/gtkclist.c (gtk_clist_sort): 
2882         (gtk_clist_clear): 
2883         (gtk_clist_unselect_all): 
2884         (gtk_clist_select_all): adde g_return_if_fail() statements.
2885
2886 Sat Sep 26 04:46:22 1998  Tim Janik  <timj@gtk.org>
2887
2888         * configure.in: set binary age and interface age to 0.
2889
2890         * gtk/gtkspinbutton.h: 
2891         * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
2892         gtk_spin_button_configure. gtk_spin_button_construct is still defined
2893         as an alias for gtk_spin_button_configure for source compatibility,
2894         but actuall use is deprecated.
2895         typeness corrections, i.e. gint->gboolean and gint->guint.
2896         added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
2897         GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
2898         GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
2899         GtkSpinButton::adjustment, GtkSpinButton::digits and
2900         GtkSpinButton::climb_rate.
2901         GtkType and macro fixups.
2902
2903 Sat Sep 25 23:33:55 1998  Tim Janik  <timj@gtk.org>
2904
2905         * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
2906         the *real* geometry position of a window, taken possible window
2907         manager offsets into account.
2908         this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
2909         olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
2910         it does fail though for amiwm which adds windows to a pseudo root
2911         window, and for icewm by a small offset because it defines the
2912         geometry position whithin its border.
2913
2914         * gtk/testgtk.c: added "saved position" test to figure how
2915         gdk_window_get_root_origin() interacts with window managers (repopup
2916         this window to figure ;).
2917
2918 Wed Sep 23 06:09:19 1998  Tim Janik  <timj@gtk.org>
2919
2920         * configure.in: update to Gtk+ version 1.1.3, binary age 1,
2921         interface age 1.
2922
2923         * gtk/gtkobject.c
2924         (gtk_object_ref): 
2925         (gtk_object_unref): check for ->ref_count to be greater than 0 (the
2926         existing code was buggy in letting ->ref_count==0 pass through and
2927         then failing the living_objs_ht assertion).
2928
2929         * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
2930         pixtext fields (Roman Pozlevich <roma@botik.ru>).
2931
2932 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2933
2934         * Released GTK+ 1.1.2
2935
2936 Mon Sep 21 01:12:44 1998  Jay Cox  (jaycox@earthlink.net)
2937
2938         * gtk/Makefile.am: use $(PERL) instead of perl
2939         * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
2940         also much faster to render.
2941
2942 Mon Sep 21 07:44:30 1998  Tim Janik  <timj@gtk.org>
2943
2944         * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
2945         the required memory block, rather than allocating it newly from
2946         scratch and doing a full-blown block copy on it.
2947
2948 Mon Sep 21 02:30:06 1998  Tim Janik  <timj@gtk.org>
2949
2950         * NEWS file update for upcoming release of Gtk+ version 1.1.2,
2951         binary age 0, interface age 0.
2952
2953         * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
2954
2955 Sun Sep 20 18:21:46 1998  Owen Taylor  <otaylor@redhat.com>
2956
2957         * ltmain.sh: Patch to libtool-1.2b to make --disable-static
2958         work.
2959
2960 Sun Sep 20 09:52:39 1998  Owen Taylor  <otaylor@gtk.org>
2961
2962         * HACKING: indent other than GNU indent should be OK
2963           now.
2964
2965         * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
2966           instead of piping through indent. If indent wasn't
2967           found in ./configure don't bother indenting at 
2968           all.
2969
2970 Fri Sep 18 19:11:10 1998  Owen Taylor  <otaylor@redhat.com>
2971
2972         * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
2973
2974 Fri Sep 18 18:54:59 1998  Jay Cox  (jaycox@earthlink.net)
2975
2976         * gtk/Makefile.am: use $(AWK) instead of awk
2977
2978 1998-09-18  Raja R Harinath  <harinath@cs.umn.edu>
2979
2980         * gtk/Makefile.am (gdk_headers): 
2981         Remove references to $(top_srcdir). 
2982         (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
2983         * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
2984
2985 Fri Sep 18 19:58:24 1998  Tim Janik  <timj@gtk.org>
2986
2987         * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
2988         GData*object_data to cure compiler warnings.
2989
2990 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
2991
2992         * install-sh
2993         * missing
2994         * mkinstalldirs: updated to latest automake version
2995
2996 1998-09-17  Raja R Harinath  <harinath@cs.umn.edu>
2997
2998         * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
2999         (gtkinclude_HEADERS): ... here.
3000         (gtk.defs): Pass `g' flag to sed, to replace all occurances.
3001
3002 Thu Sep 17 10:49:51 1998  Raph Levien  <raph@gimp.org>
3003
3004         * HACKING: added GNU indent, as it is now required to successfully
3005         build gtk+. Should this be detected in autoconf, possibly?
3006
3007 Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>
3008
3009         * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
3010         change library versioning scheme to drop LT_RELEASE
3011         from the -l line, while keeping it in the soname.
3012
3013 Tue Sep 15 14:10:33 1998  Owen Taylor  <otaylor@redhat.com>
3014
3015         * configure.in Makefile.in: define a MAINT-like variable REBUILD
3016         which is set if Perl and awk are found, and autogenerated sources
3017         can be rebuilt. Remove the auto-generated sources from
3018         CVS. 
3019
3020         Add dependencies so that the autogenerated sources are 
3021         rebuilt if the files they depend on change. 
3022         (This unfortunately currently results in the entire
3023         gtk/ directory being rebuilt when any header changes.
3024         Moving all enums to gtkenums.h would fix this.)
3025
3026 Thu Sep 17 05:12:48 1998  Tim Janik  <timj@gtk.org>
3027
3028         * gtk/gtkobject.h: added gtk_object_set_data_destroy and
3029         gtk_object_set_data_destroy_by_id functions to set the destroy
3030         function pointer for an existing data portion.
3031
3032         * gtk/gtkobject.c: removed the GtkObjectData implementation and
3033         made all gtk_object_*data* functions use the GLib equivalents.
3034
3035 1998-09-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3036
3037         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
3038         is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
3039         (widget != NULL), otherwise radio button insertion will not work
3040         -- the widget argument is NULL for the first radio button in the
3041         group.
3042
3043 Tue Sep 15 13:09:24 1998  Owen Taylor  <otaylor@redhat.com>
3044
3045         * gdk/gdkimage.c (gdk_image_new): Reverted global changes
3046         of g_new to malloc(), added back in the one place where
3047         it actually mattered. #include <stdlib.h>.
3048
3049         * gdk/gdkrgb.c: g_malloc() to malloc() as above.
3050
3051 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
3052
3053         * gtk/gtkfilesel.c: Keep a list of directories in which we never
3054         want to stat the entries (like /afs), and assume everything in
3055         those directories is a subdirectory.
3056
3057         - When following a path, try to open components even when
3058         we don't find them in their parent's directory to
3059         support automounters.
3060
3061 Tue Sep 15 11:06:13 1998  Owen Taylor  <otaylor@redhat.com>
3062
3063         * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
3064         a new size from the WM if we asked for the same size
3065         before and our request was rejected.
3066
3067         * gtk/gtkwindow.c (gtk_window_configure_event): If
3068         in response to a request, we get a configure event
3069         with unchanged dimensions, send a synthetic expose
3070         since ForgetGravity won't expose our window.
3071
3072 Mon Sep 14 14:28:24 1998  Owen Taylor  <otaylor@redhat.com>
3073
3074         * gtk/gtktext.c (adjust_adj): Change the way we
3075         set the adjustments on resize so that it tries to
3076         keep the beginning of the text in approximately
3077         the same place. 
3078
3079         Removed assertion that the above change made invalid.
3080
3081 Thu Sep 10 22:19:35 1998  Owen Taylor  <otaylor@redhat.com>
3082
3083         * gtk/gtktext.c: - Save first_cut_pixels when switching
3084         sizes, so that if we switch to the _same_ size,
3085         we don't move lines around.
3086
3087         - Make sure that the text area always has a size of at
3088         least 1x1, then do all computations when realized.
3089
3090         - When fetching lines in recompute_geometry, make
3091         sure we fetch enough lines to cover the screen.
3092         
3093 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3094
3095         * gdk/gdkimage.c: changed g_new()s to malloc()s and 
3096           g_free()s to free()s to avoid mixing g_new()s with 
3097           free()s.  X itself uses free() on some of the 
3098           malloced memory.
3099
3100 Sat Sep 12 10:44:06 1998  Owen Taylor  <otaylor@redhat.com>
3101
3102         * gtkfilesel.c: Maintain a list of directories like
3103         /afs we know contain only directories, and avoid
3104         stat'ing files in those directories. (Because
3105         stat'ing all files in /afs is extremely expensive)
3106
3107         To support automounters, try to open directories,
3108         even if we couldn't find them when reading their
3109         parent directory.
3110
3111 Thu Sep  3 10:29:03 1998  Owen Taylor  <otaylor@redhat.com>
3112
3113         * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
3114         to allow the same gtk.m4 to work for 1.0.x and
3115         1.1.x.
3116
3117 Fri Sep 11 15:25:10 1998  Lars Hamann  <lars@gtk.org>
3118
3119         * gtk/gtkclist.c (gtk_clist_set_selectable): new function
3120         to set/unset the selectable flag of a single row.
3121         (gtk_clist_get_selectable): new function 
3122         to get the state of the selectable flag
3123
3124         * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
3125         (gtk_ctree_node_get_selectable): clist analogons
3126         
3127 Thu Sep 10 17:04:03 1998  Raph Levien  <raph@gimp.org>
3128
3129         * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
3130         pattern.
3131
3132         * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
3133         bugs in the 4bit gray cases.
3134
3135 Wed Sep  9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
3136
3137         * configure.in: added -posix check for NeXTStep
3138
3139         * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
3140         a unique buffer for each thread.
3141
3142         * docs/gtk-config.1: clarified copyright
3143
3144 Tue Sep  8 05:19:51 1998  Tim Janik  <timj@gtk.org>
3145
3146         * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
3147
3148         * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
3149
3150         * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
3151         ATEXIT.
3152         
3153         * ltconfig: use GLib's ltconfig which honours lcc.
3154
3155 Mon Sep  7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
3156
3157         * configure.in: comment the -std1 check and save LIBS properly
3158
3159 Sun Sep  6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
3160
3161         * gtk/testrgb.c: #include <stdlib.h>
3162
3163 Sat Sep  5 16:01:19 1998  Owen Taylor  <otaylor@gtk.org>
3164
3165         * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
3166         When the pointer is grabbed on an input window,
3167         either explicitely, or through press-grab, and
3168         then grabbed on a non-input window, ungrab the
3169         devices.
3170
3171 Sat Sep  5 07:13:19 1998  Tim Janik  <timj@gtk.org>
3172
3173         * gtk/gtktypeutils.h: don't include any gdk headers.
3174         added structure definitions for GtkTypeObject and GtkTypeClass,
3175         which cover the very basic fields of GtkObject and GtkObjectClass,
3176         which are actually used by the type system.
3177         
3178         * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
3179         we only refer to our own structures. improved class inheritance
3180         sanity checking a bit.
3181
3182         * gtk/gtkobject.h: placed appropriate comments at the beginnings
3183         of the GtkObject and GtkObjectClass structures, which explain
3184         their relationship to GtkTypeObject and GtkTypeClass.
3185
3186         * gtk/gtktypeutils.h:
3187         * gtk/gtkobject.h:
3188         moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
3189         GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
3190         gtkobject.h to gtktypeutils.h.
3191
3192         * gtk/gtkobject.h:
3193         * gtk/gtkobject.c:
3194         removed gtk_object_check_cast() and gtk_object_check_class_cast()
3195         functions. to keep source compatibility, we can provide macro aliases
3196         for the corresponding gtk_type_* functions. but then again, people
3197         shouldn't have been using these functions anyways since they were part
3198         of Gtk's internal API.
3199
3200         * gtk/gtktypeutils.h:
3201         * gtk/gtktypeutils.c:
3202         implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
3203         functions to check GtkTypeObject and GtkTypeClass types.
3204
3205 Thu Sep  3 07:16:54 1998  Tim Janik  <timj@gtk.org>
3206
3207         * gtk/gtkctree.h:
3208         * gtk/gtkctree.c: `const' fixups.
3209
3210         * gtk/gtkclist.h:
3211         * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
3212
3213         * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
3214         if it is passed as NULL.
3215
3216 Wed Sep  2 22:41:40 1998  Raph Levien  <raph@gimp.org>
3217
3218         * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
3219         big-endian cases. Added a 4bpp packed gray mode (somewhat
3220         incorrectly hardwired to MSB), which should take care of
3221         Stric's hardware.
3222
3223 Thu Sep  3 04:45:57 1998  Tim Janik  <timj@gtk.org>
3224
3225         * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
3226         GtkSIgnalQuery leak.
3227
3228 Thu Sep  3 04:22:20 1998  Tim Janik  <timj@gtk.org>
3229
3230         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
3231         GTK_MENU_DIR_CHILD: check for the existance of
3232         menu_shell->active_menu_item before accessing its child.
3233         GTK_MENU_DIR_PREV:
3234         GTK_MENU_DIR_NEXT: if we haven't had an active item and still
3235         don't, make a default selection.
3236
3237 Wed Sep  2 00:28:58 1998  Tim Janik  <timj@gtk.org>
3238
3239         * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
3240         the children with _forall for sensitivity changes and with
3241         _foreach on pure state changes. this fixes a lot of the
3242         old inclusions of internal widgets into _foreach calls.
3243
3244         * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
3245         do the work. don't walk the subtrees of first level children.
3246
3247         * gtk/gtktreeitem.c: provide a _forall implementation,
3248         which walks the subtrees as well for include_internals.
3249
3250         * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
3251         the submenus as well for include_internals.
3252
3253         * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
3254         implemented gtk_scrolled_window_forall, which will iterate over
3255         the viewport and the scrollbars for gtk_container_forall or
3256         iterate over the viewports children for gtk_container_foreach.
3257
3258         * gtk/gtktoolbar.c: 
3259         * gtk/gtktable.c: 
3260         * gtk/gtkpaned.c:
3261         * gtk/gtkpacker.c:
3262         * gtk/gtkmenushell.c: 
3263         * gtk/gtklist.c: 
3264         * gtk/gtkfixed.c:
3265         * gtk/gtkclist.c:
3266         * gtk/gtkbox.c: 
3267         * gtk/gtkbin.c: 
3268         * gtk/gtknotebook.c:
3269         removed the old gtk_*_foreach functions and provided gtk_*_forall.
3270
3271         * gtk/gtknotebook.c:
3272         (gtk_notebook_real_switch_page): expose tabs.
3273         (gtk_notebook_page_num): new function to return the page number
3274         of a distinct child.
3275         (gtk_notebook_focus): minor fixups. foxus handling is still screwed
3276         under some circumstances.
3277
3278         * gtk/gtktreeitem.c:
3279         (gtk_real_tree_item_select):
3280         (gtk_real_tree_item_deselect): major fixes.
3281         some general fixups wrt queue_redraw, and tree items not being
3282         NO_WINDOW widgets.
3283
3284         * gtk/gtklistitem.c:
3285         (gtk_real_list_item_select): 
3286         (gtk_real_list_item_deselect): 
3287         (gtk_real_list_item_toggle): 
3288         removed unneccessary queue_redraw calls.
3289
3290 Wed Aug 30 09:42:07 1998  Tim Janik  <timj@gtk.org>
3291
3292         * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
3293         automatically popup the menu on space bar.
3294
3295 Wed Aug 26 06:40:34 1998  Tim Janik  <timj@gtk.org>
3296
3297         * gtk/gtkcontainer.h:
3298         * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
3299         method), which acts similar to gtk_container_foreach(), but iterates
3300         over internal children. the GtkContainer::foreach signal vanished in
3301         favour of a new class method ->forall() that optionally includes
3302         internal widgets.
3303
3304         * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
3305         but a _forall implementation, since all child widgets we have are
3306         internal ones.
3307         (column_button_create): set the parent window prior
3308         to gtk_widget_set_parent().
3309
3310         * gtk/gtkwidget.c:
3311         exchanged all calls to gtk_container_foreach() with
3312         gtk_container_forall().
3313
3314         * gtk/gtkwidget.h: 
3315         * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
3316         the GtkWidget::composite_child argument. to have a widget created
3317         with the flag initially, two new functions got added to wrap a widgets
3318         creation:
3319         gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
3320
3321 Wed Aug 25 23:37:39 1998  Tim Janik  <timj@gtk.org>
3322
3323         * gtk/gtktooltips.h:
3324         * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
3325         gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
3326         prior to the first tip being set.
3327         don't put an extra reference on the window, since it is a toplevel,
3328         it wont get destroyed from anywhere else.
3329
3330         * overall macro and GtkType fixups.
3331
3332 1998-09-02  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3333
3334         * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
3335         constructs by more forgiving ones.  (Does anyone else feel like
3336         the color selector need rewriting?).
3337
3338 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
3339
3340         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
3341         the adjustment.
3342
3343         * gtk/gtkmenu.c: Modified reference counting so
3344         that the reference count from the toplevel that
3345         the menu creates to the menu is invisible to the
3346         application.
3347
3348 Mon Aug 31 21:36:31 1998  Raph Levien  <raph@gimp.org>
3349
3350         * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
3351         conversion selection logic, so Suns and other big-endian
3352         machines should get faster conv routines. This is also the
3353         point where 4bpp gray and 1bpp are checked in, although I
3354         wouldn't be surprised if 1bpp is a little buggy. This is
3355         synchronized with the 0.0.7 release of GdkRgb.
3356
3357         * gtk/Makefile.am: 
3358         * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
3359         appropriate change to the Makefile.am
3360
3361 Mon Aug 31 15:18:19 1998  Raph Levien  <raph@gimp.org>
3362
3363         * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
3364         which is good for images that scroll (makes the dither patterns
3365         align correctly)
3366
3367 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
3368
3369         * gdk/gdkcolor.c:
3370         (gdk_colormap_new) (gdk_colormap_get_system):
3371         quell some warnings with g_hash_table_new
3372
3373         * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
3374         when we're done with it
3375
3376         * gtk/itemfactory.c:
3377         (gtk_item_factory_from_path):
3378         (gtk_item_factory_create_item): free some strings
3379
3380         * gtk/gtklabel.c:
3381         (gtk_label_finalize): free label->pattern when done
3382         (gtk_label_parse_uline): null terminate pattern string, delete
3383         some duplicated code
3384
3385         * gtk/testthreads.c: add #include <unistd.h> for sleep()
3386
3387 Tue Aug 25 16:52:47 1998  Owen Taylor  <otaylor@redhat.com>
3388
3389         * gtk/gtktext.c (recompute_geometry): Make sure the
3390         mark we pass to line start is the beginning of a 
3391         real line, not a wrapped one.
3392
3393 Mon Aug 24 18:37:15 1998  Owen Taylor  <otaylor@redhat.com>
3394
3395         * gtk/gtktext.c: Reference count the fonts used in
3396         the text widget.
3397
3398         * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
3399         freeing functions to be more consistent, and more 
3400         convenient; leave the old names in for backwards compatibility.
3401
3402         * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
3403         allocations in pseudo-color colormaps to greatly reduce
3404         calls to XAllocColor. Keep a per-colormap hashtable to
3405         speed up finding if there is an already-allocated matching
3406         color.
3407
3408         * gdk/gdkcolor.c: Don't just match read the system colormap
3409         when the colormap is created, but synchronize our copy
3410         with the system colormap periodically.
3411         
3412         * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c: 
3413         Change XIM constants names to match GDK conventions
3414
3415         * gtk/testinput.c: Allow the drawing area to get the focus.
3416
3417         * gtk/testgtk.c: Change around the Text test to demonstrates
3418         multiple fonts, use more colors.
3419
3420         * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
3421         so they work after a widget is unrealized.
3422
3423         * gtk/gtktext.[ch]: Remove the requirement that the text
3424         widget be realized before adding text (!) Allocate colors
3425         ourself, instead of requiring the caller allocate them.
3426         Allow changing styles to work properly by keeping track
3427         of the values for a certain property are default or
3428         set explicitely.
3429
3430         * gtk/gtkmenu.h: Added some comments.
3431
3432         * gtk/gtkentry.c: Changes to match XIM constants.
3433
3434         * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
3435         for adding keyed data to drawables. (Uses g_dataset
3436         internally)
3437
3438         * gdk/gdkpixmap.c: Keep track of the colors we allocate,
3439         when creating an XPM - store them as user data for the GdkPixmap,
3440         so we don't leak colors when we create pixmaps from XPM's.
3441
3442         Allocate memory for color information in large blocks instead of 
3443         as many little pieces.
3444         
3445 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
3446
3447         * gdk/gdkrgb.c: removed some unused variables
3448
3449         * gtk/gtkclist.c
3450         * gtk/gtkmain.c: #if 0'd out some unused code
3451
3452         * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
3453
3454 Mon Aug 24 02:36:53 1998  Tim Janik  <timj@gtk.org>
3455
3456         * gtk/gtkarg.h:
3457         * gtk/gtkarg.c:
3458         * gtk/gtkwidget.h: 
3459         * gtk/gtkwidget.c: 
3460         * gtk/gtkobject.h:
3461         * gtk/gtkobject.c:
3462         * gtk/gtkcontainer.h: 
3463         * gtk/gtkcontainer.c: 
3464         (gtk_object_new):
3465         (gtk_object_set):
3466         (gtk_widget_new):
3467         (gtk_widget_set): 
3468         (gtk_container_add_with_args):
3469         (gtk_container_child_set):
3470         begin the parameter elipsis (...) after the first argument name. this
3471         change is source compatible, since it was always required, even as NULL.
3472         (gtk_args_collect): 
3473         (gtk_object_args_collect): 
3474         (gtk_container_child_args_collect):
3475         changed prototypes to pass first_arg_name, also, pass va_list variable
3476         by value (portability concerns). callers changed.
3477
3478         * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
3479         a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
3480         can't pass va_list variables by reference for portability reasons.
3481
3482 Fri Aug 21 22:40:00  Raph Levien  <raph@gtk.org>
3483
3484         * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
3485         get_visual calls, so that it gets implicitly initialized.
3486
3487 Fri Aug 21 13:06:04 1998  Stuart Parmenter  <pavlov@gimp.org>
3488         * gtk/gtkfeatures.h.in:  added GTK_HAVE_FEATURES_1_1_2 for changes
3489         such as GtkCTree function name changes
3490         
3491 Fri Aug 21 02:31:26 1998  Tim Janik  <timj@gtk.org>
3492
3493         * gtk/gtkmain.h:
3494         * gtk/gtkmain.c (gtk_check_version): added a function to perform a
3495         binary version check, returning a static string for error descriptions,
3496         or NULL on success.
3497
3498 Thu Aug 20 20:08:15 1998  Owen Taylor  <otaylor@redhat.com>
3499
3500         * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
3501         computed our geometry yet, and if not, ignore the request.
3502
3503         * gtk/gtktext.c (correct_cache_insert): Fiddled around
3504         some more. All the bug-test codes seem to work at once
3505         now. (fingers crossed...)
3506
3507 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
3508
3509         * gdk/gdkrgb.c: silly visual fixes
3510
3511         * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
3512         works
3513
3514 1998-08-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3515
3516         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
3517         anything if the event's window is not the bin window.
3518         (gtk_handle_box_motion): Likewise.
3519
3520 1998-08-19  Raph Levien  <raph@gimp.org>
3521
3522         * gtk/testgtk.c (create_color_preview): pushed the colormap and
3523         visual so it would work better with GdkRgb.
3524
3525 1998-08-19  Raph Levien  <raph@gimp.org>
3526
3527         * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
3528         4bpp static_color mode (for vga displays). Also fixed a '64' value
3529         in the dither matrix, which was causing one pixel out of 16k to be
3530         dithered wrong.
3531
3532         * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
3533         most of the contents. This is an API change - any apps that relied
3534         on the internal structure of GtkPreview will need some change -
3535         most notably in the use of reserved colors. The Gimp needed
3536         changes in this regard.
3537
3538 Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>
3539
3540         * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
3541         G_ENABLE_DEBUG being defined (specifically --gtk-module= and
3542         --g-fatal-warnings), noticed by miguel.
3543
3544 Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>
3545
3546         * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
3547         getcwd().
3548
3549         * gdk/gdkprivate.h:
3550         * gdk/gdkglobals.c:
3551         * gdk/gdkwindow.c:
3552         * gdk/gdk.c:
3553         * gtk/gtkwindow.c: 
3554         * gtk/gtkitemfactory.c: 
3555         dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
3556
3557         * gtk/gtkselection.c:
3558         * gtk/gtkpreview.c:
3559         * gtk/gtkobject.c: 
3560         * gtk/gtkmain.c: 
3561         * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
3562
3563         * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
3564
3565 Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>
3566
3567         * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab): 
3568         * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
3569         in case of show_tabs == NULL
3570
3571 Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>
3572
3573         * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
3574         to --g-fatal-warnings again. this option now causes log levels of
3575         WARNING and CRITICAL to abort().
3576
3577         * gdk/gdk.c: 
3578         * gdk/gdkdnd.c: 
3579         * gdk/gdkcc.c: 
3580         * gdk/gdkfont.c: 
3581         * gdk/gdkwindow.c:
3582         * gdk/gdkvisual.c:
3583         * gtk/gtkwidget.c:
3584         * gtk/gtktypeutils.c:
3585         * gtk/gtktree.c:
3586         * gtk/gtkfontsel.c:
3587         * gtk/gtkmain.c:
3588         * gtk/gtkobject.c:
3589         * gtk/gtkpreview.c:
3590         * gtk/gtkselection.c:
3591         * gtk/gtktext.c:
3592         * gtk/gtktree.c:
3593         * gtk/gtktreeitem.c:
3594         did a global search&replace to substitute g_print() calls with
3595         g_message(). libraries shouldn't use printf(), g_print() or
3596         g_printerr() at all.
3597         a bunch of the replacements should probably be wrapped into the
3598         G{D|T}K_NOTE() macros, so they are special cased for debugging
3599         purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
3600         things.
3601
3602         * gdk/gdkdnd.c: added copyright notice.
3603
3604 Mon Aug 17 17:28:00  Raph Levien  <raph@gtk.org>
3605
3606         * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
3607         impressively fast now - about 4.65 Mpix/s on an IBM TP 600
3608         running a PII 233. It's synced with the 0.0.5 release of
3609         GdkRgb.
3610
3611 Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>
3612
3613         * gtk/gtkclist.h:
3614         (struct _GtkCListClass): new class methods:
3615         (sort_list) (insert_row) (remove_row) (set_cell_contents)
3616
3617         * gtk/gtkclist.c :
3618         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
3619         removed and replaced by (set_cell_contents)
3620         (set_cell_contents): function for class method set_cell_contents
3621         (real_insert_row): function for class method insert_row
3622         (real_remoce_row): function for class method remove_row
3623         (real_sort_list): function for class method sort_list
3624         (default_compare): fix to avoid problems with cell types != CELL_TEXT
3625
3626         * gtk/gtkctree.h :
3627         (gtk_ctree_export_to_gnode): new function to export a ctree as gnode 
3628         (gtk_ctree_node_is_visible): new function to return visibility state
3629         of a node
3630         (gtk_ctree_show_stub): new function to set visibility of root stub
3631
3632         renamed functions :
3633         (gtk_ctree_insert) -> (gtk_ctree_insert_node)
3634         (gtk_ctree_remove) -> (gtk_ctree_remove_node)
3635         (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
3636         (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
3637         (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
3638         (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
3639         (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
3640         (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
3641         (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
3642         (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
3643         (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
3644         (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
3645         (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
3646         (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
3647         (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
3648         (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
3649         (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
3650         (gtk_ctree_sort) -> (gtk_ctree_sort_node)
3651         (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
3652
3653         * gtk/gtkctree.c :
3654         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
3655         removed and replaced by (set_cell_contents)
3656         (set_cell_contents): function for class method set_cell_contents
3657         (real_insert_row): function for class method insert_row
3658         (real_remoce_row): function for class method remove_row
3659         (real_sort_list): function for class method sort_list
3660         (default_compare): removed. CTree now also compares two GtkCTreeRows
3661         instead of two GtkCTreeNodes.
3662         (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
3663         unlinking the node
3664         (real_tree_expand) (real_tree_collapse): fix for refcounting of
3665         node pixmaps
3666         (set_node_info): call gtk_ctree_node_set_pixtext instead of
3667         manipulating the row itself
3668         
3669         * gtk/testgtk.c: use renamed functions of GtkCTree.
3670         new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
3671         at work.
3672
3673 Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>
3674
3675         * gtk/gtkmain.c: removed gtk_input_add_interp.
3676
3677         * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
3678         keyword.
3679         (gtk_editable_get_event_time): fix default: case.
3680
3681         * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
3682
3683         * gdk/gdkpixmap.c: made a bunch of unexported functions static.
3684
3685         * gdk/gdkcolor.c:
3686         * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
3687         of our functions.
3688
3689         * various minor compilation cleanups, such as bogus commas in
3690         enums and similar things.
3691
3692 Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>
3693
3694         * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
3695         (thanx raph).
3696
3697 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3698
3699         * NEWS: updated for 1.1.2
3700         * gtk+.spec: version = 1.1.2
3701
3702 Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>
3703
3704         * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
3705         times. changed --gtk-with-module to --gtk-module at owen's request.
3706
3707 Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>
3708
3709         * gtk/gtkmain.c (gtk_init): feature a new commandline option
3710         --gtk-with-module=<module> that allows additional loading and
3711         initialization of modules (e.g. GLE).
3712
3713 Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>
3714
3715         * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
3716         pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
3717
3718         * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
3719         with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
3720         "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
3721         different *-fatal-* arguments now. this needs to be revised and
3722         compressed to a reasonable amount of arguments.
3723
3724 Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>
3725
3726         * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
3727         "--g-fatal-warnings" causes fatal warnings in GLib,
3728         "--gdk-fatal-warnings" causes fatal warnings in Gdk,
3729         "--gtk-fatal-warnings" causes fatal warnings in Gtk.
3730
3731         * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
3732         * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
3733
3734         * gtk/testgtk.c: 
3735         * gdk/gxid.c:
3736         we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
3737         since automake doesn't support per target _CFLAGS yet.
3738
3739         * configure.in: require GLib 1.1.3.
3740
3741 Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>
3742
3743         * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
3744         to set a callback to test if a node in drag can be dropped onto
3745         it's currrent location.
3746         * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
3747         to change the pointer when a drag destination is not allowed.
3748
3749 Thu Aug 13 21:06:00 1998  Raph Levien  <raph@gtk.org>
3750
3751         * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
3752         speeds up the 565_d case by about 25% total. Thanks Ray!
3753
3754 Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>
3755
3756         * Changed GtkSignalFunc back to () from (void). (again!)
3757
3758         * Added file README.cvs-commits
3759         
3760 Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>
3761
3762         * docs/gtk_tut.sgml:
3763           - Tidy up of the menufactory example from
3764             Andy Kahn <kahn@zk3.dec.com>
3765           - New section on Range Widgets from
3766             David Huggins-Daines <bn711@freenet.carleton.ca>
3767           - Started a new section on 'Advanced Event and Signal
3768             Handling' - used an email from Owen.
3769           - New appendix on Gdk Event Types
3770           - Added the tictactoe full example code to the
3771             'Code Examples' appendix
3772
3773 Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>
3774
3775         * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - 
3776           to calculate all the metrics at once of a string, including
3777           things which weren't calculated before.
3778
3779         * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
3780           MenuItem type, that when put as the first thing in a
3781           menu, makes the menu tearoff. Currently drawn as a
3782           dashed line.
3783
3784         * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
3785           "hide_on_activate" to the MenuItem class structure to allow
3786           check and radio buttons to be changed with <Space> without
3787           hiding the menu.
3788
3789         * gtk/gtkitemfactory.c: 
3790           - Create a AccelGroup for each MenuShell we create.
3791           - If an '_' appears before a  character 'c' in the path,
3792             then make 'c' an accelerator in the menu's accel group,
3793             and if the menuitem is menubar <alt>C an accelerator 
3794             in the itemfactory's accel group. Double '__' inserts
3795             a literal '_'
3796
3797         * gtk/gtklabel.[ch]: Add support for a pattern arg - 
3798           which is a string. If an '_' appears in this string,
3799           the corresponding position in the label is underlined.
3800
3801           Add gtk_label_parse_uline() convenience function which
3802           takes a string with embedded underlines, sets the
3803           pattern and label, and returns the accelerator keyval.
3804
3805         * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
3806           Instead, they create a GtkWindow and add themselves
3807           to that. (When torn off, another new feature, they
3808           create another GtkWindow to hold the torn off menu)
3809
3810           New function gtk_menu_set_tearoff_state()
3811         
3812         * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: 
3813           Added action signals  for keyboard navigation of menus.
3814
3815         * gtk/gtkmenushell.c: Key press handler which activates
3816           bindings for navigation, and accelerators, for handling
3817           underline accelerators. Exported functions to select 
3818           and activate menu items in a menushell.
3819
3820         * gtk/testgtk.c: Added a new "Item Factory" test which
3821           tests GtkItemFactory and the new keyboard navigation
3822           of menus.
3823
3824 Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>
3825
3826         * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
3827         external functions have been called. also relookup nodes after
3828         this function has been invoked.
3829
3830 Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>
3831
3832         * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
3833           beginning of Text when creating the Text widget.
3834
3835         * gtk/testgtk.c: Grab the focus on the text widget so
3836           as to test out the above.
3837
3838 Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>
3839
3840         * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16. 
3841           ::changed is a notification signal and should have no default
3842           handler. A complete redraw of the Text widget does _not_ need to
3843           be done on every text insertion.
3844
3845 Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
3846         (gtk-abilleira-072198-patch)
3847
3848         * gtk/gtkwindow.[ch]: 
3849           Add gtk_window_set_modal() which sets a flag; when
3850           set the window does a gtk_grab_add() when the window
3851           is shown, and a gtk_grab_remove() when the window
3852           is hidden. 
3853
3854         * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
3855           that case will run "Create Dir","Delete File" and "Rename File" 
3856           dialogs as modal too.
3857
3858         * gtk/testgtk.c: Added a button with an example of creating modal 
3859           dialog boxes. Including file selection and color selection standard
3860           dialogs.
3861         
3862 Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>
3863
3864         * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
3865           Removed CAN_FOCUS by default from scrollbars, button
3866           children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
3867           (Scrollbar definitely good change, toolbar bit more questionable)
3868
3869 Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>
3870
3871         * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
3872         Pettersen).
3873
3874 Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>
3875
3876         * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0; 
3877           added all logical operations to gc->function.
3878
3879 Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>
3880
3881         * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
3882         gtk_widget_size_allocate instead of gtk_widget_queue_resize
3883         if the visibility state of a scrollbar changes.
3884
3885 Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>
3886
3887         * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
3888
3889 Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>
3890
3891         * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
3892         gtk_clist_merge and gtk_clist_mergesort. :)
3893
3894 1998-08-06  Martin Baulig  <martin@home-of-linux.org>
3895
3896         * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
3897         `mergesort' -> `my_mergesort'.
3898
3899 Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>
3900
3901         * gtk/gtkenums.h: new enum GtkSortType.
3902         
3903         * gtk/gtkclist.h:
3904         * gtk/gtkclist.c:
3905         Added sorting capabilities to GtkCList. New APIs :
3906         gtk_clist_set_compare_func, gtk_clist_set_sort_column,
3907         gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort. 
3908         New internal functions : default_compare, merge, mergesort.
3909
3910         (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
3911         
3912         (gtk_clist_insert): Modified to handle gtk_clist_append and the
3913         auto sort flag. Changed the return value from void to gint to
3914         return the row number where the element was actually inserted.
3915
3916         (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
3917         
3918         * gtk/gtkctree.h:
3919         * gtk/gtkctree.c:
3920         Removed the auto_sort flag, replaced ctree->node_compare with
3921         clist->compare all over the place, modified default_compare to
3922         match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
3923         gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
3924
3925         * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
3926         sorting. The lists can be sorted by a column by clicking the 
3927         corresponding title button.
3928         
3929 Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3930
3931         * Released GTK+ 1.1.1
3932
3933 Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>
3934
3935         * gtk/gtkctree.h:
3936         * gtk/gtkctree.c:
3937         (gtk_ctree_find): changed to return a gboolean
3938         (gtk_ctree_insert_gnode): new function for recursive insertion of a
3939         GNode tree.
3940         (gtk_ctree_real_select_recursive): fix for extended selection
3941         (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
3942         (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
3943
3944 Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>
3945
3946         * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
3947         GLib version 1.1.1 is now required at minimum.
3948
3949         * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
3950         of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
3951
3952 Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>
3953  
3954         * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
3955           cursor before (possibly) deleting the cursor's text
3956           property.
3957  
3958         * gtk/gtktext.c (correct_cache_delete): More attempts
3959           to clean the line-start cache up after inserting
3960           a property. Among other things, make sure to
3961           fix up text->current_line, since it is used to 
3962           refetch the changed lines.
3963  
3964 Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>
3965
3966         * gtk/gtktable.[ch]: Empty rows/columns of the table
3967         should not have been marked as being able to shrink.
3968         (Fixes problem with shrinking scrollbarless GIMP canvases)
3969
3970 1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3971
3972         * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
3973         function to find a row by its data pointer using a custom
3974         comparison function.
3975
3976 Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>
3977
3978         * gtk/gtkclist.c: draw the buttons during a "draw" as well,
3979           this fixes a bug when the whole widget is made non-sesitive
3980           the buttons weren't redrawn
3981
3982 Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>
3983
3984         * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
3985         * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
3986         * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
3987
3988 Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>
3989
3990         * gdk/gdkwindow.c (gdk_window_reparent): Change 
3991           window_private->parent pointer when reparenting.
3992
3993 Sat Aug  1 22:17:00 1998  Raph Levien  <raph@acm.org>
3994
3995         * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
3996         with the standalone release.
3997
3998 Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>
3999
4000         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
4001         (gtk_clist_button_release) (new_column_width): Few fixes for
4002         column resize. Store resize column in clist->drag_pos.
4003
4004 Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>
4005
4006         * gtk/gtkctree.h 
4007         * gtk/gtkctree.c 
4008         * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
4009         to GtkCTreeNode *node.
4010
4011         * gtk/gtklist.h : added extended selection mode and auto scrolling.
4012         (struct _GtkList): removed unneeded variables timer, button,
4013         selection_start_pos, selection_end_pos, scroll_direction, have_grab.
4014         Added new variables undo_selection, undo_unselection, last_focus_child,
4015         undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
4016         drag_selection, add_mode.
4017  
4018         New functions :
4019         (gtk_list_extend_selection), (gtk_list_start_selection),
4020         (gtk_list_end_selection), (gtk_list_select_all),
4021         (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
4022         (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
4023         (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
4024         (gtk_list_undo_selection), (gtk_list_end_drag_selection)
4025         
4026         * gtk/gtklist.c : 
4027         (gtk_list_enter_notify): removed, because auto scrolling now works
4028         with gtk_list_motion_notify
4029  
4030         New functions, needed for auto scrolling :
4031         (gtk_list_motion_notify) (gtk_list_move_focus_child)
4032  
4033         New functions for extended selection support :
4034         (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
4035         (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
4036         (gtk_list_focus_lost)
4037         
4038         (gtk_list_set_focus_child): modified gtk_container_set_focus_child
4039         function to support auto scrolling, and avoid out-of-sync errors in
4040         case auf GTK_SELECTION_BROWSE
4041         (gtk_list_focus): modified gtk_container_focus function to avoid out
4042         off sync errors in case auf GTK_SELECTION_EXTENDED
4043
4044         * gtk/gtklistitem.h 
4045         * gtk/gtklistitem.c :
4046         New signal functions for key binding support :
4047         (toggle_focus_row), (select_all), (list_item), (unselect_all)
4048         (list_item), (undo_selection), (start_selection), (end_selection)
4049         (extend_selection), (scroll_horizontal), (scroll_vertical),
4050         (toggle_add_mode)
4051         (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
4052         GDK_KEY_RELEASE_MASK
4053         (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
4054  
4055         * gtk/gtkcombo.c :
4056         (gtk_combo_popup_button_press):  grab pointer for combo->list
4057         (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
4058         (gtk_combo_list_key_press): take care of which child HAS_GRAB
4059         (gtk_comb_init): don't connect combo->button with button_release_event
4060
4061 Thu Jul 30 12:39:36 1998  Lars Hamann  <lars@gtk.org>
4062
4063         * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
4064
4065 Wed Jul 29 23:31:50 1998  Lars Hamann  <lars@gtk.org>
4066
4067         * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
4068         horizontal autoscrolling, GtkCTree's 'reorder ability' now works
4069         with horizontal and vertical autoscrolling.
4070
4071 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4072
4073         * gtk/docs/man: new directory
4074         * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
4075
4076 Tue Jul 28 00:03:20 1998  Lars Hamann  <lars@gtk.org>
4077
4078         * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
4079         bug
4080
4081 Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>
4082
4083         * docs/gtk_tut.sgml: GtkTree section from
4084           David Huggins-Daines <bn711@freenet.carleton.ca>,
4085           add a GtkText widget example
4086         * examples/text/* example/tree/* : new examples for the
4087           GtkTree and GtkText widgets
4088         * docs/gtk_tut.sgml: added an appendix to hold complete code
4089           examples that aren't in a full form elsewhere in the
4090           tutorial (e.g. scribble)
4091
4092 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4093
4094         * Released GTK+ 1.1.0
4095
4096 Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>
4097
4098         * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
4099         the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
4100
4101 Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>
4102
4103         * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
4104         values are looked up.
4105
4106         * gtk/gtktypeutils.h:
4107         * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
4108         gtk_type_enums_find_value to lookup enum values.
4109
4110         * gtk/gtkctree.h: 
4111         * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
4112         GtkCTreeExpansionType. fixed signal creations to pass the enum
4113         types not just the base type GTK_TYPE_ENUM.
4114
4115         * gtk/gtkclist.h: 
4116         * gtk/gtkclist.c: fixed signal creations to pass the real enum
4117         types not just the base type GTK_TYPE_ENUM.
4118
4119 Sun Jul 26 14:50:07 1998  Stefan Jeske  <stefan@gtk.org>
4120
4121         * gtk/testgtk.c : 
4122         Began cleanup, e.g. use gtk_widget_show_all instead of many 
4123         gtk_widget_show's. Completely rewrote the button box sample
4124         (only one window now). Removed "miscellaneous" button.
4125
4126 Sun Jul 26 14:48:14 1998  Stefan Jeske  <stefan@gtk.org>
4127
4128         * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate): 
4129         Fixed wrong allocation for GTK_BUTTONBOX_END.
4130         (allocation->x  =>  allocation->y)
4131
4132 Sun Jul 26 14:06:37 1998  Lars Hamann  <lars@gtk.org>
4133
4134         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
4135         (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
4136         
4137         * gtk/gtkctree.c (real_tree_select): added check to avoid double
4138         selected rows
4139         (gtk_ctree_button_press)
4140         (gtk_ctree_button_release): fix for pointer grab
4141
4142 Sat Jul 25 13:16:00 1998 Damon Chaplin  <DAChaplin@msn.com>
4143
4144         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): 
4145         Fixed initialization problem - dirty memory could cause problems.
4146         Also checked that bitmapped fonts can be scaled when showing the
4147         available sizes.
4148
4149 Sat Jul 25 02:25:03 1998  Lars Hamann  <lars@gtk.org>
4150
4151         * gtk/gtkctree.c (gtk_ctree_sort_recursive)
4152         (gtk_ctree_sort_recursive): test for node != NULL
4153         (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
4154         (gtk_ctree_last) : added sanity checks
4155         * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
4156
4157 Fri Jul 24 18:15:49 1998  Lars Hamann  <lars@gtk.org>
4158
4159         * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
4160
4161 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
4162
4163         * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
4164
4165 Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
4166
4167         * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
4168         to check out binding priorities. someone should really write
4169         gtkrc-mode for emacs.
4170
4171         * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
4172         * gtk/testgtk.c (main): and move it here ;). this test says something
4173         on release of C-9. (this works only if the mouse pointer is on a
4174         spinbutton and there is no focus widget).
4175
4176         * gtk/gtkrc.h:
4177         * gtk/gtkrc.c:
4178         export gtk_rc_parse_color, gtk_rc_parse_state and a new function
4179         gtk_rc_parse_priority to parse path priority types.
4180         export rc tokens.
4181         feature binding parsing.
4182
4183 Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
4184
4185         * gtk/gtkbindings.h: 
4186         * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
4187         feature binding parsing in rc files.
4188         * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
4189         * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
4190         order the bindings with lowest priority first.
4191
4192 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
4193
4194         * gdk/gdkrgb.c: actually builds and runs properly on big
4195         endian machines now, because we #include config.h. Also
4196         fixed up a compile error in the WORDS_BIGENDIAN case in
4197         gdk_rgb_convert_565_gray. I made the fix by looking at
4198         patterns in the other code; Raph can you verify this?
4199
4200         * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
4201         warnings
4202
4203 Wed Jul 22 23:00:44 1998  Lars Hamann  <lars@gtk.org>
4204
4205         * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse) 
4206         (tree_toggle_expansion) (real_select/unselect_row)
4207         (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
4208
4209 Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>
4210
4211         * gtk/gtktext.c (new_text_property): We free things from
4212         the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
4213
4214         * Fix up line start cache when splitting a property
4215         during an insert.
4216
4217 Wed Jul 15 21:15:52 1998  Owen Taylor  <otaylor@redhat.com>
4218
4219         * gtk/gtkwidget.c: restauration => restoration
4220
4221 Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>
4222
4223         * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
4224         hasn't been created yet, don't do the lookup.
4225
4226 1998-07-20  Raph Levien  <raph@acm.org>
4227
4228         * gdk/gdkrgb.c: More cleanups in the config process.
4229
4230 1998-07-20  Raph Levien  <raph@acm.org>
4231
4232         * gdkrgb.c: Fixed minor config bug preventing big-endian
4233         architectures from working.
4234
4235 Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>
4236
4237         * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
4238         activity indicator. It is settable now as a fraction of the
4239         total width/height using gtk_progress_bar_set_activity_blocks.
4240         Renamed gtk_progress_bar_set_number_of_blocks to
4241         gtk_progress_bar_set_discrete_blocks.
4242
4243 Mon Jul 20 21:28:18 1998  Lars Hamann  <lars@gtk.org>
4244
4245         * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
4246         (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
4247         tree to specified depth
4248         (gtk_ctree_expand_to_depth): expand tree to specified depth
4249         (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
4250
4251 Sun Jul 19 23:51:05 1998  Lars Hamann  <lars@gtk.org>
4252
4253         * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
4254         of GTK_CLIST_ADD_MOD
4255         * gtk/testgtk.c (add1000_clist): changed pixmap
4256
4257 Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>
4258
4259         * gtk/gtkmain.h: 
4260         * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
4261
4262         * gtk/gtktypeutils.h:
4263         * gtk/gtkitemfactory.h: remove "void" from prototypes again.
4264
4265 Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>
4266
4267         * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
4268         CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
4269         (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
4270         CHILD_ARG_POSITION
4271         (gtk_notebook_reorder_child): new funktion to change position of a
4272         notebook page
4273         (gtk_notebook_draw_arrow): draw left/right arrow with
4274         GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
4275
4276         * gtk/gtkstyle.c (gtk_default_draw_arrow):
4277         added GTK_SHADOW_ETCHED_IN/OUT
4278
4279 Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>
4280
4281         * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
4282           gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
4283         Introduced generic GtkProgress widget. Derived GtkProgressBar from
4284         GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
4285
4286 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
4287
4288         * gtk/gtktypeutils.h
4289         * gtk/gtkitemfactory.h: explicitly specify void in prototype
4290
4291 Fri Jul 17 17:54:02 1998  Lars Hamann  <lars@gtk.org>
4292
4293         * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
4294         of list
4295
4296 Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>
4297
4298         * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
4299         sropped the approach of copying all signal specific data into a
4300         GtkHandlerInfo structure. we rather keep the signal data on the stack
4301         in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
4302         avoids multiple lookups of the signal pointer and works savely together
4303         with destroy notifiers of handlers.
4304
4305         * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
4306         someone destroys the entry on the ::activate signal.
4307
4308 Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>
4309
4310         * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
4311         instead of ypad (typo).
4312         (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
4313         border around the allocation).
4314         (gtk_arrow_init): the static requisition needs to be setup in this
4315         function rather than gtk_widget_new(), so arrow creation works without
4316         the gtk_arrow_new() constructing.
4317         (gtk_arrow_expose): return TRUE, since we actually handled the expose.
4318
4319         * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
4320         implementation for GtkWidget::size_request, so size requisition for
4321         simple statically sized widgets like GtkArrow works.
4322
4323 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
4324
4325         * gtk-config.in: minor changes to gtk-config: --cflags doesn't
4326         prepend -I@libdir@/glib/include anymore, since glib-config handles
4327         it; --libs strips out redundant -L<path>'s properly (there was
4328         code in there to do it before, but it didn't work)
4329
4330 Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>
4331
4332         * gtk/gtknotebook.h: 
4333         * gtk/gtknotebook.c: signdness corrections all ove the place.
4334         implementation of object arguments: GtkNotebook::enable_popup,
4335         GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
4336         GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
4337         begun implementation of child args, we have GtkNotebook::tab_label, but
4338         GtkNotebook::menu_label and GtkNotebook::position still lack the
4339         implementation.
4340         (gtk_notebook_remove_page):
4341         (gtk_notebook_current_page): allow negative indices (-1) as alias for
4342         the last page.
4343
4344         * gtk/gtkentry.h:
4345         * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
4346         arguments GtkEntry::max_length and GtkEntry::visibility.
4347         (gtk_entry_adjust_scroll): queue a redraw.
4348
4349         * gtk/gtkeditable.h:
4350         * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
4351         object arguments GtkEditable::text_position and GtkEditable::editable.
4352         new (action) signal GtkEditable::set_editable.
4353         provide a default handler for GtkEditable::changed that queues a redraw.
4354
4355         * gtk/gtktext.h: 
4356         * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
4357         set_editable.
4358
4359 Thu Jul 16 14:42:11 1998  Lars Hamann  <lars@gtk.org>
4360
4361         * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
4362         case of drag_target == NULL
4363         * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
4364         Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
4365         * gtk/gtkfilesel.c (gtk_file_selection_file_button,
4366         gtk_dir_selection_file_button): fix due to changes in clist's
4367         select_row signal.
4368
4369 Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
4370
4371         * gtk/gtkwidget.h:
4372         * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
4373         similar to gtk_widget_set_uposition(). that is: -1=unspecified,
4374         -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
4375         to be gint16s rather than guint16s, since that's what the code expected
4376         (for a long time actually).
4377
4378         * gtk/gtkviewport.c:
4379         added support for object arguments: GtkViewport::shadow_type,
4380         GtkViewport::vadjustment and GtkViewport::hadjustment.
4381         (gtk_viewport_add): chain gtk_bin_add.
4382
4383         * gtk/gtkscrolledwindow.c: 
4384         added support for object argument: GtkScrolledWindow::hscrollbar_policy,
4385         GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
4386
4387         * gtk/gtkadjustment.h: 
4388         * gtk/gtkadjustment.c: 
4389         * gtk/gtkctree.h: 
4390         * gtk/gtkclist.h: 
4391         * gtk/gtkctree.c: 
4392         * gtk/gtkclist.c:
4393         * gtk/gtkscrolledwindow.h:
4394         * gtk/gtkscrolledwindow.c:
4395         * gtk/gtkviewport.h:
4396         * gtk/gtkviewport.c:
4397         GtkType and macro fixups.
4398
4399 Thu Jul 16 01:10:02 1998  Lars Hamann  <lars@gtk.org>
4400
4401         * gtk/gtkctree.h :
4402         * gtk/gtkctree.c :
4403         Added focus handling, horizontal and vertical autoscrolling,
4404         extended Selection Mode, key bindings
4405         Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
4406         Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
4407         Removed gtk_ctree_clear.
4408         
4409         * gtk/gtkclist.h :
4410         * gtk/gtkclist.c : 
4411         Added focus handling, horizontal and vertical autoscrolling,
4412         extended Selection Mode, key bindings
4413
4414 Wed Jul 15 12:39:27 1998  Raph Levien  <raph@acm.org>
4415
4416         * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
4417         source tree. For more information on GdkRgb, please see:
4418         http://www.levien.com/gdkrgb/
4419
4420         * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
4421         bothers me slightly that the feature is in gdk, and this file is
4422         in gtk, but it's probably ok.
4423
4424         * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
4425
4426         * gdk/gdkrgb.c:
4427         * gdk/gdkrgb.h: Added this module.
4428
4429         * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
4430
4431         * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
4432
4433 Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>
4434
4435         * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
4436         to this function. it needs to relookup the signal multiple times.
4437         this fixes spurious segfaults that could show up with signal intensive
4438         code, when classes are created during a pending emission (which is
4439         normal case).
4440
4441 Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>
4442
4443         * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
4444         child if it isn't a label.
4445
4446 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
4447
4448         * gtk/gtkdialog.h: 
4449         * gtk/gtkseparator.h: 
4450         * gtk/gtkhseparator.h: 
4451         * gtk/gtkvseparator.h: macro and GtkType fixups.
4452
4453 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
4454
4455         * gtk/testgtk.c (create_cursors): display the current cursor name.
4456
4457         * gtk/gtktypeutils.h: 
4458         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
4459         the fundamental type definition. the GtkArg union now only covers
4460         the required storage types for argument values. adapted the GTK_VALUE_*
4461         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
4462
4463         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
4464         code, fixed int/float collection. fixed a bug in the sanity checking
4465         code for GtkObjects.
4466
4467         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
4468         argument collection code.
4469
4470         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
4471         macros when distinguishing the return type.
4472
4473 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
4474
4475         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
4476           is not NULL before trying to g_list_remove the child. A patch
4477           from Michael Lausch.
4478
4479 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
4480
4481         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
4482         collection (always casted to doubles upon argument passing).
4483
4484 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
4485
4486         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
4487         object_init_func for derived objects with the object's ->klass field
4488         still pointing to the corresponding base class, otherwise overridden
4489         class functions could get called with partly-initialized objects.
4490         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
4491
4492 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
4493
4494         * gtk/gtkobject.h:
4495         * gtk/gtkobject.c:
4496         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
4497
4498         * gtk/gtkcontainer.h:
4499         * gtk/gtkcontainer.c:
4500         (gtk_container_child_arg_get_info): new function which wraps
4501         gtk_arg_get_info().
4502
4503 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
4504
4505         * gtk/gtkcontainer.c:
4506         (gtk_container_arg_get): 
4507         (gtk_container_arg_set): 
4508         * gtk/gtkobject.c:
4509         (gtk_object_arg_set): 
4510         (gtk_object_arg_get):
4511         strictly check for the associated get/set arg functions. if an
4512         arg is readable or writable, the associated class functions *must*
4513         be provided.
4514
4515 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
4516
4517         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
4518         padding into account if there is an accelerator.
4519
4520 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
4521
4522         * gtk/gtkcontainer.c:
4523         (gtk_container_add_with_args): collect the arguments with
4524         gtk_container_child_args_collect, not through gtk_object_args_collect.
4525         (gtk_container_child_set): likewise.
4526
4527 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
4528
4529         * gtk/gtktypeutils.h: 
4530         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
4531         which is derived from GTK_TYPE_STRING.
4532
4533         * gtk/gtkbindings.c: reworked the argument type handling.
4534
4535 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4536
4537         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
4538           so that it seems to allow normal operation in those modes,
4539           although you will only see black  (GIMP toolbar now pops up,
4540           just don't create a new image and GIMP now works in 4 bit.)
4541
4542 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4543
4544         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
4545           array, which was too low (?)
4546
4547 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
4548
4549         * gtk/gtkcontainer.h: 
4550         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
4551         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
4552         we now export a new function gtk_container_child_args_collect().
4553         for consistency with the object arguments, a few functions got renamed:
4554         gtk_container_child_arg_get -> gtk_container_child_get,
4555         gtk_container_child_arg_set -> gtk_container_child_set,
4556         gtk_container_child_arg_getv -> gtk_container_child_getv,
4557         gtk_container_child_arg_setv -> gtk_container_child_setv,
4558         gtk_container_add_with_argv -> gtk_container_addv.
4559         note, gtk_container_add_with_args() remained, because its equivalent
4560         would be gtk_container_add(,, ...) which would break all existing code.
4561         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
4562         we expect the `arg_name' argument to be a const static string now.
4563         (gtk_container_get_child_arg_type): function removed.
4564
4565 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
4566
4567         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
4568         this is a static inline function that collects command line arguments
4569         from a va_list. this file can just be included in all places that
4570         need this functionality.
4571
4572         * gtk/gtkarg.h: 
4573         * gtk/gtkarg.c: new files which implement most of the argument
4574         handling stuff from gtkobject.c. also collected a few more
4575         gtk_arg_* utility functions from else places.
4576
4577         * gtk/gtkobject.h: 
4578         * gtk/gtkobject.c: moved most of the argument handling code into
4579         gtkarg.c. we now export gtk_object_args_collect() as a non-public
4580         method with a blind va_list pointer.
4581         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
4582         const static string now.
4583         (gtk_object_get_arg_type): function got removed.
4584
4585         * gtk/gtkwidget.c: 
4586         (gtk_widget_set): 
4587         (gtk_widget_new): adaptions for gtk_object_args_collect().
4588
4589         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
4590         fundamental type name so as to have a valid prefix, e.g. "bool"->
4591         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
4592         though that should probably be something like GtkNone since the
4593         type itself is called GTK_TYPE_NONE.
4594         even the internal type names need to avoid name clashes and must live
4595         in their own namespace, several code portions rely on that.
4596         we should relly have typedefs such as typedef gchar* GtkString; so the
4597         fundamental type names can be used for code dumpers just like with all
4598         the Gtk/Gdk types.
4599
4600 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
4601
4602         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
4603         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
4604         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
4605         (GTK_RELIEF_HALF).
4606         (gtk_button_paint): set the background for prelighted buttons with
4607         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
4608         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
4609         the shadow type (otherwise we get strange shadows for coloured buttons).
4610         (gtk_button_set_relief): queue a redraw after changing
4611         the relief.
4612         (gtk_button_class_init): 
4613         (gtk_button_set_arg): 
4614         (gtk_button_get_arg): added object argument "GtkButton::relief".
4615
4616         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
4617
4618 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
4619
4620         * gtk/gtkbutton.h:
4621         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
4622         GTK_BIN (button)->child to button->child to keep source compatibility.
4623
4624         * gtk/gtkoptionmenu.c:
4625         * gtk/gtkclist.c:
4626         * gtkcheckbutton.c: don't refer to button->child, but
4627         GTK_BIN (button)->child instead.
4628
4629 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
4630
4631         * docs/gtkfaq.sgml: update anon CVS info
4632
4633 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
4634
4635         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
4636         functions.
4637
4638         * gdk/gdkwindow.c:
4639         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
4640         to XFree() calls.
4641
4642 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4643
4644         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
4645         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
4646
4647 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
4648
4649         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
4650
4651 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
4652
4653         * gtk/gtkwidget.h:
4654         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
4655
4656         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
4657         error that prevented signal to entry addition for signals with
4658         parameters.
4659
4660 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
4661
4662         * ltconfig: fix for properly detecting shared lib support on
4663         SunPro cc (taken from libtool 1.2.a)
4664
4665 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
4666
4667         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
4668
4669 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
4670
4671         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
4672         rc set pattern is favoured, this is needed for overriding of style
4673         patterns with subsequently parsed rc files.
4674
4675 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
4676
4677         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
4678         error messages.
4679
4680 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
4681
4682         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
4683         modifier as well.
4684         (gtk_accelerator_name): add "<Release>" to the accelerator name if
4685         neccessary.
4686
4687         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
4688         account.
4689
4690         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
4691         default handler for key-release events, which checks for activation
4692         of GDK_RELEASE_MASK key bindings.
4693
4694         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
4695
4696 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
4697
4698         * gtk/gtkarrow.h: GtkType and macro fixups.
4699         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
4700         "GtkArrow::shadow_type".
4701
4702 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
4703
4704         * gtk/gtkalignment.h:
4705         * gtk/gtkbin.h: GtkType and macro fixups.
4706         
4707         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
4708         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
4709         GtkAlignment::xscale, GtkAlignment::yscale.
4710
4711 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
4712
4713         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
4714         fucntions from all parent types upon class initialization.
4715
4716         * gtk/gtkcontainer.c:
4717         (gtk_container_get_type): announce gtk_container_base_class_init to
4718         the type system.
4719         (gtk_container_base_class_init): new function to feature base class
4720         initialization.
4721         (gtk_container_get_child_arg): 
4722         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
4723         and set_child_arg methods of the class indicated through the argument
4724         name.
4725
4726         * gtk/gtkobject.c:
4727         (gtk_object_base_class_init): new function to feature base class
4728         initialization.
4729         (gtk_object_init_type): announce gtk_object_base_class_init to the type
4730         system.
4731         (gtk_object_class_init): setup the get_arg and set_arg pointers for
4732         GtkObjectClass.
4733         (gtk_object_setv): 
4734         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
4735         instead of bothering the type system with this.
4736
4737         * gtk/gtkaccellabel.c: 
4738         * gtk/gtkbutton.c: 
4739         * gtk/gtkradiobutton.c: 
4740         * gtk/gtktable.c:
4741         * gtk/gtktogglebutton.c: 
4742         * gtk/gtktipsquery.c: 
4743         * gtk/gtkbox.c: 
4744         * gtk/gtkpacker.c: 
4745         * gtk/gtkwidget.c: 
4746         * gtk/gtkwindow.c: 
4747         * gtk/gtkframe.c: 
4748         * gtk/gtkmisc.c:
4749         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
4750         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
4751         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
4752         arg functions to take a GtkObject argument.
4753
4754         gtk/gtkadjustment.c:
4755         gtk/gtkalignment.c:
4756         gtk/gtkarrow.c:
4757         gtk/gtkaspectframe.c:
4758         gtk/gtkbbox.c:
4759         gtk/gtkbin.c:
4760         gtk/gtkcheckbutton.c:
4761         gtk/gtkcheckmenuitem.c:
4762         gtk/gtkclist.c:
4763         gtk/gtkcolorsel.c:
4764         gtk/gtkcombo.c:
4765         gtk/gtkctree.c:
4766         gtk/gtkcurve.c:
4767         gtk/gtkdata.c:
4768         gtk/gtkdialog.c:
4769         gtk/gtkdrawingarea.c:
4770         gtk/gtkeditable.c:
4771         gtk/gtkentry.c:
4772         gtk/gtkeventbox.c:
4773         gtk/gtkfilesel.c:
4774         gtk/gtkfixed.c:
4775         gtk/gtkfontsel.c:
4776         gtk/gtkgamma.c:
4777         gtk/gtkhandlebox.c:
4778         gtk/gtkhbbox.c:
4779         gtk/gtkhbox.c:
4780         gtk/gtkhpaned.c:
4781         gtk/gtkhruler.c:
4782         gtk/gtkhscale.c:
4783         gtk/gtkhscrollbar.c:
4784         gtk/gtkhseparator.c:
4785         gtk/gtkimage.c:
4786         gtk/gtkinputdialog.c:
4787         gtk/gtkitem.c:
4788         gtk/gtkitemfactory.c:
4789         gtk/gtklist.c:
4790         gtk/gtklistitem.c:
4791         gtk/gtkmenu.c:
4792         gtk/gtkmenubar.c:
4793         gtk/gtkmenuitem.c:
4794         gtk/gtkmenushell.c:
4795         gtk/gtknotebook.c:
4796         gtk/gtkoptionmenu.c:
4797         gtk/gtkpaned.c:
4798         gtk/gtkpixmap.c:
4799         gtk/gtkpreview.c:
4800         gtk/gtkprogressbar.c:
4801         gtk/gtkradiomenuitem.c:
4802         gtk/gtkrange.c:
4803         gtk/gtkruler.c:
4804         gtk/gtkscale.c:
4805         gtk/gtkscrollbar.c:
4806         gtk/gtkscrolledwindow.c:
4807         gtk/gtkseparator.c:
4808         gtk/gtkspinbutton.c:
4809         gtk/gtkstatusbar.c:
4810         gtk/gtktext.c:
4811         gtk/gtktoolbar.c:
4812         gtk/gtktooltips.c:
4813         gtk/gtktree.c:
4814         gtk/gtktreeitem.c:
4815         gtk/gtkvbbox.c:
4816         gtk/gtkvbox.c:
4817         gtk/gtkviewport.c:
4818         gtk/gtkvpaned.c:
4819         gtk/gtkvruler.c:
4820         gtk/gtkvscale.c:
4821         gtk/gtkvscrollbar.c:
4822         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
4823         match the modified GtkTypeInfo structure.
4824
4825 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
4826
4827         * gtk/testgtk.c: use rand() instead of random() for portability
4828
4829 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
4830
4831         * configure.in
4832         * acconfig.h
4833         * gdk/gdk.c: use native Xlib XConvertCase if it's available
4834
4835 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
4836
4837         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
4838         XConvertCase() functionality from X11R6 on X11R5 systems.
4839
4840 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
4841
4842         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
4843         gdk_string_height, gdk_char_height to retrieve the exact
4844         height of a text.
4845
4846 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
4847
4848         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
4849           by Stefan Mars <mars@lysator.liu.se>
4850         * examples/clist/clist.c examples/clist/Makefile: example code
4851           for GtkCList widget from the Tutorial
4852
4853 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
4854
4855         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
4856         if the container is not visible, we might be a toplevel! this holds
4857         for all other base container implementations as well, that are
4858         candidates to derive toplevels from. in general the resizing code will
4859         care about visibility itself.
4860         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
4861         * gtk/gtkbox.c (gtk_box_remove): likewise.
4862
4863         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
4864         gtk_window_set_hints(), since we haven't calculated the new position
4865         yet.
4866
4867         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
4868         *mask are alway initialized in a sane way, regardless of the return
4869         value.
4870
4871 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
4872
4873         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
4874         to gtk_container_child_arg_setv, but takes a variable argument list.
4875         new function gtk_container_get_child_arg_type, which is needed by
4876         gtk_object_collect_args.
4877
4878         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
4879         take a function pointer to figure the argument type.
4880         adapted callers to pass gtk_object_get_arg_type.
4881         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
4882         gtk_object_get_arg_type..
4883
4884         * gtk/gtkpacker.h: 
4885         * gtk/gtkpacker.c:
4886         (gtk_packer_reorder_child): new function to change the packing order
4887         of a child.
4888         (gtk_packer_size_request): 
4889         (gtk_packer_size_allocate): take container->border_width into acount.
4890
4891         * gtk/gtkpacker.c: implemented widget arguments:
4892         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
4893         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
4894         implemented child arguments:
4895         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
4896         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
4897         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
4898         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
4899
4900         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
4901         not the alignment.
4902
4903         * gtk/gtkeventbox.h:
4904         * gtk/gtkeventbox.c: GtkType and macro fixups.
4905
4906         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
4907         sensitivity of an entry.
4908
4909         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
4910         for insensitive base and text.
4911
4912         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
4913         widget state dependent.
4914         (gtk_entry_style_set): likewise.
4915         (gtk_entry_state_changed): set background color on state changes.
4916         (gtk_entry_draw_text): for non selected text, use state dependent
4917         colors.
4918
4919         * gtk/gtktogglebutton.c: support for widget arguments
4920         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
4921
4922 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
4923
4924         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
4925         code for 1.0.x-like parameters. Changed internal interface of
4926         gtk_spin_button_real_spin. Several fixes to avoid emission of
4927         "value_changed" where possible.
4928
4929 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
4930
4931         * gtk-boxed.defs: s/GkWidget/GtkWidget/
4932
4933 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
4934
4935         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
4936         to select the resize_mode for the idle-labels container.
4937
4938         * gtk/gtkframe.h: 
4939         * gtk/gtkframe.c: GtkType and macro corrections.
4940
4941         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
4942         support widget argument "GtkRadioButton::group".
4943
4944 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
4945
4946         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
4947         unconditionally if resize_mode has changed.
4948
4949         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
4950         GTK_RESIZE_QUEUE on the scrolled window.
4951         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
4952
4953 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
4954
4955         * gtk/gtkcontainer.h:
4956         * gtk/gtkcontainer.c:
4957         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
4958         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
4959         (gtk_container_queue_resize): new function to queue a container for
4960         a *size* reallocation (doesn't affect its position, and thus its
4961         parent is left untouched usually).
4962         (gtk_container_get_resize_container): new function to retrive the next
4963         most resize container which is not itself queued for a resize.
4964         (gtk_container_idle_sizer): new function to carefully process the
4965         container_resize_queue since it can change during invokation of
4966         gtk_container_check_resize().
4967         (gtk_container_resize_children): total rework of this function to
4968         properly handle resize containers. makes a lot of assumptions whitch
4969         are stated in the comments.
4970
4971         * gtk/gtkcontainer.c:
4972         (gtk_container_real_check_resize): only requeue ourselves if we are not
4973         a resize container.
4974         (gtk_container_clear_resize_widgets): care for automatic deletion of our
4975         resize_widgets list on size_allocate through a handler connection.
4976
4977         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
4978         focus and default widget of a window, so to take the burden from
4979         gtk_widget_unparent.
4980
4981         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
4982         to be clever, but actually messed up the resize_children logic and
4983         caused unneccessary allocations on its whole branch. besides this,
4984         it messed up the display by not invoking a redraw after the allocation.
4985
4986         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
4987         that it is the child again that is queued for a resize.
4988         (gtk_table_attach): likewise.
4989         (gtk_table_remove): likewise.
4990
4991 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
4992
4993         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
4994         gtk_entry_adjust_scroll.  Required if you change the cursor
4995         position and want to sync it up with your code (Midnight Commander
4996         gtk front end needs this).
4997
4998         * gtk/gtktable.c: Deal with tables that have size 0, 0.
4999
5000 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
5001
5002         * examples/README.1ST: new file to explain how the
5003           code examples should be extracted from the tutorial.
5004
5005 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
5006
5007         * gtk/gtkctree.c (draw_row): added new "line style"
5008         GTK_CTREE_LINES_TABBED 
5009         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
5010         search the glist pointer of an GtkCTreeRow
5011
5012 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
5013  
5014         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
5015         from, and clean up, the dependencies.  Generate to intermediate
5016         files to prevent problems with Ctrl-C.
5017
5018         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
5019
5020 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
5021
5022         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
5023         - Bug fix for precision problem causing occasional double emission 
5024           of "value_changed" signal (hopefully works now).
5025         - API change (should be binary compatible) : 
5026           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
5027           Modified cursor example appropriately.
5028           To spin by something other than step_/page_increment, use
5029           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
5030         - Made GTK_SHADOW_NONE the default. ;)
5031         - Fixed casting of GtkAdjustment* to GtkWidget* in
5032           gtk_spin_button_value_changed.
5033
5034 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
5035
5036         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
5037         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
5038         resize widget list before queuing the container for a new reize.
5039         (gtk_container_need_resize): changed return value to FALSE, since this
5040         used to indicate that no further resizes are needed.
5041         (gtk_container_set_arg): 
5042         (gtk_container_get_arg): 
5043         (gtk_container_class_init): implemented GtkContainer::resize_mode
5044         argument.
5045
5046         (gtk_container_resize_children): when we walk up the tree of a resize
5047         widget we need to stop if we are the current parent.
5048
5049         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
5050         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
5051         (gtk_widget_hide_all): retrive the toplevel widget from via
5052         gtk_widget_get_resize_container().
5053
5054 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
5055
5056         * gtk/gtklist.c (gtk_list_button_press): Only respond
5057           to selection with button 1. This allows context-sensitive
5058           menus to work correctly.
5059
5060 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
5061
5062         * gtk/gtkaccelgroup.c: 
5063         * gtk/gtkbindings.c: 
5064         * gtk/gtkcontainer.c:
5065         * gtk/gtkitemfactory.c:
5066         * gtk/gtkobject.c: 
5067         * gtk/gtksignal.c:
5068         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
5069         g_quark_from_static_string calls to save memory.
5070
5071         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
5072         function _after_ the new data has been setup.
5073         minor changes to object data functions to feature the GQuark type.
5074
5075 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
5076
5077         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
5078           from argv.
5079
5080 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
5081
5082         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
5083           to be more readable perl, to spit out stuff that looks
5084           more like readable C, and to pipe output through indent
5085           so output looks a lot like readable C. No functional
5086           changes.
5087
5088 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
5089
5090         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
5091           necessary when switching to a masked pixmap. (Based on a patch
5092           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
5093
5094 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
5095
5096         * gtk/gtkeditable.[ch]: Added action signals for keyboard
5097           bindings. (move_cursor, kill_word, etc, etc, etc). 
5098
5099           removed the time argument from
5100           gtk_editable_cut/copy/paste_clipboard (source but not
5101           binary incompatible...) Instead get time from
5102           gtk_get_current_event ().
5103         
5104         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
5105           signals.
5106
5107 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
5108
5109         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
5110
5111         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
5112              parent class to GtkNotebookClass when splitting the widget in
5113              two.  Also updated some comments.
5114
5115         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
5116                button without a font selected.
5117
5118              Fixed bug in set_font_name - I hadn't updated the code to
5119                search for the style in the font_style clist - it was
5120                still assuming the style row was equal to its index,
5121                but it isn't any more.
5122         
5123              Changed 'Reset' button on filter page to 'Clear Filter'.
5124              Deleted old code relating to the old 'Filter Fonts' toggle
5125              Updated some comments.
5126              Cleared 'Actual Fontname' if no font is set.
5127
5128         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
5129              destroying the GtkFontSelection instead of the
5130              GtkFontSelectionDialog.
5131
5132 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
5133
5134         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
5135           flag to make all warnings fatal errors.
5136
5137         * gtk/testthreads.c: moved <pthreads.h> include inside 
5138           #ifdef USE_PTHREADS
5139
5140 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
5141
5142         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
5143           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
5144
5145         - Added new function gtk_container_set_resize_mode() for
5146           fine-grained control of where resize-queueing is done.
5147
5148         - Removed GtkContainer::need_resize and GtkWindow::move_resize
5149         - Added GtkContainer::check_resize to replace need_resize.
5150
5151         - Added function gtk_container_check_resize() to trigger
5152           queued resizes, and gtk_container_resize_children() to
5153           Figure which children need to be size-allocated. (logic
5154           moved from gtkwindow.c)
5155
5156         - Reorganized code in gtkwindow.c
5157         
5158         - Set the resize-mode for viewports so that resizes within
5159           a viewport don't propagate out of it. 
5160         
5161 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5162
5163         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
5164
5165         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
5166         g_return_val_if_fail, because the function *does* return a value.
5167
5168 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
5169
5170         * gtk/gtkaccellabel.h:
5171         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
5172         request the size of the accelerator portion of an accel label.
5173         (gtk_accel_label_size_request): don't request for the accelerators size.
5174         (gtk_accel_label_expose_event): only draw the accelerator if we got
5175         enough extra space.
5176
5177         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
5178         width from children.
5179
5180         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
5181         object (after removal has been requested) check if there is still an
5182         accelerator remaining to avoid adding two accelerators on an object.
5183         this can happen for locked accelerators (or accelerator-frozen widgets).
5184         (gtk_menu_size_request): feature childrens accelerator width in size
5185         requests.
5186
5187         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
5188         gtk_widget_freeze_accelerators() for dynamically created menu items.
5189
5190         * gtk/gtksignal.h: 
5191         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
5192         which will return a handler_id > 0 if the specified function is pending
5193         for `signal_id'.
5194
5195         * gtk/gtkwidget.h:
5196         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
5197         a signal handler function to stop accelerator addition.
5198         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
5199         which will prevent (undo) any accelerators from being added to or
5200         removed from a widget.
5201
5202 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
5203
5204         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
5205         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
5206         acceleration, new API gtk_spin_button_set_snap_to_ticks.
5207
5208 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
5209
5210         * gdk/gdk.h:
5211         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
5212         the current GdkWindow the pointer is on if there is any.
5213         
5214         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
5215         and one column, so we don't construction logic at all. changed a few
5216         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
5217         unsigned int wraps.
5218
5219         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
5220         portion, added an additional check for parent != widget.
5221
5222         * more GtkType and macro fixups.
5223
5224 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5225
5226         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
5227         "clip" parameter, which is the clipping rectangle to use.  This
5228         eliminates the extremely annoying flicker when exposing parts of
5229         the handlebox.
5230
5231 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
5232
5233         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
5234         resizing
5235
5236 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
5237
5238         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
5239         != 0 on the argument.
5240
5241         * gtk/gtktable.h: 
5242         * gtk/gtktable.c: new function gtk_table_resize() which allowes
5243         shrinking and expanding of tables. implementation of widget arguments
5244         and child arguments. many signedness corrections.
5245
5246 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
5247
5248         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
5249         not only the child, otherwise we might end up taking away other
5250         childrens space after the resize.
5251
5252         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
5253         an unknown menu path from any source, that path must always be flagged
5254         as "modified", since we don't really know whether it has its default
5255         value or not.
5256
5257         * gtk/gtktree.c:
5258         * gtk/gtkpacker.c:
5259         * gtk/gtknotebook.c:
5260         * gtk/gtkmenushell.c:
5261         * gtk/gtklist.c:
5262         * gtk/gtkpaned.c:
5263         * gtk/gtkfixed.c: 
5264         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
5265
5266         * gtk/gtkbox.h: 
5267         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
5268         arguments. implemented child arguments.
5269
5270         * more GtkType and macro fixups.
5271
5272 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
5273
5274         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
5275
5276         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
5277         and gtk_clist_get_hadjustment.
5278
5279         * gtk/gtkcontainer.c:
5280         implementation of children arguments, new class member functions
5281         (child_type), (get_child_arg) and (set_child_arg) plus a new field
5282         n_child_args.
5283         (gtk_container_child_type): new function which returns the type of a
5284         child that the container expects for its next addition.
5285         (gtk_container_add_child_arg_type): new function to introduce a new
5286         child argument at class creation time.
5287         (gtk_container_query_child_args): new function to query all child
5288         arguments that are supported by a container class.
5289         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
5290         child argument.
5291         (gtk_container_child_arg_setv): new function to set a child argument for
5292         a certain container and child combination.
5293         (gtk_container_add_with_args):
5294         (gtk_container_add_with_argv): new functions to feature addition of a
5295         new child in combination with the setting of certain child arguments.
5296
5297         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
5298         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
5299         this should really be done through class cretion hooks some day.
5300
5301         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
5302         guint : 16.
5303
5304         * gtk/gtkpacker.h:
5305         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
5306         follow the gtk convention for lower case variable names (important
5307         for language wrappers and widget arguments), and made them guint : 16.
5308
5309         * examples/packer/pack.c: adaptions for the case converted GtkPacker
5310         fields.
5311
5312 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
5313
5314         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
5315         change the character pair for single line comments.
5316         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
5317         GtkItemFactoryClass.
5318         (gtk_item_factory_parse_rc_string): likewise.
5319
5320 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
5321
5322         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
5323         lists from the klass structure to a static structure
5324         in gtkfontsel.c; cleans up global the namespace.
5325
5326 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
5327
5328         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
5329         bug with /*< skip >*/ and remove warning.
5330         
5331 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
5332
5333         * gtk/Makefile.am: Made the gtkmarshal.* generation
5334         rules maintainer-only.
5335
5336 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
5337
5338         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
5339           gtk/Makefile.am gtk/makenums.pl 
5340
5341         Removed out the G_ENUM/FLAGS mechanism in favor
5342         of a perl script that parses the standard headers
5343         (with occasional /*< nick=foo >*/ style overrides)
5344         and extracts the enumerations.
5345
5346           gtk/maketypes.awk: Small improvments to the
5347           translation of names. (Avoid splitting gc into
5348           g_c_.)
5349         
5350 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
5351
5352         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
5353         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
5354         
5355 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
5356
5357         * gtk/gtkentry.c:
5358         - Restored gtk_entry_adjust_scroll to static 
5359         - Changed text positioning code so that we always
5360           display as large a portion of the text as possible.
5361
5362 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
5363
5364         * gtk/gtktext.c (gtk_text_finalize): Free internal
5365         structures of text widget. Also, unreference pixmaps
5366         when unrealizing.
5367         
5368 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
5369
5370         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
5371         3.3.1 bug workaround to number keys starting at 1.
5372
5373 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
5374
5375         * docs/gtk_tut.sgml: Fixed urls for complete example
5376         source for scribble+widget-writing examples.
5377
5378 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
5379
5380         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
5381         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
5382         specs of the form c #abcdef [ more keys ] properly.
5383
5384 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
5385
5386         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
5387         (gtk_spin_button_set_shadow_type):
5388         New API to set the shadow type of the arrow panel.
5389
5390 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
5391
5392         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
5393         code for drawing the child in two places at once. Unfortunately,
5394         not only does it not work anymore (because reparenting has
5395         been fixed), but it also triggers reparent/expose loops
5396         in some cases.
5397
5398         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
5399         an unecessary unrealize.
5400
5401 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
5402
5403         * gdk/gdkwindow.c (gdk_window_reparent): Update the
5404           old and new parents' child window lists properly.
5405
5406 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
5407
5408         * gtk/gtkpacker.h:
5409         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
5410         and GtkSideType, to be consistent with the rest of Gtk's enum
5411         definitions. wrapped the enum definitions with the G_ eunm wrappers.
5412         spelled out the GTK_ANCHOR_* enum values, since single letters don't
5413         work out corectly as nick-names (left the old values as aliases).
5414         some signdness corrections (border-width, spacing), could stand more.
5415
5416 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
5417
5418         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
5419           Added gtkpacker
5420
5421         * examples/packer/pack.c, examples/packer/Makefile: Added
5422           gtkpacker example
5423
5424 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
5425
5426         * gtk/gtktext.c (remove_cache_line): Fixed broken
5427         list-removal code.
5428
5429         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
5430         Check bounds before deleting.
5431
5432 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
5433
5434         * autogen.sh: Support ACLOCAL_FLAGS
5435
5436 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
5437
5438         * gtk-config.in: Added missing quotes.
5439
5440 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
5441
5442         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
5443
5444 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
5445
5446         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
5447         G_COMPILED_WITH_DEBUGGING.
5448
5449         * configure.in (fd_set): Explain check better.
5450
5451         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
5452         the version from which gtk+'s libtool forked.  Needed for people
5453         who use post-1.2 alphas of libtool.
5454
5455 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
5456
5457         * glib/* Moved to glib module
5458
5459         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
5460           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
5461
5462           configuration changes for the above:
5463          
5464           - Use AM_PATH_GLIB by default to find glib; also accept
5465             a --with-glib option for using an uninstalled glib.
5466          
5467           - Put --enable-debug information into config.h so
5468             that we rebuild when it changes. (was in glibconfig.h)
5469
5470 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
5471
5472         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
5473
5474         * gtk/gtknotebook.h (struct _GtkNotebookClass):
5475         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
5476         added missing argument (according to Joseph Coleman's bug report)
5477
5478         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
5479         function to fix notebook focus handling
5480         
5481 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
5482
5483         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
5484           glib/gutils.c glib/testglib.c glib/gdataset.c
5485           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
5486           gtk/gtktext.c gtk/gtkbindings.c:
5487
5488          renamed g_const_pointer => gconstpointer
5489
5490 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
5491
5492         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
5493         invoked with (NULL, NULL); (this worked sometime ago).
5494
5495         * gtk/gtktypeutils.h: 
5496         * gtk/gtktypeutils.c: enum and flags type creation can now be done
5497         through gtk_type_register_enum() and gtk_type_register_flags(),
5498         which allow to specify the enum value arrays directly.
5499         the NULL terminated value arrays can be retrived through
5500         gtk_type_enum_get_values() and gtk_type_flags_get_values();
5501         (gtk_type_children_types): new function to query derived types.
5502
5503 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
5504
5505         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
5506         environment to genmarshal.pl.
5507         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
5508         rule), and removed it where not needed (in the dependencies).
5509
5510         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
5511
5512 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
5513
5514         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
5515         was just g_direct_hash.
5516
5517 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
5518
5519         * configure.in: x_libs=, not $x_libs=. Enough said.
5520           (Case only hit for --disable-xshm)
5521         
5522 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
5523
5524         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
5525           when testing for X libraries, don't replace them. Because
5526           the user might have specified the path to the X libraries
5527           themself before running configure.
5528
5529         * examples/**.c: Changed all gpointer * to gpointer
5530         
5531 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5532
5533         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
5534         fleur_cursor field.  Now the cursor is created/destroyed on demand
5535         by the routines that need it.
5536
5537         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
5538         (gtk_handle_box_motion): The fleur cursor is created and destroyed
5539         only when needed.
5540
5541 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
5542
5543         * gtk/gtktypeutils.h: 
5544         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
5545         gtk_enum_set_values to gtk_type_enum_get_values and
5546         gtk_type_enum_set_values respectively, since they are actually type
5547         system features.
5548
5549         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
5550         my last commit. ;)
5551
5552 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
5553
5554         * gtk/gtkselection.h: 
5555         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
5556         gtk_selection_data_free.
5557
5558         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
5559         for "selection_received", which was completely bogus.
5560         * other fixups to gtk_signal_new() calls all over the place.
5561
5562         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
5563         * gtk/gtktypebuiltins_vars.c: type variable implementations.
5564         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
5565         declarations.
5566         * gtk/gtktypebuiltins_evals.c: enum value arrays.
5567         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
5568         gtk.defs.
5569         * gtk/gtk.defs: generated file with scheme syntax for type definitions
5570         of gtk and gdk structures and enums.
5571         * gtk/gtktypeutils.h: 
5572         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
5573         macros anymore (this fixes binary incompatibility with new enum
5574         definitions).
5575
5576         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
5577         key bindings for this widget.
5578         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
5579         handler.
5580
5581         * gtk/gtkobject.h:
5582         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
5583         again. new functions gtk_object_class_user_signal_new () and
5584         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
5585         flag on the signal creation.
5586
5587 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
5588
5589         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
5590
5591 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
5592
5593         * gdk/gdkprivate.h: 
5594         * gdk/gdktypes.h: 
5595         * gtk/gtkprivate.h: 
5596         * gtk/gtkwidget.h: 
5597         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
5598
5599         * reworked enum value array generation code. gtk.defs is a generated
5600         file now.
5601
5602 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
5603
5604         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
5605         check menu items in the compatibility code (this required me to remove
5606         the "<check>" part from the menu item name, grrr).
5607
5608 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
5609
5610         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
5611         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
5612         
5613 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
5614
5615         * gtk/gtkitemfactory.h: 
5616         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
5617         additions to the dumping code to feature GtkPatternSpec.
5618         even found a bug to fix in the original code ;)
5619         
5620 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
5621
5622         * gtk/gtkitemfactory.c: support different types of callbacks, to
5623         maintain existing code.
5624
5625 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
5626
5627         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
5628
5629         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
5630         this should eventually be done by gentypeinfo.el somewhen.
5631         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
5632
5633         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
5634         enum values of an enum type.
5635
5636         * gtk/gtk.defs:
5637         * gtk/gtkcurve.h: 
5638         * gtk/gtkobject.h: 
5639         * gtk/gtkprivate.h: 
5640         * gtk/gtkwidget.h:
5641         * gtk/gtkenums.h: 
5642         brought enum/flags definitions in sync, added a few more enum
5643         definitions for bindings and pattern matching.
5644
5645         * some more macro and GtkType fixups in various places.
5646
5647         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
5648         as a key-release modifier for the binding system.
5649
5650 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
5651
5652         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
5653         was a stale list pointer that is already present in GtkMenuShell.
5654
5655         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
5656         GtkMenuShell::selection_done which is emitted after the menu shell
5657         poped down again and all possible menu items have been activated.
5658
5659 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
5660
5661         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
5662         before activation of the menuitem, so the menu is actually taken off the
5663         screen prior to any menu item activation.
5664
5665         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
5666         for NULL nodes.
5667
5668         * gtk/gtkwidget.h:
5669         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
5670         the emission of the "add-accelerator" signal on a widget. this is
5671         usefull to prevent accelerator installation on certain widgets.
5672
5673         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
5674         labels left justified, by setting their alignment. stop accelerator
5675         installation for the menu items, since we use dynamic menus.
5676
5677 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
5678
5679         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
5680         should *really* use GtkItemFactory. this is only for preserving source
5681         compatibility where possible, use of GtkMenuFactory is deprecated as of
5682         now.
5683
5684         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
5685         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
5686         missed this possibility when i added gtk_object_class_add_user_signal
5687         in late january.
5688
5689         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
5690
5691 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
5692
5693         * gtk/gtkaccelgroup.h: 
5694         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
5695
5696         * gtk/gtkaccellabel.h: 
5697         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
5698         display of the accelerators associated with a certain widget.
5699
5700         * gtk/gtkitemfactory.h: 
5701         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
5702         parsing and accelerator handling.
5703
5704         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
5705         positioning a menu.
5706         (gtk_menu_map): removed the allocation code.
5707         (gtk_menu_size_allocate): care for redrawing of children and resize
5708         our widget->window correctly.
5709         (gtk_menu_key_press): feature the new accelerator groups.
5710
5711         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
5712         submenu if neccessary.
5713
5714         * gtk/gtkmenuitem.c:
5715         * gtk/gtkcheckmenuitem.c:
5716         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
5717         function variants.
5718
5719         * gdk/gdk.c:
5720         (gdk_keyval_from_name): 
5721         (gdk_keyval_name): new functions for keyval<->key-name associations.
5722         (gdk_keyval_to_upper): 
5723         (gdk_keyval_to_lower): 
5724         (gdk_keyval_is_upper): 
5725         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
5726         regards to their cases.
5727
5728 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
5729
5730         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
5731         widget's class path.
5732         (gtk_widget_path): new function to calculate a widget's name path.
5733
5734         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
5735         pattern matching, features reversed pattern matches.
5736
5737 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
5738
5739         * examples/extract.sh, examples/extract.awk:
5740           New files to automagically extract code examples from the
5741           tutorial.
5742
5743 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
5744
5745         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
5746         * gtk/gtkcontainer.c (gtk_container_focus_move):
5747         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
5748
5749 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
5750
5751         * docs/gtk_tut.sgml: minor changes to support auto
5752           extraction of example code
5753
5754 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
5755
5756         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
5757           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
5758
5759 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
5760
5761         * docs/gtk_tut.sgml:
5762           - new section on Events
5763           - change all delete_event callbacks to include
5764             a GdkEvent parameter
5765           - clean up the formatting
5766
5767         * examples - helloworld.c, helloworld2.c, notebook.c,
5768           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
5769           rulers.c, table.c, wheelbarrow.c: change all delete_event
5770            callbacks to include a GdkEvent parameter.
5771
5772 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5773
5774         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
5775         field of crossing events.
5776         (struct _GdkEventCrossing): Added the following fields: time, x,
5777         y, x_root, y_root, mode, focus, state.
5778
5779         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
5780         crossing event structure.
5781
5782         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
5783         changes to the crossing event structure.
5784
5785 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
5786
5787         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
5788
5789 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
5790
5791         * docs/gtk_tut.sgml:
5792            - GtkTooltips, update to current API
5793            - change all 'gpointer *data' to 'gpointer data'
5794            - other minor changes
5795
5796 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
5797
5798         * configure.in (LDFLAGS): Bomb out with a moderately
5799           helpful message if detection of X libraries fails.
5800
5801 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
5802
5803   [ Combination of:
5804      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
5805      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
5806
5807         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
5808           gtk/gtksignal.c gtk/gtktext.c: 
5809
5810           Fixups for warnings from adding const to type of GHashFunc,
5811           GCompareFunc
5812         
5813         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
5814           ansi-warnings fixups.
5815
5816 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
5817
5818         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
5819         Locate child at (border_width,border_width), not
5820         (2*border_width,2*border_width). [ The border is _outside_
5821         widget->window ]
5822         
5823         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
5824           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
5825
5826 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
5827
5828         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
5829         used in gnome-libs
5830
5831 1998-05-22    <sopwith@redhat.com>
5832
5833         * gtk/gtkeventbox.c: Pass size_allocate on to the child
5834         regardless of whether it is visible or not. Also
5835         locate child at (border_width,border_width), not (0,0)
5836
5837 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
5838
5839         * gtk/gtkhandlebox.c: Added style_set handler.
5840
5841 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
5842  [ From: Chris Lahey  <clahey@umich.edu> ]
5843         
5844         * gtk/gtkeditable.c, gtk/gtkeditable.h,
5845           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
5846           and set_position functions to get and set the cursor position.
5847
5848         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
5849           signal status. Make GtkText do user-controlled insertion
5850           and deletion through the Editable widget so that these
5851           signals are properly emitted.
5852
5853         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
5854           display asterisks instead of empty space when visible = FALSE)
5855
5856 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
5857
5858         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
5859         signal.
5860
5861 1998-05-21    <sopwith@redhat.com>
5862
5863         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
5864         custom routine for loading images specified in gtkrc's.
5865
5866 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
5867
5868         * configure.in: Use pthread_attr_init() as a test function,
5869         since most of the rest of -lpthread is macros on DU4.
5870
5871 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
5872
5873         * gtk/gtkcombo.c: implemented completion in the entry.
5874
5875 1998-05-18    <sopwith@moebuis.labs.redhat.com>
5876
5877         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
5878
5879 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
5880
5881         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
5882         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
5883         to be of runtype GTK_RUN_LAST.
5884
5885         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
5886         "need-resize".
5887
5888         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
5889         "widget-selected".
5890
5891 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
5892
5893         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
5894         text retrived from GtkEntry. only intercept the Tab key if there
5895         was some text to complete.
5896
5897 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
5898
5899         Basic thread-awareness:
5900
5901         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
5902
5903         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
5904         gdk_threads_[init/enter/leave] for applications, plus
5905         gdk_threads_wake to wake the mainloop thread out of
5906         the select().
5907
5908         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
5909
5910 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
5911
5912         * gtk/testgtk.c (list_clear): Account for the fact
5913         that gtk_list_clear_items is not inclusive. (Clears
5914         [start, end))
5915
5916 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
5917
5918         * gdk/gdk.c: include gdkkeysyms.h always
5919         
5920
5921 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
5922
5923         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
5924         the visibility_notify_event method and changed method order.
5925
5926 1998-05-14    <sopwith@moebuis.labs.redhat.com>
5927
5928         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
5929
5930 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
5931
5932         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
5933         from Olli Helenius <ollhel@batman.jytol.fi>.
5934
5935         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
5936         freeing types.
5937         (gtk_type_set_chunk_alloc): new function to allow allocation of new
5938         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
5939         thorugh g_malloc).
5940
5941         * gtk/gtkobject.c (gtk_object_finalize): free an object through
5942         gtk_type_free().
5943
5944         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
5945         GtkButtons to 16.
5946         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
5947         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
5948
5949 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
5950
5951         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
5952           GPOINTER_TO_UINT fixes.
5953
5954         * gtk/gtksignal.c: Include <string.h> for memset.
5955
5956 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
5957         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
5958
5959         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
5960         Cleanups, comments and the ability to have rulers with 
5961         a reversed direction.
5962
5963 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
5964
5965         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
5966         that Sopwith missed when changing stat => lstat.
5967
5968 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
5969
5970         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
5971           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
5972         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
5973
5974         * gdk/gdk.c: Print sizeof() results
5975         as g_print("%ld", (glong)sizeof(foo)), to deal with
5976         sizeof() being long on Alpha's.
5977
5978         * gtk/testgtk.c: include <string.h> for strlen
5979
5980 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
5981         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
5982         
5983         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
5984         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
5985
5986         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
5987
5988 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
5989         (From: Christopher James Lahey <clahey@umich.edu>)
5990         
5991         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
5992           gtk/testgtk.c:
5993
5994         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
5995         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
5996         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
5997         the default relief for the toolbars buttons. Added an
5998         toggle for the toolbar test in testgtk.c.
5999
6000 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
6001
6002         * docs/gtk-config.1: Rewritten and hopefully improved.
6003
6004 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
6005
6006         * docs/Makefile.am
6007         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
6008
6009 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6010
6011         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
6012         GtkPreview's visual and colormap, otherwise things can BadMatch.
6013
6014         * gtk/testgtk.c (create_color_preview): 
6015         (create_gray_preview): Removed pushing/popping of visual/colormap
6016         now that GtkPreview does things correctly.
6017
6018         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
6019         (gtk_color_selection_draw_wheel): Pick the style from the correct
6020         place (the colorsel->wheel_area widget) so that the GCs will match
6021         with where we are going to paint to.
6022
6023         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
6024         of visual/colormap now that GtkColorSelection does things the
6025         right way.
6026
6027 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
6028
6029         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
6030         previously unused window->need_resize flag to mark if a window's
6031         descendents changed size while the window was not visible. In this
6032         case, when the window becomes visible, we reallocate everything,
6033         since we didn't keep track of what actually changed.
6034
6035         (Fixes bug where changing the popdown strings of a
6036         combo to something of the same length caused them to
6037         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
6038
6039 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
6040
6041         [security audit by Alan Cox]
6042
6043         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
6044         exceed maximum assumed size.
6045
6046         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
6047         not exceed maximum assumed size.
6048         (gtk_menu_factory_remove): likewise.
6049         (gtk_menu_factory_find_recurse): likewise.
6050
6051 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
6052
6053         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
6054         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
6055         redrawn if that is still neccessary. don't allow queueing of already
6056         destructed objects.
6057         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
6058         widgets which are in the queue can be destroyed safely, handle
6059         requeueing properly.
6060         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
6061         widgets which are in the queue can be destroyed/unrealized safely.
6062
6063 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
6064
6065         * gtkfaq.sgml: add question on multi-threading,
6066           minor URL cleanups.
6067
6068 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
6069
6070         * configure.in (cflags_set): preserve automake CFLAGS.
6071
6072         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
6073         and libgdk-1.1.la. this means we need to change certain portions of
6074         the Makefile.am on major/minor version bumps.
6075
6076         * ltmain.sh: the -release option is not required anymore.
6077         
6078         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
6079         of the first argument to be of type GtkObject. unconditionally compile
6080         this function. removed __GNUC__ dependancy of the gtk_object_ref and
6081         gtk_object_unref macro wrappers for this function.
6082
6083 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
6084
6085         * gtk/gtkobject.h:
6086         * gtk/gtkobject.c:
6087         (gtk_object_data_try_key):
6088         (gtk_object_data_force_id): these are now macros substituting the old
6089         functions. we just use the corresponding g_dataset_* functions for
6090         key->id associations. (this is to assure unique key<->id associations).
6091
6092 1998-05-10  Stefan Jeske  <stefan@gtk.org>
6093
6094         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
6095         to gboolean.
6096
6097         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
6098
6099 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
6100
6101         * configure.in (LIBS): Try to figure out if this
6102         is Digital Unix and we need -std1 to get the
6103         right prototypes.
6104
6105 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
6106
6107         * docs/gtk_tut_it.sgml: update of Italian tutorial
6108           translation from Daniele Canazza <dcanazz@tin.it>
6109
6110 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
6111
6112         * gtk/gtkfeatures.h.in: new file used as template for
6113         * gtk/gtkfeatures.h: new file to define macros indicating newly
6114         introduced features, such as GTK_HAVE_SIGNAL_INIT.
6115
6116         * gtk/gtksignal.c:
6117         (gtk_signal_emitv_by_name):
6118         (gtk_signal_emitv):
6119         new functions to emit signals with an already provided parameter set.
6120         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
6121         (gtk_signal_real_emit): prototype changes, so this functions always
6122         gets its parameters and signal structure as arguments.
6123         (gtk_signal_emit): provide the signal structure and parameter list for
6124         gtk_signal_real_emit.
6125         (gtk_signal_emit_by_name): likewise.
6126
6127 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
6128
6129         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
6130         signal connections through unsetting GTK_CONNECTED.
6131         (gtk_signal_handler_insert): reflect the presence of signal connections
6132         through setting GTK_CONNECTED.
6133         (gtk_signal_real_emit): only check for handler emissions if the object
6134         has the GTK_CONNECTED flag set.
6135         (gtk_signal_handler_pending): don't check for pending handlers if the
6136         GTK_CONNECTED flag is not set for this object.
6137
6138         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
6139         a GtkObject has signal handler connections.
6140
6141         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
6142         set for this object call gtk_signal_handlers_destroy().
6143         
6144         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
6145         multiple processing of macro args.
6146
6147         * gtk/gtktypeutils.c:
6148         * gtk/gtkobject.c:
6149         * gtk/gtkwidget.c:
6150         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
6151
6152 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
6153
6154         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
6155         draw-queue when we are done. 
6156
6157         (gtk_widget_queue_draw/_queu_resize): Always return
6158         FALSE and avoid having two idles at the same time.
6159         
6160 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
6161
6162         * gtk/gtktext.c: Various fixes to make sure cache
6163         lines are freed if line_start_cache doesn't point to the
6164         beginning of the cache.
6165
6166 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
6167
6168         * style_set improvements for GtkText and GtkEntry
6169
6170 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
6171
6172         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
6173         been initialized.
6174
6175 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
6176
6177         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
6178         data chunks through a global object data structure list. unlink
6179         object data before invoking its destroy function.
6180         (gtk_object_finalize): slight modification to allow usage of object
6181         data during object finalization.
6182
6183 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
6184
6185         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
6186         signal names, e.g. "signal-name" is now an alias for "signal_name".
6187         (gtk_signal_handler_new): allocate handlers through a global handler
6188         structure list, that's faster than memchunks.
6189         (gtk_emission_new): allocate emissions through a global emission
6190         structure list, that's faster than memchunks.
6191
6192 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
6193
6194         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
6195
6196         * ltmain.sh: added a new commandline flag -postfix similar to -release,
6197         but will immediately change the library name.
6198
6199         * gdk/Makefile.am:
6200         * gtk/Makefile.am: specify -postfix and -version-info
6201
6202         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
6203         GTK_BINARY_AGE. calculate LT_* variables for libtool.
6204
6205 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6206
6207         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
6208         background (fg_set -> bg_set confusion).
6209
6210 1998-05-06  Stefan Jeske  <stefan@gtk.org>
6211
6212         * gtk/testgtk.c (unselect_all): Removed code that caused an
6213         endless loop.
6214
6215 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
6216
6217         * gtk/gtksignal.c: reimplemented the signal storage system to use a
6218         linear array rather than a hash table.
6219         be carefull *not* to keep any GtkSignal pointers across invokations
6220         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
6221         general code cleanups, made all allocations through memchunks.
6222         (gtk_signal_lookup): we now do the lookup of signals through a key_id
6223         for the signal names to avoid multiple hashing of the signal name on
6224         lookups for the several hirarchy levels of an object.
6225
6226 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
6227
6228         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
6229         to speed things up and remove code duplication.
6230
6231         Reintegrated buffer overflow patches, and added
6232         some extra paranoia.
6233         
6234 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
6235
6236         * gdk/gdk.c (gdk_event_translate): A guint * was
6237         being passed where X expected a Keysym *, and
6238         keysyms are long's on Alpha Linux. This was causing
6239         segfaults in Xlib, apparently because of alignment.
6240         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
6241         
6242 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
6243
6244         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
6245         set GDK_EXPOSURE_MASK for DrawingAreas
6246
6247 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
6248
6249         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
6250         (superceded by RC file reparsing capabilities)
6251
6252         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
6253         events. (Shouldn't be sent to the InputOnly leader, which
6254         it is now by gdk_event_send_clientmessage_toall
6255
6256         * gtk/testgtk.c: Added extra button to rcfiles test
6257         to send out _GDK_READ_RCFILES events.
6258         
6259 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
6260
6261         * gtk/gtkselection.c (gtk_selection_clear): Fixed
6262         reversed conditionals that caused segfault on some
6263         platforms.
6264
6265 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
6266
6267         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
6268         cast to GTK_OBJECT for gtk_object_ref.
6269
6270 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
6271
6272         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
6273         checking for signal initialization in gtksignal.c.
6274
6275         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
6276         a long debugging period ;)
6277
6278 1998-05-05  Stefan Jeske  <stefan@gtk.org>
6279
6280         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
6281         New function to wrap XSetDashes; modified gtkctree.c to use it.
6282
6283 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6284
6285         * configure.in: Added $x_libs in the other_libraries field in the
6286         check for XShapeCombineMask.
6287
6288 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
6289
6290         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
6291         gtk_type_is_a().
6292         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
6293         linear array rather than a hash table. it actually speeded up testgtk
6294         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
6295         pointers across invokations of gtk_type_node_next_and_invalidate() and
6296         therefore gtk_type_unique()!
6297
6298         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
6299         inheritance of a class pointer.
6300         (GTK_OBJECT): modifications for speedups.
6301         (GTK_IS_OBJECT): likewise.
6302         (GTK_OBJECT_CLASS): likewise.
6303         (suggested by owen).
6304
6305         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
6306
6307         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
6308
6309         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
6310         since its derivation changed 4 month ago ;(. showed up with the unique
6311         type name checking code in gtk_type_unique().
6312
6313         * random guint->GtkType and macro fixups.
6314
6315 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
6316
6317         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
6318         Configure events that would result in a negative
6319         size.
6320
6321 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
6322
6323         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
6324         "glibconfig.h" and another about writing another IRC
6325         client.
6326
6327 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
6328
6329         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
6330         parameters to log are doubles. Digital Unix apparently
6331         is missing the argument in its prototype.
6332
6333 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
6334
6335         * gtk/gtklabel.c (gtk_label_state_changed): Don't
6336         force a clear until the widget is actually on
6337         screen.
6338
6339 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
6340
6341         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
6342         to make this consistent with the gtk-1-0 tree.
6343
6344 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
6345
6346         * configure.in acheader.h gdk/gdkwindow.c 
6347         Check for Shape extension both on the client and server
6348         side. (And, more importantly, check for the shape extension
6349         so we may include -lXext even when compiling with --disable-xshm)
6350
6351         Don't set override_redirect on all shaped windows. It isn't
6352         necessary.
6353
6354         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
6355         and foreign windows. Use this to check if we
6356         need to get the colormap from X.
6357
6358 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
6359
6360         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
6361         between the default and the button always in GTK_STATE_NORMAL.
6362
6363         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
6364         callback.
6365
6366 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
6367
6368         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
6369           Fix a buffer overflow on pixmaps that claim to have
6370           more than 31 characters per pixel.
6371
6372           (gdk_pixmap_read_string): Don't wrap around strings longer
6373           than half of address space ;-)
6374
6375         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
6376         that were used for printing integers.
6377
6378         * */* (almost):
6379
6380         Style: All 
6381           int foo () { ... }
6382         changed to
6383           int foo (void) { ... }
6384
6385         Even where there were proper prototypes elsewhere.
6386
6387         * gdk/gxid.c (handle_claim_device): Some extra checks.
6388         It isn't safe against being fed bad X id's, but at
6389         least it should be safe against deleting all your
6390         files.
6391
6392 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
6393
6394         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
6395         to set the adjustments value when there is no current emission.
6396         [ Removed by mutual agreement owt 5/3/1998 ]
6397
6398         * gtk/gtksignal.c: added new functions to retrive the number of
6399         existing emissions for a certain signal.
6400         (gtk_signal_n_emissions): new function.
6401         (gtk_signal_n_emissions_by_name): new function.
6402
6403 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
6404
6405         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
6406         set the current focus_child of a container, does proper referencing and
6407         adjusts the vadjustment/hadjustment associated with the focus widget.
6408
6409         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
6410         containers via gtk_container_set_focus_child.
6411
6412         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
6413         where appropriate.
6414
6415         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
6416         child since not every child removal goes through this function (this
6417         showed up after gtk_container_set_focus_child() started to reference the
6418         focus_child of a container).
6419
6420         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
6421         of a container from gtk_container_remove into this place.
6422
6423 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
6424
6425         * gtk/gtksignal.c: added new functions to operate on intermediate
6426         function pointers. implemented incremental blocking.
6427         (gtk_signal_disconnect_by_func): new function.
6428         (gtk_signal_handler_block_by_func): new function.
6429         (gtk_signal_handler_unblock_by_func): new function
6430
6431 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
6432
6433         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
6434         Always show the scrollbars when the policy is
6435         GTK_POLICY_ALWAYS...
6436
6437 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
6438
6439         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
6440         "value_changed" if we really passed a new value.
6441         (gtk_adjustment_changed): new function to emit the "changed" signal.
6442         (gtk_adjustment_set_value): new function to emit the "value_changed"
6443         signal.
6444
6445 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
6446
6447         * gtk/gtkcombo.c: Further changes to the way the window
6448         is popped up so that it will be compatible with 
6449         auto-scrolling in the future.
6450
6451 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
6452
6453         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
6454         the combo-list is empty since that will cause the combo to operate
6455         on a non existing GtkList window.
6456         (gtk_combo_get_pos): provide the combo list with a usfull default
6457         height if empty.
6458         (gtk_combo_popup_button_press): grab the focus.
6459         (gtk_combo_activate): grab the focus.
6460
6461 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
6462
6463         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
6464         function to reset the RC styles for a heirarchy
6465
6466         Clear the window background if necessary in
6467         gtk_window_style_set.
6468
6469         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
6470         rereads all previously read RC files.
6471
6472         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
6473         (Should it just be called gdk_get_toplevels?)
6474
6475         * gtk/testgtk.c: New test to reload RC files.
6476
6477 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
6478
6479         * gtk/gtkclist.h:
6480         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
6481         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
6482         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
6483         the GTK_ prefix (this solution involved less changes in the
6484         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
6485         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
6486         from lars & stefan to support the derivation of GtkCtree.
6487
6488         * gtkctree.h:
6489         * gtkctree.c:
6490         initial import of a tree widget derived from gtkclist, courtesy
6491         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
6492         it just damn rocks!
6493
6494 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
6495
6496         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
6497         for us.
6498         (gtk_list_insert_items):
6499         (gtk_list_remove_items_internal): 
6500         (gtk_list_clear_items): 
6501         remove a possible pointer grab, we might get thrown into a loop
6502         otherwise.
6503         (gtk_list_button_press): grab the pointer *before* selecting the child,
6504         because selection of items may cause the lists children to change,
6505         resulting in a grab release.
6506         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
6507         children.
6508         (gtk_list_shutdown): remove all children from the list.
6509         (gtk_real_list_unselect_child): 
6510         (gtk_real_list_select_child): *always* put our internal structures into
6511         sane state *before* signal emisions (i.e. list->selection updates prior
6512         to gtk_list_item_[de]select() calls).
6513
6514         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
6515         focused child walks out of the window.
6516         removed CAN_FOCUS for the combo arrow's button since it doesn't react
6517         to keyboard events ("clicked" connection is missing).
6518
6519 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
6520
6521         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
6522         getting colormap for FOREIGN windows to go along with
6523         Raster's fix for visuals.
6524
6525 Merges from gtk-1-0
6526 ===================
6527         
6528 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
6529
6530         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
6531         Check to catch the case when the viewport fits in either
6532         direction or both, instead of flip-flopping infinitely.
6533
6534         Only show/hide the scrollbars once at the end.
6535
6536 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
6537
6538         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
6539         Include the scrollbars in the foreach call.
6540         (gtk-fortier-980405-0.patch; 
6541          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
6542
6543         The notebook widget
6544         really should also include its tabs, but that might cause
6545         problems for programs if they
6546
6547 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
6548
6549         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
6550         resize if the size actually changed. 
6551         (gtk-johannes-980414-0.patch ;  
6552          johannes@nada.kth.se (Johannes Keukelaar) )
6553
6554 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
6555
6556         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
6557           ltmain.sh ltconfig config.sub config.guess:
6558
6559         Reverted back to libtool-1.2 (plus minor patches) so as not to
6560         force the issue for everyone else.
6561
6562 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
6563
6564         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
6565         Updated to libtool 1.2a.
6566
6567         * gtk/gtkclist.c: Draw the in-between lines with style->base
6568         instead of style->white.
6569         
6570 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
6571
6572         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
6573         Cache the colormap and children of a window locally
6574         instead of fetching them from the server when needed.
6575         Huge performance difference for creating/destroying
6576         windows.
6577
6578         * gtk/gtkstyle.c: Find the depth from the cached
6579         visual, instead of asking the server.
6580
6581         * gtk.m4: Distribute the new version which tries to
6582         figure out what went wrong and give helpful error
6583         messages.
6584
6585         * ltmain.sh ltconfig config.sub config.sh: 
6586         Updated to libtool 1.2a
6587
6588         * gtk/gtktext.c: Fixed a bug where the drawn level
6589         was being messed up when the text was scrolled
6590         during a deletion.
6591         
6592 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
6593
6594         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
6595         the filesystem under you (fix from Josh)
6596
6597 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
6598
6599         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
6600         if the viewport already exists before iterating over it, maybe we
6601         haven't been constructed yet.
6602
6603 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
6604
6605         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
6606         the GtkBin widget already has a child.
6607
6608         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
6609         check that child->parent == NULL;
6610
6611 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
6612
6613         * gtk/gtkselection.c (gtk_selection_clear): Only return
6614         FALSE when the clear event is been rejected, not when
6615         widget has already lost the selection. (Which should
6616         only happen when we are setting the selection to another
6617         widget ourself.)
6618         
6619 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
6620
6621         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
6622
6623         Removed the "check visibility after gtk_widget_unparent" bug 
6624         in hopefully the last three places.
6625
6626 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
6627
6628         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
6629         rc-files.
6630
6631 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
6632
6633         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
6634         for CAN_FOCUS widgets.
6635
6636         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
6637         adjustments for the table.
6638         (create_list): feature automatic adjustment of the scrolled window to
6639         always contain the focused child.
6640         (create_main_window): keep the focussed button always inside of the
6641         scrolled windoww.
6642
6643         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
6644         adjustments, to contain the allocation of the currently focused child.
6645         (gtk_container_set_focus_hadjustment): new functin to set the
6646         horizontal focus adjustment.
6647         (gtk_container_set_focus_vadjustment): new functin to set the vertical
6648         focus adjustment.
6649
6650         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
6651         clamp the currents adjustment page into a specific range.
6652
6653         * random GtkType fixups for gtk_*_get_type() functions.
6654
6655 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
6656
6657         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
6658         Account for the fact that gtk_tree_item_remove_subtree
6659         will be called recursively. 
6660
6661         Handle removing a collapsed subtree.
6662
6663         (From Andy Dustman <adustman@comstar.net>)
6664         
6665         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
6666         root tree when removing items from a non-previously
6667         mapped tree.
6668
6669         * gtk/testgtk.c: Added a remove_subtree button.
6670         
6671 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
6672
6673         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
6674         before object removing data. This change fixes a bug where 
6675         removing the last weak references would cause it to be 
6676         triggered.
6677
6678 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
6679
6680         * gdk/Makefile.am: Removed mostly useless dependency that
6681         was causing problems for SGI's make, when used with
6682         the 'make dist' form of GTK+. (Dependency caused dependencies
6683         to be redone when BUILT_SOURCES changed)
6684
6685 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
6686
6687         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
6688         like a menu.
6689         
6690         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
6691         to gtkitem.c so dragging can also work in lists.
6692
6693         * gtk/gtklist.[ch]: Track child enter events and use
6694         those to allow dragging the selection. 
6695
6696 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
6697
6698         * gtk/gtktext.c: Try enabling background pixmaps for editable text
6699         widgets.  There is a bit of flashing, but not too bad. If you
6700         don't want the flashing, you can always not set a background
6701         pixmap.
6702
6703 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
6704
6705         * gtk/gtktext.c: Fixed a bug where the drawn level
6706         was being messed up when the text was scrolled
6707         during a deletion.
6708         
6709 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
6710
6711         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
6712         bug:  There is no need to set the ExposureMask in the XGrabPointer
6713         (this caused DnD programs to crash).
6714
6715 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
6716
6717         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
6718         field to be of type guint.
6719         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
6720         ref_count>0;
6721         (gtk_accelerator_table_install): keep a per object list of accelerator
6722         tables that refer to this object.
6723         (gtk_accelerator_table_remove): remove the accelerator table from the
6724         per object list.
6725         (gtk_accelerator_table_clean): warn if there are any object references
6726         left in an accelerator table upon destruction.
6727         (gtk_accelerator_tables_delete): new function to delete object
6728         references from the accelerator tables associated with this object.
6729
6730         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
6731         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
6732         of an accelerator can be prevented by gtk_signal_emit_stop().
6733         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
6734         so there are no stale pointers in accelerator tables left.
6735
6736 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
6737
6738         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
6739         visible before we unparent it.
6740
6741 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
6742
6743         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
6744         running_timeouts list with the tmp_list link itself, not with a new
6745         GList structure pointing to our link. that would fill up memory and
6746         causes the GList.data fields of the running_timeouts list to point to
6747         GList structures and not GtkTimeoutFunction structures which is a
6748         *really* bad thing.
6749         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
6750         the above entry ;).
6751
6752 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
6753
6754         * gtk/gtkradiomenuitem.h: 
6755         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
6756         ala gtk_radio_button_set_group.
6757         (gtk_radio_menu_item_init): assure that we always have at least a group
6758         that points to self.
6759
6760         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
6761         added g_return_if_fail() statements.
6762         (gtk_radio_button_init): assure that we always have at least a group
6763         that points to self.
6764
6765 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
6766
6767         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
6768
6769 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
6770
6771         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
6772         (Damon Chaplin), which i got wrong when applying Damon's patch the last
6773         time.
6774
6775 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
6776
6777         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
6778         that when we are running with a non-installed colormap,
6779         in 8-bit pseudo-color, we actually are using the system
6780         visual. (Fixes *Bad Match* errors on Digital Unix machines
6781         with multiple 8-bit pseudo-color visuals)
6782
6783 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
6784
6785         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
6786         by whoever thought that randomly changing ints to unsigned int
6787         without reviewing the code was a good idea.  It is, btw not
6788         mentioned in the ChangeLog as usual, but I know it was not Elliot
6789         the culprit this time. 
6790
6791 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
6792
6793         * Released GTK+ 1.0.0