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