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