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