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