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