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