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