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