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