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