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