]> Pileus Git - ~andy/gtk/blob - ChangeLog
INSTALL: NEWS: README: gtk+.spec: docs/gtk-config.1: Version incremented
[~andy/gtk] / ChangeLog
1 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
2
3         * configure.in:
4           INSTALL:
5           NEWS:
6           README:
7           gtk+.spec:
8           docs/gtk-config.1: Version incremented to 1.1.5
9
10         * Released GTK+ 1.1.5
11
12 Sat Nov 21 18:53:13 1998  Owen Taylor  <otaylor@redhat.com>
13
14         * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin): 
15         Fixed so it at least works with window managers other
16         than Enlightenment, though it probably needs to be
17         removed altogether.
18
19 1998-11-21  Andrew T. Veliath  <andrewtv@usa.net>
20
21         * gtk/gtkhandlebox.[ch]: Add shadow_type and
22         gtk_handle_box_set_shadow_type function (plus a
23         GtkHandleBox::shadow arg) to allow configuration of shadow in the
24         bin window.
25
26 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
27
28         * gtk/gtkcalendar.c: Fix for marking days from 
29           Dan Reish <dreish@izzy.net>.
30
31 Thu Nov 19 00:15:27 1998  Lars Hamann  <lars@gtk.org>
32
33         * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
34         in row_list. (from Samuel Solon <ssolon@usa.net>)
35         
36         * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
37         (gtk_clist_get_column_widget): return column widget
38
39 Wed Nov 18 11:54:57 1998  Owen Taylor  <otaylor@redhat.com>
40
41         * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
42         that are sent to a toplevel but are not within the
43         toplevels bounds.
44
45         * gdk/gdkdnd.c gdk/gdk.h: Added support for a
46         XdndProxy atom which proxies the drag to another window.
47
48 1998-11-17  Federico Mena Quintero  <federico@nuclecu.unam.mx>
49
50         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
51         that it is not needed.
52
53 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
54         * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
55           function to correctly determine gdk window position relative to
56           its "root window" - contains check for an Enlightenment
57           virtual root window.
58         * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
59           gdk_window_get_deskrelative_origin to get the origin of dragged
60           handleboxes correctly. Now it works correctly with E.
61           
62 Tue Nov 17 1998  Tuomas Lukka <lukka@iki.fi>
63
64         * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
65           getting types even though we were not using real type names,
66           just the index.  This caused random crashes when more than 
67           256 types were defined.
68
69 1998-11-17  Martin Baulig  <martin@home-of-linux.org>
70
71         * gtk/genmarshal.pl: Put output files in the current directory
72         and not in the $(srcdir) since the VPATH is ignored for built
73         sources.
74
75 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
76
77         * gtk/genmarshal.pl
78         * gtk/Makefile.am: check for unchanged autogenerated files, so
79         we don't rebuild everything just for adding a new function
80
81 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
82
83         * gtk/gtkpixmap.h
84           gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
85           code thanks to GNOME stock by Eckehard Berns.  New function
86           gtk_pixmap_set_build_insensitive to provide ability to turn 
87           this off.
88
89 Tue Nov 17 00:06:29 1998  Lars Hamann  <lars@gtk.org>
90
91         * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
92         new guints : tab_hborder, tab_vborder; marked tab_border deprecated
93         (struct _GtkNotebookPage): new flags : expand, fill, pack
94
95         * gtk/gtknotebook.h/c
96         (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
97         tabs
98         (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
99         (gtk_notebook_set_tab_hborder): new function. set tab_hborder
100         (gtk_notebook_set_tab_vborder): new function. set tab_vborder
101         (gtk_notebook_query_tab_label): new function. get tab_label widget.
102         (gtk_notebook_set_tab_label): new function. set tab_label widget.
103         (gtk_notebook_set_tab_label_text): new function. set tab_label text.
104         (gtk_notebook_query_menu_label): new function. get tab_label widget.
105         (gtk_notebook_set_menu_label): new function. set tab_label widget.
106         (gtk_notebook_set_menu_label_text): new function. set tab_label text.
107         (gtk_notebook_set_tab_label_packing): new function. set tab_label
108         fill, expand, fill_type
109         (gtk_notebook_query_tab_label_packing): new function. get tab_label
110         fill, expand, fill_type
111
112         (gtk_notebook_real_page_position): return logic page number
113         (gtk_notebook_search_page) search next/prev logic page
114         (gtk_notebook_update_labels): set logic page number.
115         (gtk_notebook_page_compare): renamed gtk_notebook_find_page
116         (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
117         CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
118         (gtk_notebook_button_press) (gtk_notebook_key_press)
119         (gtk_notebook_focus) (gtk_notebook_pages_allocate)
120         (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
121         use gtk_notebook_search_page
122         (gtk_notebook_page_allocate): fixed allocation bug
123         (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
124         (gtk_notebook_init): unset GTK_NO_WINDOW flag
125         (gtk_notebook_size_request): check whether page->child is visible.
126         changes due to tab h/vborder, homogeneous tabs
127         (gtk_notebook_paint): don't draw invisible tabs
128         (gtk_notebook_switch_page): calculate page_num if it's less than 0
129         (gtk_notebook_append_*) (gtk_notebook_prepend_*)
130         (gtk_notebook_insert_page): removed sanity checks
131
132         * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
133
134 Mon Nov 16 15:10:33 1998  Owen Taylor  <otaylor@redhat.com>
135
136         * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
137         (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
138
139         * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was 
140         broken. (GtkWidget's default unmap handler should work fine).
141         Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
142
143 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
144
145         * gtk/gtkmenubar.[ch]: added shadow_type setting and
146         gtk_menu_bar_set_shadow_type function to allow shadow
147         configurability for menubars
148
149         * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
150         guint
151
152 Mon Nov 16 00:17:53 1998  Tim Janik  <timj@gtk.org>
153
154         * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
155         class creation and parent class' object initializer.
156
157 1998-11-13  Federico Mena Quintero  <federico@nuclecu.unam.mx>
158
159         * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
160         have assigned it to the window -- there is no point in keeping it around.
161         (gtk_paned_unrealize): No need to destroy the cursor here.
162
163         * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
164         it is not needed.
165
166 Fri Nov 13 11:22:38 1998  Owen Taylor  <otaylor@redhat.com>
167
168         * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
169         (gtk-blizzard-981005-0. 
170          Christopher Blizzard <blizzard@applied-theory.com)
171
172         * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
173         gdk_pixmap_foreign_new to gdkx.h.
174
175 Fri Nov 13 16:06:48 1998  Owen Taylor  <otaylor@redhat.com>
176
177         * gtk/Makefile.am: Added rules to generate an empty
178         GTK+ theme called "Default" upon installation.
179         
180         * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
181         of fonts and fontsets. 
182         (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
183
184         * gtk/gtkmain.c: Change test to detect glibc's
185         utf8 based mb* functions to be more specific.
186
187         * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation 
188         cleanups.
189
190 Fri Nov 13 16:43:36 1998  Lars Hamann  <lars@gtk.org>
191
192         * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
193         show event_window
194         (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
195         event_window if draw_indicator is set
196         (gtk_toggle_button_set_mode):
197
198 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
199
200         * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
201         ensure proper type (SunPro cc complains)
202
203         * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
204
205         * gtk/gtktogglebutton.c: use our own draw method so we get proper
206         redraws on active state
207
208 Thu Nov 12 00:26:13 1998  Lars Hamann  <lars@gtk.org>
209
210         * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
211         defines.
212
213         * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
214         GTP_POS_RIGHT
215
216 Wed Nov 11 19:54:58 1998  Lars Hamann  <lars@gtk.org>
217
218         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
219         (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
220         added ARG_WINDOW_PLACEMENT
221
222         * gtk/gtkclist.c (size_allocate_columns): resize column if column
223         button > column width and auto_resize is set
224         (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
225         consider column button width of auto resized columns
226         (gtk_clist_parent_set): removed 
227
228         * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
229         (auto_resize_columns): auto_resize all columns
230         (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
231         (column_auto_resize): respect column button width of auto resized
232         columns
233
234 1998-11-10  Martin Baulig  <baulig@merkur.uni-trier.de>
235
236         * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
237         we can check for latest GTK features.
238
239 Mon Nov  9 00:39:20 1998  Lars Hamann  <lars@gtk.org>
240
241         * gtk/gtkenums.h : new enum GtkCornerType 
242         * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
243         window_placement.
244         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement): 
245         new method to set window_placement.
246         (gtk_scrolled_window_viewport_allocate)
247         (gtk_scrolled_window_size_allocate): few changes due to
248         window_placement.
249         * gtk/testgtk.c (remove_selection): fixed while loop.
250
251 Sat Nov  7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
252
253         * gtk/gtkclist.c: check if column[i].button is valid before calling
254         gtk_widget_intersect on it in gtk_clist_draw
255
256         * gtk/gtkdnd.c: removed unused variable empty_bits
257
258         * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
259
260         * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
261         a boolean (thanks to Elrond for noticing this)
262
263 1998-11-07  Jay Cox  <jaycox@earthlink.net>
264
265         * gtk/gtkwindow.c: forward declaration for gtk_window_paint
266         * gdk/gdkxid.c: declare xid_ht static
267         * examples/*/Makefile: get the link ordering right.
268
269 Sat Nov  7 16:31:56 1998  Stefan Jeske  <stefan@gtk.org>
270
271         * gtk/gtkclist.c (gtk_clist_realize): Set background of
272         title button window to GTK_STATE_NORMAL instead of
273         GTK_STATE_SELECTED to avoid ugly flicker.
274
275 Fri Nov  6 23:29:40 1998  Lars Hamann  <lars@gtk.org>
276
277         * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
278         if adjustments are NULL and list size has changed
279         (gtk_clist_size_request): return real list requsition,
280         if adjustments are NULL.
281         (size_allocate_columns): use button->requisition.with, if column
282         width is not set.
283         (list_requisition_width): new function. return full list width.
284         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
285         auto create adjustments.
286         (gtk_clist_motion) (move_vertical) (move_horizontal):
287         check adjustment != NULL.
288
289 Thu Nov  5 12:06:16 1998  Owen Taylor  <otaylor@redhat.com>
290
291         * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
292         a clear/redraw, not just a redraw, so the focus
293         gets undrawn properly.
294
295         * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize): 
296         Chain to gtk_widget_unrealize() instead of duplicating
297         code.
298
299 Wed Nov  4 14:34:51 1998  Owen Taylor  <otaylor@redhat.com>
300
301         * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
302         last vestiges of old DND.
303
304 Tue Nov  3 12:27:52 1998  Owen Taylor  <otaylor@redhat.com>
305
306         * gtk/gtkentry.c: Restored inner border to entries,
307         erase cursors to background image.
308
309 Fri Oct 30 12:09:21 1998  Owen Taylor  <otaylor@redhat.com>
310
311         * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
312         it was identical to paint_flat_box().
313
314         * gtk/gtkstyle.c: Coding style fixups.
315
316         * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
317         test.
318
319         * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c: 
320         Change 'side' for paint_[box/shadow]_gap and paint_extension
321         to be GtkPositionType instead of a random int.
322
323         * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use 
324         "frame" as detail - an aspectframe should draw identical
325         to a frame.
326
327 Tue Oct 27 09:58:11 1998  Owen Taylor  <otaylor@redhat.com>
328
329         * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
330         from combine_child_shapes().
331
332         * gdk/gdkwindow.c: Merge propagate_shapes() and
333         propagate_combine_shapes() to remove code duplication.
334
335 Thu Nov  5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
336
337         * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
338         gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
339         So allocate some mem if it's not already done.
340
341         * clist scrollbar merges from HEAD
342
343 Tue Nov  3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
344
345         * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
346
347         * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
348         of 0x80000000, so we stay within the bounds of a postive signed
349         int (it broke some compilers)
350
351         * gtk/gtkmenushell.c
352         * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
353         when some of the menuitems are hidden
354
355         * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
356         care of that
357
358         * gtk/gtkwidget.c: add a dummy continue after the line label
359         next_rect, since some compilers don't like label: }
360
361 Sun Nov  1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
362
363         * Okay, so we need the X11R6 keysyms so programs don't have to
364         worry about them. They don't conflict anyway. Reverted the #ifdef
365         changes to gtk/*.c
366
367         * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
368         special rule for them (X-derived-headers)
369
370 Sun Nov  1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
371
372         * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
373         and gdkkeysyms.h into sed scripts, since the awk scripts weren't
374         portable, and we really shouldn't be using awk anyway.
375
376         * makecursors.awk
377         * makekeysyms.awk: bye bye
378
379         * gtk/gtkaccelgroup.c
380         * gtk/gtkclist.c
381         * gtk/gtknotebook.c
382         * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
383
384 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
385
386         * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
387         and gdkkeysyms.h. Remove those files from CVS.
388
389 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
390
391         * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
392         of the USE_XIM #ifdef
393
394         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
395         even with --include-deps. Slightly different from timj's fix, to avoid
396         circular dependency with gtkmarshal.c
397
398         * autogen.sh
399         * gtk/gtkclist.[ch]
400         * gtk/gtkctree.c
401         * gtk/gtkfontsel.[ch]
402         * gtk/gtklist.c
403         * gtk/gtklistitem.c
404         * gtk/gtkobject.[ch]
405         * gtk/testgtk.c: merges from HEAD
406
407         * gtk/gtkmenubar.c
408         * gtk/gtkradiomenuitem.c
409         * gtk/gtktreeitem.c: cleanups
410
411 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
412
413         * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
414
415 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
416
417         * configure.in: AIX has libpthreads, to make sure you can have
418         more than one thread. Also add -D_THREAD_SAFE, and reorder
419         configure.in so CFLAGS doesn't get clobbered when we actually
420         want to modify it
421
422         * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
423         in gdk_image_get
424
425         * gtk/testdnd.c: removed unused variable "buf"
426
427 Mon Oct 26 16:46:15 1998  Owen Taylor  <otaylor@redhat.com>
428
429         * gtk/gtkcontainer.c (gtk_container_unregister_toplevel): 
430         remove_link(), not remove()
431
432 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
433
434         * gdk/gdkrgb.c: use glib endian stuff
435
436         * configure.in: don't need to check for endianness anymore
437
438         * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
439
440 Wed Oct 21 17:44:27 1998  Owen Taylor  <otaylor@redhat.com>
441
442         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
443         all toplevel widgets, not toplevel windows. (I.e.,
444         plugs should be reset)
445
446         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
447         _do_ need to notify the other toplevels - by the time
448         the get the client messages, the RC file dates will
449         have been updated.
450
451         * gtk/gtkcontainer.h: Added a function call to list
452         every toplevel widget.
453
454         * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse): 
455         Don't send client messages to _every_ window on display!
456         
457 Tue Oct 20 16:21:04 1998  Owen Taylor  <otaylor@redhat.com>
458
459         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags 
460         when dragging across widgets, only in drags
461         starting in widget.
462
463 Tue Oct 20 15:59:49 1998  Owen Taylor  <otaylor@redhat.com>
464
465         * gtk/gtkdnd.c (gtk_drag_source_info_destroy): 
466         Emit "drag_end" signal at end of drag.
467
468 Tue Oct 20 13:07:54 1998  Owen Taylor  <otaylor@redhat.com>
469
470         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
471         for "gtk-embedded" data currently set by 
472         GtkSocket, and use that to forward client message
473         on to embedded windows. Only reset our own toplevel -
474         the others will handle themselves. (Now that
475         GtkMenus live in GtkWindows)
476
477 Mon Oct 19 16:40:40 1998  Owen Taylor  <otaylor@redhat.com>
478
479         * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
480         client window finding code so that it works with
481         WM's other than fvwm.
482  
483 Sun Oct 18 22:48:27 1998  Owen Taylor  <otaylor@redhat.com>
484
485         * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
486         the "GtkDrawWindow" class, which is a descendent
487         of the Window class which leaves its background alone.
488         Essentially, a toplevel drawing area, though it does
489         allow adding a child.
490
491 Sat Oct 17 00:40:51 1998  Owen Taylor  <otaylor@redhat.com>
492
493         * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
494         merging RC styles. Report new share/themes path for
495         themes directory. Deref theme engines when appropriate.
496
497         * gtk/gtkclist.c: Set all backgrounds in _style_set().
498         Make sure that pixel for xor_gc is never 0.
499
500         * gtk/gtkctree.c: Choose colors for plus/minus more
501         carefully, in a hopefully style-independent fashion.
502         (Still needs a bit more work)
503
504         * gtk/gtkwidget.c: Don't send expose events to widgets
505         which are about to be resized and redrawn. (Needs a
506         bit more thought.)
507
508         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
509         drawing on tabs for newly allocated, un-sized
510         pages - we'll get the size wrong.
511
512 Thu Oct  1 17:38:07 1998  Owen Taylor  <otaylor@redhat.com>
513
514         * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
515         up stupidities in last commit.
516
517 Thu Oct  1 14:25:43 1998  Owen Taylor  <otaylor@redhat.com>
518
519         * gtk/gtkwidget.c: When handling queued resizes, account
520         for handleboxes, where the widget heirarchy is different
521         than the window heirarchy by just queueing a resize on
522         the entire handlebox if the detached child is changed.
523
524         - Remove widgets from the redraw queue when reparenting,
525         even if not unrealizing. We queue a resize/redraw in
526         any case.
527
528 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
529         * gtk/gtkstyle.c: added check to see if the widget has been shaped
530         byt the app via gtk_widget_shape_combine_mask and if it has does
531         not reset the shape on theme change.
532         
533 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
534
535         * gtk/gtkfilesel.c: Keep a list of directories in which we never
536         want to stat the entries (like /afs), and assume everything in
537         those directories is a subdirectory.
538
539         - When following a path, try to open components even when
540         we don't find them in their parent's directory to
541         support automounters.
542
543 Fri Sep 11 15:36:33 1998  Owen Taylor  <otaylor@redhat.com>
544
545         * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
546         now at least compiles again.
547
548         * gdk/gdk.c (gdk_event_translate): Don't pass events
549         on destroyed widgets to the gdk_input layer.
550
551 Thu Sep  3 19:45:34 1998  Owen Taylor  <otaylor@redhat.com>
552
553         * gtk/gtkthemes.c: Use g_module instead of dlopen()
554
555 Thu Sep  3 19:30:11 1998  Owen Taylor  <otaylor@redhat.com>
556
557         * gtk/gtktooltips.c (gtk_tooltips_expose): Check
558         if we've changed widgets since the expose event
559         was queued.
560
561 Mon Aug 31 15:33:13 1998  Owen Taylor  <otaylor@redhat.com>
562
563         * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
564         to restore approximate bin compatibility with the
565         non-themes branch. (This does break bin compat
566         within the themes branch.)
567
568 Sun Aug 30 16:48:27 1998  Owen Taylor  <otaylor@gtk.org>
569
570         * gtk/gtklabel.c (gtk_label_set): Eliminate a 
571         gdk_window_clear_area() that snuck in with the
572         menu underlines merge.
573
574 Mon Aug 24 23:37:26 1998  Owen Taylor  <otaylor@redhat.com>
575
576         * gtk/gtktext.c: Fixed some remaining background drawing,
577           merges from main branch, cleanups.
578
579 Mon Aug 24 10:55:51 1998  Owen Taylor  <otaylor@redhat.com>
580
581         * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
582           dereference NULL focus tab.
583
584         * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
585           functions since we need to both show/hide and 
586           queue a redraw. (There's some duplication of drawing here, 
587           we probably should only be queuing a redraw on the
588           "value" portion of the scale.)
589
590 Fri Aug 21 19:02:30 1998  Owen Taylor  <otaylor@redhat.com>
591
592         * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
593           into the theme-drawing framework. We do this by making them,
594           like check/radio-buttons, no-window widgets with subwindows. We
595           then move the value by calling gtk_widget_queue_clear() and only
596           redraw the value in our draw() / expose() handler.  A virtual
597           function clear_background is added which queues a clear on the
598           "background" portion of the widget.
599
600 Fri Aug 21 13:04:27 1998  Owen Taylor  <otaylor@redhat.com>
601
602         * gtk/gtktext.c (mark_bg_gc): Make background colors work
603           again. (We can't always paint the background with a
604           paint() function - only do that for selected text)
605
606 Mon Aug 17 20:31:01 1998  Owen Taylor  <otaylor@redhat.com>
607
608         * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
609           gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
610
611         * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
612           the themes can't be built as part of the same build since
613           they depend on gdk_imlib.
614
615 Fri Aug 14 12:44:30 1998  Owen Taylor  <otaylor@redhat.com>
616
617         * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
618           from gtkthemes.c.
619                 
620         * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
621           gtk/
622
623           - Upgrade to libtool-1.2b + patch to add shared library dependencies
624             for Linux. (Needs to be extended to other platforms where they
625             are safe)
626
627          - Check for -ldl so this branch should build on all platforms, though
628            themes will work on all platforms they could work on.
629
630          - Use -version and -release simultaneously: sonames stay as they are
631            in the current scheme, but -lgtk-1.1 changes to -lgtk.
632
633          - Added in extra -l flags to library LDFLAGS so we get shared library
634            dependencies against X libs and -ldl. (But not libgtk against 
635            libgdk or libglib yet, since dependencies against uninstalled
636            libraries aren't portable)
637
638 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
639         * gtkrc.c - added api calls to find module and theme paths from gtk.
640           nuked gtk_install_prefix global.
641         
642 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
643         * fixed gtk_install_prefix global.
644           
645 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
646         * added gtk_install_prefix global const variabel to find where gtk is
647           installed.
648           
649 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
650         * added ~/.gtk/lib/themes/engines/ to the default searchpath for
651           gtk theme engines
652         
653 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
654         * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
655
656 Mon Aug 10 23:03:55 1998  The Rasterman <raster@redhat.com>
657         * Fixed minor problem in gtkhandlebox.c with drawing, and some
658           notebook stuff. Also pixmap theme is now "clean" again.
659           
660 Mon Aug 10 23:03:55 1998  Owen Taylor  <otaylor@redhat.com>
661         * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up 
662           queued area resizing once more.
663
664 Mon Aug 10 23:09:30 EDT 1998
665         * Added a few drawing fixes for notebook and other widgets. finished
666           pixmap theme up to the level that can be supported so far. (need to
667           add path discovery 9ie where is the rc fiel from - add to pixmap 
668           path so we can get theimages from there too). then we can package 
669           themes. After that need to add to theme seartch path stuff in users 
670           home dir.
671           
672 Thu Aug  6 16:49:25 1998  Owen Taylor  <otaylor@redhat.com>
673
674         * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
675           drawing area, draw in an expose handler.
676
677         * gtk/gtknotebook.c (gtk_notebook_expose): Check for
678           empty current page.
679
680 Wed Aug  5 16:13:15 1998  Owen Taylor  <otaylor@redhat.com>
681
682         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
683           creation of GC's so that they will be set before
684           they are used for map events (why are they used there?)
685
686         * gtk/gtkwidget.c: Fixed mistake that caused widgets to
687           be queued in multiple times in the queue.
688
689 Wed Aug  5 14:23:52 1998  Owen Taylor  <otaylor@redhat.com>
690
691         * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
692           clip rects (or do anything) for shadow_none.
693
694 Wed Aug  5 13:14:57 1998  Owen Taylor  <otaylor@redhat.com>
695
696         * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
697           Yes, it was needed. draw() and expose() are _not_
698           identical.
699
700 Sat Aug  1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
701         * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
702
703 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
704         * YES YES YES YES YES clist borders work again! YES! YES YES! gimme 
705           more baby oooh yeah more more MORE YES YES.
706
707 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
708         * hopefully fixed problem wiht togglebuttons acting like
709           radiobuttons in gtktogglebutton.c
710
711 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
712         * fixed another drawing buglet in the frame drawing code (actually
713           in the clearing code but anyway in gtkstyle.c)
714
715 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
716         * Fixed warning from colorsel widget...
717
718 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
719         * Fixed defautl drawing code to no longer clobber the original style
720           pixmap bgs as it did and added a helper funciton og gtkstyle.c to
721           help with this.
722
723 Thu Jul 30 18:09:21 1998  Owen Taylor  <otaylor@redhat.com>
724
725         * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
726
727         * gtk/gtktooltips.c: Pass a widget (the window) to the
728           drawing function instead of the GtkTooltips.
729
730 Thu Jul 30 17:27:10 1998  Owen Taylor  <otaylor@redhat.com>
731
732         * gdk/gdkwindow.c: Abstract out checking for shape
733           extension into a function.
734
735         * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
736           Remove extra callls to gtk_window_draw().
737
738 Thu Jul 30 11:18:43 1998  Owen Taylor  <otaylor@redhat.com>
739
740         * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
741
742         * themes/th_main.c: Moved messages around so they are
743           printed before destroying strings.
744
745 Wed Jul 29 16:56:07 1998  Owen Taylor  <otaylor@redhat.com>
746
747         * gdk/gdk.c: Fairly simple implementation of expose compression.
748           (No GraphicsExpose compression yet, always compress
749           with the equivalent of XtCompressMultiple - no compression
750           of Expose events across non-Expose events)
751         
752         * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
753           Find rectangle bounding two rectangles.
754
755         * gtk/gtkstyle.c: Set clip rects for a few extra GC's
756           in gdk_default_draw_shadow()
757         
758 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
759         * Fixed drawing functions to handle switching themes on the fly 
760           gracefully and look decent.
761           
762 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
763         * Added all the theme drawing code to all widgets, fixed up minor
764           nigglies in some widgets when it comes to themes, seem to be
765           running into some funky behavior with clipping rects in GC's. Too
766           many files to list here. (all files that now use gtk_paint_* are
767           affected).
768
769 Tue Jul 28 22:49:16 1998  Owen Taylor  <otaylor@redhat.com>
770
771         * themes/th_main.c themes/th_draw.c gtk/testgtkrc: 
772           Set up the demo theme so it is loaded from the RC file.
773
774         * themes/th_draw.c: Alleviate the hardcoded paths a wee
775           bit. (use $HOME/themes/)
776
777         * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in 
778           the RC file via dlopen()
779
780 Tue Jul 28 20:30:56 1998  Owen Taylor  <otaylor@redhat.com>
781
782         Internal handling of styles and RC styles pretty much
783         completely reworked for Theme work.
784
785         * gtkthemes.[ch]: 
786          - Added routines for virtualization of RcStyle and Style handling.
787          - Temporary "sample" inline theme-engine. (Does nothing
788            but print out a few messages.
789         
790         * gtkrc.[ch]
791          - Made GtkRcStyle public, added flags to tell if particular
792            colors have been set.
793          - RC Styles are "transparent", and the final style for
794            a widget is the composition of all matching styles
795          - Added pointer to GtkThemeEngine, and gpointer engine_data
796            to RC style and style.
797          - Parse "engine" keyword, load the appropriate theme engine
798            and call the engine's parser.
799         
800         *  gtkstyle.[ch]
801          - Keep a GtkRcStyle * in styles created from Rc Styles.
802          - Load up images from RC file at style attachment time.
803          - Call ->engine->foo() at appropriate times.
804          - Don't use a GCache. All incarnations for a style are
805            just linked together in a list, depend on the RC style 
806            code to find the existing copy.
807
808 Tue Jul 28 14:41:54 1998  Owen Taylor  <otaylor@redhat.com>
809
810         * gtk/gtkwidget.[ch]: Added the concept of queued redraws
811           of partial areas. This can be done either relative
812           to the existing windows (gtk_widget_queue_clear[_area]())
813           or relative to the future allocation of the widget
814           (gtk_widget_queue_draw[_area]). 
815
816           The initial implementation is pretty braindead, but
817           can be improved.
818
819         * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
820           in favor of gtk_widget_queue_clear().
821         
822         * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
823           flags in favor of gtk_widget_queue_clear()
824         
825 Tue Aug  4 19:12:14 1998  Owen Taylor  <otaylor@redhat.com>
826
827         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
828           handling of partially clipped areas.
829
830 Thu Nov  5 18:52:35 1998  Lars Hamann  <lars@gtk.org>
831
832         * gtk/gtkclist.h (struct _GtkCListClass)
833         * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
834
835 Thu Nov  5 16:00:32 1998  Lars Hamann  <lars@gtk.org>
836
837         * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
838         vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
839
840         * gtk/gtkclist.c (gtk_clist_class_init): added new args types
841         "hadjustment" & "vadjustment"
842          (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
843         set/get_arg functions
844         (gtk_clist_construct): don't create/adjust scrollbars.
845         (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
846         to set h/vadjustments
847         (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
848         to query h/vadjustments
849         (create_scrollbars): removed.
850         (create_adjustments): replacement for create_scrollbars
851         (gtk_clist_new): call gtk_clist_new_with_titles
852         (gtk_clist_new_with_titles): don't warn on titles == NULL
853         (move_horizontal): use CLAMP instead
854         (gtk_clist_set_policy): deprecated method.
855         use gtk_scrolled_window_set_policy instead.
856         (vadjustment_value_changed): use clist->vadj.
857         (adjust_scrollbars): renamed to adjust_adjustments
858         (adjust_adjustments): former adjust_scrollbars
859         (gtk_clist_destroy): unref adjustments
860         (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
861         (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
862         (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
863         (gtk_clist_thaw) (real_insert_row) (real_remove_row)
864         (gtk_clist_set_row_height) (real_resize_column):
865         call adjust_adjustments
866         (gtk_clist_moveto): return if clist has no adjustments yet.
867         (gtk_clist_parent_set): new GtkWidget::parent_set function.
868         Autogenerate h/vadjustments if needed.  
869         (move_horizontal) (move_vertical): some cleanups
870
871         * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
872         call only gtk_viewport_set_h/vadjustment and let these functions
873         do the work.
874         (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
875         generate a new adjustment if needed
876
877         * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
878         use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
879         
880         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
881         queue_resize if visibility of scrollbars changes
882         (gtk_scrolled_window_remove): only call container_remove with
883         scrolled_window->viewport automatically if viewport was autogenerated
884         (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
885         auto create a viewport only if widget does not take h/vadjustments.
886         (gtk_scrolled_window_construct): don't generate a viewport
887         automatically.
888         (gtk_scrolled_window_forall): call callback with viewport in any case
889         (gtk_scrolled_window_set_arg): call gtk_container_add in case of
890         ARG_VIEWPORT
891         (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
892         (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
893         viewport != NULL
894
895         * gtk/testgtk.c 
896         (create_ctree) (export_ctree) (create_clist): use a scrolled_window
897         in conjunction with clists/ctrees
898
899         * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
900         in conjunction with clists
901
902         * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
903         in conjunction with clists
904
905 Wed Nov  4 21:52:57 1998  Lars Hamann  <lars@gtk.org>
906
907         * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
908         (gtk_ctree_remove_node): select focus_row if needed
909         (cell_size_request): only get pixmap size if pixmap != NULL
910
911 Wed Nov  4 04:30:37 1998  Tim Janik  <timj@gtk.org>
912
913         * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
914         GTK_IS_WIDGET (widget):
915
916 Wed Nov  4 02:02:07 1998  Lars Hamann  <lars@gtk.org>
917
918         * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
919         focus_row after a remove_row call.
920
921 Sun Nov  1 21:00:06 GMT 1998  Austin Donnelly  <austin@greenend.org.uk>
922
923         * gtk/gtkoptionmenu.c
924         * gtk/gtkmenushell.c: make option menus work when some of the
925         menuitems are hidden - previously, option menu would popup too
926         high.
927
928 1998-10-31  Raja R Harinath  <harinath@cs.umn.edu>
929
930         * gtk/gtkfeatures.h.in: Remove `#pragma }'.
931
932         * gdk/gdki18n.h: Update to use new `glib' widechar defines.
933
934         * configure.in (CFLAGS): Don't use test -z "echo .. | grep".  Use
935         case instead.
936         (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
937         (GDK_WLIBS): New variable.  Lists extra libraries needed to use
938         widechar functions.
939         * gtk-config.in (--libs): List $GDK_WLIBS, too.
940
941 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
942
943         * Released GTK+ 1.1.3
944         
945         * INSTALL:
946         * NEWS:
947         * README:
948         * gtk+.spec:
949         * docs/gtk-config.1: updated for v1.1.3
950
951         * Makefile.am
952         * sanity_check
953         * docs/Makefile.am: Includes new 'make release' as well as
954           'make sanity'.  Also handles html and text creation from html,
955           and puts them into the distribution
956
957         * docs/Makefile.sgml: removed, similar functionality is now in 
958           the Makefile.am file
959
960         * docs/.cvsignore: ignore html and text directories
961         * docs/glib.texi: removed (now in glib dist)
962
963 Fri Oct 30 20:02:36 1998  Lars Hamann  <lars@gtk.org>
964
965         * gtk/gtklist.c (gtk_list_remove_items_internal): 
966         free undo_un/selection, unselect list_item before disconnect
967         signal functions
968         (gtk_list_destroy): removed. gtk_list_shutdown clears the list
969         already
970         (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
971         (gtk_list_signal_item_toggle)   (gtk_list_signal_scroll_horizontal)
972         (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
973         (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
974         (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
975         (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
976         (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
977         new functions. These functions are signal connected to inserted
978         list_items, to handle key bindings and GtkItem::de/select/toggle
979         signals.
980
981         * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
982         gtk_object_class_add_signals call.
983         (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
984         (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
985         (gtk_list_item_start_selection) (gtk_list_item_end_selection)
986         (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
987         (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
988         removed. These functions are handled via connected
989         gtk_list_signal_* functions now
990
991 Fri Oct 30 05:24:43 1998  Tim Janik  <timj@gtk.org>
992
993         * gtk/Makefile.am: cause the built sources to be rebuild when possible,
994         even with --include-deps:
995         $(libgtk_la_SOURCES): $(BUILT_SOURCES)
996
997 Fri Oct 30 01:56:08 1998  Tim Janik  <timj@gtk.org>
998
999         * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
1000         gtk_object_data_set_destroy to fit the gtkobject.h API.
1001
1002         * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
1003         * gtk/gtkfontsel.h:
1004         * gtk/gtkfontsel.c:
1005         Added support for an extra 'base' filter which an application can
1006         set to restrict the fonts available to the user (e.g. a terminal
1007         program only wants the user to be able to select fixed-width fonts).
1008         The type of font (bitmap/scalable/scaled bitmap) is now
1009         also a part of the filter, so that an application can
1010         request that only scalable fonts are shown.
1011         There are new functions to set the base & user filters.
1012         I've also stopped the up/down key press signals getting
1013         to the clists since the font selection widget handles
1014         them itself. It acted a bit strangely before.
1015
1016 Sun Oct 25 20:27:02 1998  Tim Janik  <timj@gtk.org>
1017
1018         * gtk/gtkmain.c (gtk_init): support an environment variable
1019         GTK_MODULES= which takes a colon sperated list of module names
1020         automatically loaded at gtk_init() startup.
1021
1022 Sun Oct 25 08:04:33 1998  Tim Janik  <timj@gtk.org>
1023
1024         * gtk/gtkwidget.c: added more g_return_if_fail() statements.
1025
1026 Thu Oct 22 22:40:35 1998  Lars Hamann  <lars@gtk.org>
1027
1028         * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
1029         is sufficient
1030
1031 Thu Oct 22 16:22:55 1998  Lars Hamann  <lars@gtk.org>
1032
1033         * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
1034         columns
1035
1036 Thu Oct 22 02:29:53 1998  Tim Janik  <timj@gtk.org>
1037
1038         * gtk/gtkfilesel.h: GtkType and macro fixups
1039         * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
1040         for the file selection widget to try a completion on (set the
1041         initial filter).
1042
1043 Wed Oct 14 14:34:04 1998  Tim Janik  <timj@gtk.org>
1044
1045         * gtk/gtkmain.c: implement idle functions via GHook. this gives a
1046         slight speed improvement and lessens code duplication.
1047
1048 Tue Oct 20 14:53:28 1998  Owen Taylor  <otaylor@redhat.com>
1049
1050         * gtk/gtkdnd.c: Always send "drag_leave" to dests
1051         without GTK_DEST_DEFAULT_MOTION. 
1052
1053 Tue Oct 20 11:55:24 1998  Owen Taylor  <otaylor@redhat.com>
1054
1055         * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
1056         on destroyed windows so we clear the XID table properly.
1057         Finish up restructure of return value handling that
1058         was half-done before.
1059
1060 Tue Oct 20 12:57:10 1998  Owen Taylor  <otaylor@redhat.com>
1061
1062         * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
1063         the window tree more comprehensively, so that we find
1064         client windows hidden under non-toplevels.
1065
1066 Tue Oct 20 12:43:04 1998  Owen Taylor  <otaylor@redhat.com>
1067
1068         * gtk/gtkselection.c (gtk_selection_data_set): 
1069         Maintain the null-termintation guarantee, even when 
1070         data = NULL, length = 0. (Warn on data = NULL, 
1071         length > 0)
1072
1073 Mon Oct 19 16:41:44 1998  Owen Taylor  <otaylor@redhat.com>
1074
1075         * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
1076         into function prototype for drag_data_received. 
1077
1078 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
1079
1080         * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
1081
1082 Mon Oct 19 23:44:41 1998  Lars Hamann  <lars@gtk.org>
1083
1084         * gtk/gtkclist.c: rearranged some functions
1085         (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
1086         flag of column
1087         (gtk_clist_set_column_resizeable): if resizeable disable auto_resize 
1088         (gtk_clist_set_border): deprecated function, use
1089         gtk_clist_set_shadow_type instead.
1090         (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
1091         (adjust_scrollbars): some cleanups
1092         (select_row) (unselect_row): removed. replaced by equivalent
1093         gtk_signal_emit calls
1094         (add_style_data): removed, use gtk_clist_style_set instead
1095         (gtk_clist_style_set): fill in size data, after style was set. 
1096         (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
1097         (gtk_clist_set_cell_style): auto_resize columns if needed
1098         (column_auto_resize): resize column if needed for auto_resize 
1099         (real_clear): disable auto_resize while list destroy
1100         (resize_column): removed
1101
1102         * gtk/gtkctree.c : (gtk_ctree_remove_node)
1103         (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
1104         (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
1105         (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
1106         (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
1107         (real_tree_collapse) (real_tree_expand) (column_auto_resize):
1108         auto_resize columns if needed
1109         (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
1110         (real_clear): disable auto_resize while processing the tree
1111
1112         * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
1113         for one column
1114
1115 Mon Oct 19 08:31:36 1998  Owen Taylor  <otaylor@redhat.com>
1116
1117         * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
1118         typo - look for right atom on transfer failures.
1119
1120 Sun Oct 18 20:52:22 1998  Owen Taylor  <otaylor@gtk.org>
1121
1122         * gtk/gtkwidget.c gtkmarshal.list: Change signal 
1123         for drag_data_get to match the use that was being
1124         made of it everywhere else...
1125
1126 Sun Oct 18 18:16:39 1998  Owen Taylor  <otaylor@gtk.org>
1127
1128         * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
1129         mechanism, that is used for the DND messages.
1130
1131           Removed all the old DND code.
1132
1133         * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
1134         get the visual of a given colormap.
1135         
1136         * gtk/gtkcolorsel.c: Conversion to new DND, drag 
1137         a color-swatch.
1138
1139         * gdk/gdk.h gdk/gdkdnd.c: The low-level
1140         X oriented portions of drag and drop protocols.
1141         Sending and receiving client messages, and navigating
1142         window trees.
1143
1144         * gdk/gdkimage.c: added a gdk_flush() when destroying
1145         SHM images to hopefully make it more likely that
1146         X will gracefully handle the segment being destroyed.
1147
1148         * gdk/gdkprivate.h gtk/gtkdebug.h: Add new 
1149         DND debugging flags.
1150
1151         * gtk/gtkeditable.[ch]: Updates for the selection handling
1152         changes.
1153         
1154         * gtk/gtkselection.[ch]: Added GtkTargetList, a 
1155         refcounted data structure for keeping track of lists
1156         of GdkAtom + information. Removed selection_handler_add
1157         in favor of a "drag_data_get" signal.
1158
1159         * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
1160         dependent) parts of the DND protocols, display of drag icons,
1161         drag-under highlighting, and the "default handlers".
1162
1163         * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
1164         windows that are used for reliable pointer grabs and
1165         selection handling in the DND code.
1166
1167         * gtk/testdnd.c: New test program for new DND. (Old
1168         DND tests in testgtk still need to be converted.)
1169
1170         * gtk/testselection.c: Use the new selection API.
1171         
1172         * docs/dnd_internals: Start at describing how
1173         all the new code works inside.
1174
1175         * docs/Changes-1.2.txt: New file describing source-incompatible
1176         changes in GTK+-1.2.
1177
1178 Sat Oct 17 22:50:34 1998  Owen Taylor  <otaylor@gtk.org>
1179
1180         * gdk/gdkwindow.c (gdk_window_remove_filter): Free
1181         the right list node.
1182
1183         * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
1184         to the XID table so we can receive events on it.
1185
1186 Wed Oct 14 12:57:40 1998  Owen Taylor  <otaylor@redhat.com>
1187
1188         * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
1189         to get the timestamp from a generic event.
1190
1191 Fri Oct  9 13:16:04 1998  Owen Taylor  <otaylor@redhat.com>
1192
1193         * gtk/gtkwidget.c (gtk_widget_add_events): Added function
1194         that safely adds additional events to a widget's event 
1195         mask, even if the widget has previously been realized.
1196         (We can do this, but not remove events from the event
1197          mask).
1198
1199 Fri Oct  2 17:35:35 1998  Owen Taylor  <otaylor@redhat.com>
1200
1201         * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
1202         for AnyPropertyType.
1203
1204 Fri Oct  2 10:32:21 1998  Owen Taylor  <otaylor@redhat.com>
1205
1206         * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
1207         hashing.
1208
1209 Thu Sep 24 20:33:54 1998  Owen Taylor  <otaylor@redhat.com>
1210
1211         * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
1212         isn't a timestamp.
1213
1214 Thu Sep 17 14:23:03 1998  Owen Taylor  <otaylor@redhat.com>
1215
1216         * gdk/gdk.c (gdk_event_translate): Removed printing
1217         of unknown window lookup warnings. (Made it
1218         a GDK_NOTE) - they happen in many circumstances.
1219
1220 Tue Sep  8 12:38:43 1998  Owen Taylor  <otaylor@redhat.com>
1221
1222         * Call XFilterEvent() on events we get for unknown
1223         windows, since it may be the window Xlib uses to
1224         communicate with the IM. 
1225         (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
1226
1227 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
1228
1229         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
1230         the adjustment.
1231
1232 Thu Aug 27 12:03:14 1998  Owen Taylor  <otaylor@redhat.com>
1233
1234         * gtk/gtksignal.c (gtk_signal_newv): Improve warning
1235         message for return_value + GTK_RUN_FIRST.
1236
1237 1998-10-18  Martin Baulig  <martin@home-of-linux.org>
1238
1239         * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
1240         line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
1241
1242 Fri Oct 16 15:59:02 1998  Lars Hamann  <lars@gtk.org>
1243
1244         * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
1245         styles of inserted row
1246         (change_style): change style of focus_row
1247
1248         * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
1249         (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
1250         to set/get row/cell styles.
1251         (gtk_clist_realize): attach row and cell style, allocate row colors.
1252         (gtk_clist_unrealize): detach row and cell styles.
1253         (get_cell_style): new function. get correct cell style.
1254         (draw_cell_pixmap): new function. 
1255         (draw_row): draw cells with row or cell styles.
1256         (row_new): set cell and row styles to NULL.
1257         (row_delete): detach & unref cell and row styles.
1258
1259         * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles): 
1260         new functions to attach/detach styles and allocate colors.
1261         (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
1262         styles of invisible nodes.
1263         (draw_cell_pixmap): new function. 
1264         (get_cell_style):  new function. get correct cell style.
1265         (gtk_ctree_draw_expander): new function. draw tree expander.
1266         (gtk_ctree_draw_lines): new function.draw tree lines.
1267         (draw_row): draw cells with row or cell styles.
1268         (row_new): set cell and row styles to NULL.
1269         (row_delete): detach & unref cell and row styles.
1270         (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style) 
1271         (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style): 
1272         Analogons of GtkCList functions 
1273         (gtk_ctree_set_spacing): new function. set spacing between
1274         tree expander and cell contents
1275         (gtk_ctree_set_expander_style): new function. set expander style
1276         of ctree.
1277         (ctree_is_hot_spot): few changes due to draw_row modifications.
1278
1279 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
1280
1281         * gtk/gtkcombo.c: try completion on MOD1-TAB.
1282         Handle case when the combo->list is empty.
1283
1284 Mon Oct 12 07:51:34 1998  Tim Janik  <timj@gtk.org>
1285
1286         * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
1287         handlers that have not yet been disconnected (finally managed to
1288         trigger the gtk_signal_handler_unref() paranoid warning).
1289
1290 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
1291
1292         * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
1293         width and height which is -1 and not -2.
1294
1295 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
1296
1297         * HACKING
1298         * autogen.sh: we need libtool 1.2b now
1299
1300 Sat Oct 10 03:37:50 1998  Tim Janik  <timj@gtk.org>
1301
1302         * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
1303         and bottom attach arguments as mandatory and readjust the table size
1304         and opposing edge accordingly if required. this way the order in which
1305         the arguments are set doesn't matter.
1306
1307 Thu Oct  8 15:53:59 1998  Owen Taylor  <otaylor@redhat.com>
1308
1309         * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
1310         message to print out parent class name correctly.
1311
1312 Thu Oct  8 07:07:10 1998  Tim Janik  <timj@gtk.org>
1313
1314         * gtk/gtkobject.h: 
1315         * gtk/gtkobject.c:
1316         removed functions gtk_object_set_data_destroy and
1317         gtk_object_set_data_destroy_by_id.
1318         added functions gtk_object_remove_no_notify and
1319         gtk_object_remove_no_notify_by_id which will remove a certain data
1320         portion without invokation of its destroy notifier, this should only
1321         be used in very controled circumstances.
1322
1323 Wed Oct  7 23:59:37 1998  Lars Hamann  <lars@gtk.org>
1324
1325         * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
1326         size_allocate_title_buttons call
1327         (gtk_clist_realize): changed initial column.window position
1328
1329 Wed Oct  7 20:27:28 1998  Lars Hamann  <lars@gtk.org>
1330
1331         * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
1332         xor_gc instead
1333         * gtk/gtkctree.c (create_xor_gc): removed
1334         (gtk_ctree_button_press): set correct line_attributes for
1335         clist->xor_gc on drag start
1336         (gtk_ctree_button_release): reset clist->xor_gc
1337
1338 Wed Oct  7 05:15:36 1998  Tim Janik  <timj@gtk.org>
1339
1340         * gtk/gtk*.h:
1341         * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
1342         which were in place to fixup emacs' cc-mode indentation.
1343         putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
1344         proper way to achive this and doesn't produce problems for
1345         stupid pragma-related compiler bugs. ;)
1346
1347 Wed Oct  7 00:59:46 1998  Lars Hamann  <lars@gtk.org>
1348
1349         * gtk/gtkclist.h: new signal GtkCList::resize_column.
1350         * gtk/gtkclist.c (draw_row): don't draw invisible columns
1351         (size_allocate_title_buttons) (size_allocate_columns):
1352         skip invisible columns
1353         (new_column_width): take min/max_width into account 
1354         (gtk_clist_button_release) (gtk_clist_motion):
1355         changes due to changed new_column_width function
1356         (LIST_WIDTH): changed define to inline function.
1357         (real_resize_column): class function for resize_column signal
1358         (gtk_clist_motion): fixed autoscrolling for column resizes
1359         (gtk_clist_set_column_visibility): don't hide last visible column,
1360         changed visible arg to gboolean
1361         (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
1362         new functions : set min/max width of a column
1363         (gtk_clist_set_column_resizeable): new function : enable/disable
1364         column resize operations by mouse
1365
1366         * gtk/gtkctree.c (draw_row): don't draw invisible columns
1367         (ctree_is_hot_spot): return FALSE if tree_column is invisible
1368         (draw_xor_line)  (draw_xor_rect): draw full rectangle/line if
1369         tree_column is invisible
1370         (gtk_ctree_find_all_by_row_data)
1371         (gtk_ctree_find_all_by_row_data_custom):  new function from
1372         Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
1373         GtkCTreeNodes with row->data == data.
1374
1375 Tue Oct  6 14:05:00 1998  Tim Janik  <timj@gtk.org>
1376
1377         * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
1378         memory (Martin Pool <mbp@wistful.humbug.org.au>).
1379
1380 Mon Oct  5 15:26:30 1998  Raph Levien  <raph@gimp.org>
1381
1382         * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
1383         should have been guint32. Thanks to Tristan Colgate for finding it.
1384
1385 Sun Oct  4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1386
1387         * gtk/gtkcalendar.h:
1388           gtk/gtkcalendar.c: More changes:
1389           - The day with focus is now seperated from the day selected
1390           - The day with focus has the xor's line around it
1391           - The selected day is now standard selected style
1392           - The week names and week numbers are now also drawn
1393             with selected style
1394           - Space now selects the day which has focus
1395
1396 Sun Oct  4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1397
1398         * gtk/gtkcalendar.h:
1399           gtk/gtkcalendar.c: Some significant changes, including:
1400           - No longer draw focus around entire widget, only around
1401             the day which has focus
1402           - Draw relief around entire widget like originally planned
1403           - Show header and day names by default 
1404           - Move data private to the widget out of GtkCalendar struct
1405             and only point to it with a gpointer
1406           - Remove some old unused variables from GtkCalendar struct
1407
1408 Sun Oct  4 17:45:43 BST 1998  Tony Gale  <gale@gtk.org>
1409
1410         * docs/gtk_tut.sgml: update I've had sat around:
1411           - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
1412           - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
1413           - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
1414
1415 1998-10-01  Martin Baulig  <martin@home-of-linux.org>
1416
1417         * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
1418         
1419         * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
1420         Makes it possible to individually show and hide columns.
1421         (size_allocate_columns): Adapted to keep track of hidden columns.
1422         (size_allocate_title_buttons): Likewise.
1423
1424 Sat Oct  3 17:54:48 1998  Tim Janik  <timj@gtk.org>
1425
1426         * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
1427         fundamental types, collect an argument of the type returned from
1428         gtk_type_get_varargs_type(). removed the first macro argument which
1429         was just the same as the fundamental type of the *arg passed to
1430         the macro.
1431         * gtk/gtkarg.c (gtk_args_collect): 
1432         * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
1433
1434         * gtk/gtktypeutils.h: 
1435         * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
1436         gtk_type_get_varargs_type() to set and query the varargs collect
1437         type used for a fundamental type, registered outside of Gtk.
1438
1439         * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
1440         GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
1441         GTK_TYPE_FLOAT.
1442
1443         * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
1444         GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
1445         to GTK_TYPE_FLOAT.
1446
1447 Sat Oct  3 01:25:24 1998  Lars Hamann  <lars@gtk.org>
1448
1449         * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
1450         (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand): 
1451         fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
1452
1453         (real_tree_expand) (real_tree_collapse):
1454         don't expand/collapse a leaf
1455
1456 Fri Oct  2 16:10:36 1998  Tim Janik  <timj@gtk.org>
1457
1458         * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
1459         segfault when looking up a non-existant value name (reported by
1460         Pablo <pcj+gtk@primenet.com>).
1461
1462 Thu Oct  1 10:40:20 1998  Tim Janik  <timj@gtk.org>
1463
1464         * gtk/gtkclist.h (gtk_clist_prepend):
1465         * gtk/gtkclist.c (gtk_clist_prepend): new function.
1466         (gtk_clist_insert): added g_return_val_if_fail()
1467         statements. accept a row parameter < 0 or > clist->rows to indicate
1468         append mode.
1469         (real_clear): first clean up all internal pointers and lists (e.g.
1470         clist->row_list or clist->rows), then delete the distinct rows. this
1471         is required because of destroy notifiers, we need to have all internal
1472         structures updated and be reentrant.
1473
1474         * gtk/gtkcalendar.h: 
1475         * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
1476         GtkCalendarClass signal methods.
1477         GtkType and macro fixups, put `void' into () prototypes, avoid C++
1478         style comments, indentation fixes, fixed some g_return_if_fail()
1479         statements.
1480         (gtk_calendar_paint_header):
1481         (gtk_calendar_paint_day_names): 
1482         (gtk_calendar_paint_week_numbers): 
1483         (gtk_calendar_paint_main): made these static functions.
1484         (gtk_calendar_select_month):
1485         (gtk_calendar_select_day):
1486         (gtk_calendar_mark_day):
1487         (gtk_calendar_unmark_day):
1488         (gtk_calendar_get_date): signedness corrections, use guints
1489         rather than gints.
1490         (gtk_calendar_size_request): removed unused variables.
1491
1492 Wed Sep 30 13:11:09 1998  Tim Janik  <timj@gtk.org>
1493
1494         * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
1495         widgets in the ->widgets_by_action list that have a callback
1496         defined (not only those with a callback_action!=0).
1497
1498 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1499
1500         * gtk/gtkcalendar.h:
1501           gtk/gtkcalendar.c:
1502           examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
1503
1504 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1505
1506         * gtk/gtkcalendar.h:
1507           gtk/gtkcalendar.c:
1508           examples/calendar: Added gtkcalendar widget and demo
1509
1510 Sat Sep 26 06:15:34 1998  Tim Janik  <timj@gtk.org>
1511
1512         * gtk/gtkclist.c (gtk_clist_sort): 
1513         (gtk_clist_clear): 
1514         (gtk_clist_unselect_all): 
1515         (gtk_clist_select_all): adde g_return_if_fail() statements.
1516
1517 Sat Sep 26 04:46:22 1998  Tim Janik  <timj@gtk.org>
1518
1519         * configure.in: set binary age and interface age to 0.
1520
1521         * gtk/gtkspinbutton.h: 
1522         * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
1523         gtk_spin_button_configure. gtk_spin_button_construct is still defined
1524         as an alias for gtk_spin_button_configure for source compatibility,
1525         but actuall use is deprecated.
1526         typeness corrections, i.e. gint->gboolean and gint->guint.
1527         added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
1528         GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
1529         GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
1530         GtkSpinButton::adjustment, GtkSpinButton::digits and
1531         GtkSpinButton::climb_rate.
1532         GtkType and macro fixups.
1533
1534 Sat Sep 25 23:33:55 1998  Tim Janik  <timj@gtk.org>
1535
1536         * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
1537         the *real* geometry position of a window, taken possible window
1538         manager offsets into account.
1539         this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
1540         olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
1541         it does fail though for amiwm which adds windows to a pseudo root
1542         window, and for icewm by a small offset because it defines the
1543         geometry position whithin its border.
1544
1545         * gtk/testgtk.c: added "saved position" test to figure how
1546         gdk_window_get_root_origin() interacts with window managers (repopup
1547         this window to figure ;).
1548
1549 Wed Sep 23 06:09:19 1998  Tim Janik  <timj@gtk.org>
1550
1551         * configure.in: update to Gtk+ version 1.1.3, binary age 1,
1552         interface age 1.
1553
1554         * gtk/gtkobject.c
1555         (gtk_object_ref): 
1556         (gtk_object_unref): check for ->ref_count to be greater than 0 (the
1557         existing code was buggy in letting ->ref_count==0 pass through and
1558         then failing the living_objs_ht assertion).
1559
1560         * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
1561         pixtext fields (Roman Pozlevich <roma@botik.ru>).
1562
1563 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1564
1565         * Released GTK+ 1.1.2
1566
1567 Mon Sep 21 01:12:44 1998  Jay Cox  (jaycox@earthlink.net)
1568
1569         * gtk/Makefile.am: use $(PERL) instead of perl
1570         * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
1571         also much faster to render.
1572
1573 Mon Sep 21 07:44:30 1998  Tim Janik  <timj@gtk.org>
1574
1575         * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
1576         the required memory block, rather than allocating it newly from
1577         scratch and doing a full-blown block copy on it.
1578
1579 Mon Sep 21 02:30:06 1998  Tim Janik  <timj@gtk.org>
1580
1581         * NEWS file update for upcoming release of Gtk+ version 1.1.2,
1582         binary age 0, interface age 0.
1583
1584         * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
1585
1586 Sun Sep 20 18:21:46 1998  Owen Taylor  <otaylor@redhat.com>
1587
1588         * ltmain.sh: Patch to libtool-1.2b to make --disable-static
1589         work.
1590
1591 Sun Sep 20 09:52:39 1998  Owen Taylor  <otaylor@gtk.org>
1592
1593         * HACKING: indent other than GNU indent should be OK
1594           now.
1595
1596         * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
1597           instead of piping through indent. If indent wasn't
1598           found in ./configure don't bother indenting at 
1599           all.
1600
1601 Fri Sep 18 19:11:10 1998  Owen Taylor  <otaylor@redhat.com>
1602
1603         * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
1604
1605 Fri Sep 18 18:54:59 1998  Jay Cox  (jaycox@earthlink.net)
1606
1607         * gtk/Makefile.am: use $(AWK) instead of awk
1608
1609 1998-09-18  Raja R Harinath  <harinath@cs.umn.edu>
1610
1611         * gtk/Makefile.am (gdk_headers): 
1612         Remove references to $(top_srcdir). 
1613         (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
1614         * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
1615
1616 Fri Sep 18 19:58:24 1998  Tim Janik  <timj@gtk.org>
1617
1618         * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
1619         GData*object_data to cure compiler warnings.
1620
1621 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
1622
1623         * install-sh
1624         * missing
1625         * mkinstalldirs: updated to latest automake version
1626
1627 1998-09-17  Raja R Harinath  <harinath@cs.umn.edu>
1628
1629         * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
1630         (gtkinclude_HEADERS): ... here.
1631         (gtk.defs): Pass `g' flag to sed, to replace all occurances.
1632
1633 Thu Sep 17 10:49:51 1998  Raph Levien  <raph@gimp.org>
1634
1635         * HACKING: added GNU indent, as it is now required to successfully
1636         build gtk+. Should this be detected in autoconf, possibly?
1637
1638 Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>
1639
1640         * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
1641         change library versioning scheme to drop LT_RELEASE
1642         from the -l line, while keeping it in the soname.
1643
1644 Tue Sep 15 14:10:33 1998  Owen Taylor  <otaylor@redhat.com>
1645
1646         * configure.in Makefile.in: define a MAINT-like variable REBUILD
1647         which is set if Perl and awk are found, and autogenerated sources
1648         can be rebuilt. Remove the auto-generated sources from
1649         CVS. 
1650
1651         Add dependencies so that the autogenerated sources are 
1652         rebuilt if the files they depend on change. 
1653         (This unfortunately currently results in the entire
1654         gtk/ directory being rebuilt when any header changes.
1655         Moving all enums to gtkenums.h would fix this.)
1656
1657 Thu Sep 17 05:12:48 1998  Tim Janik  <timj@gtk.org>
1658
1659         * gtk/gtkobject.h: added gtk_object_set_data_destroy and
1660         gtk_object_set_data_destroy_by_id functions to set the destroy
1661         function pointer for an existing data portion.
1662
1663         * gtk/gtkobject.c: removed the GtkObjectData implementation and
1664         made all gtk_object_*data* functions use the GLib equivalents.
1665
1666 1998-09-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1667
1668         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
1669         is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
1670         (widget != NULL), otherwise radio button insertion will not work
1671         -- the widget argument is NULL for the first radio button in the
1672         group.
1673
1674 Tue Sep 15 13:09:24 1998  Owen Taylor  <otaylor@redhat.com>
1675
1676         * gdk/gdkimage.c (gdk_image_new): Reverted global changes
1677         of g_new to malloc(), added back in the one place where
1678         it actually mattered. #include <stdlib.h>.
1679
1680         * gdk/gdkrgb.c: g_malloc() to malloc() as above.
1681
1682 Tue Sep 15 11:30:03 1998  Owen Taylor  <otaylor@redhat.com>
1683
1684         * gtk/gtkfilesel.c: Keep a list of directories in which we never
1685         want to stat the entries (like /afs), and assume everything in
1686         those directories is a subdirectory.
1687
1688         - When following a path, try to open components even when
1689         we don't find them in their parent's directory to
1690         support automounters.
1691
1692 Tue Sep 15 11:06:13 1998  Owen Taylor  <otaylor@redhat.com>
1693
1694         * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
1695         a new size from the WM if we asked for the same size
1696         before and our request was rejected.
1697
1698         * gtk/gtkwindow.c (gtk_window_configure_event): If
1699         in response to a request, we get a configure event
1700         with unchanged dimensions, send a synthetic expose
1701         since ForgetGravity won't expose our window.
1702
1703 Mon Sep 14 14:28:24 1998  Owen Taylor  <otaylor@redhat.com>
1704
1705         * gtk/gtktext.c (adjust_adj): Change the way we
1706         set the adjustments on resize so that it tries to
1707         keep the beginning of the text in approximately
1708         the same place. 
1709
1710         Removed assertion that the above change made invalid.
1711
1712 Thu Sep 10 22:19:35 1998  Owen Taylor  <otaylor@redhat.com>
1713
1714         * gtk/gtktext.c: - Save first_cut_pixels when switching
1715         sizes, so that if we switch to the _same_ size,
1716         we don't move lines around.
1717
1718         - Make sure that the text area always has a size of at
1719         least 1x1, then do all computations when realized.
1720
1721         - When fetching lines in recompute_geometry, make
1722         sure we fetch enough lines to cover the screen.
1723         
1724 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1725
1726         * gdk/gdkimage.c: changed g_new()s to malloc()s and 
1727           g_free()s to free()s to avoid mixing g_new()s with 
1728           free()s.  X itself uses free() on some of the 
1729           malloced memory.
1730
1731 Sat Sep 12 10:44:06 1998  Owen Taylor  <otaylor@redhat.com>
1732
1733         * gtkfilesel.c: Maintain a list of directories like
1734         /afs we know contain only directories, and avoid
1735         stat'ing files in those directories. (Because
1736         stat'ing all files in /afs is extremely expensive)
1737
1738         To support automounters, try to open directories,
1739         even if we couldn't find them when reading their
1740         parent directory.
1741
1742 Thu Sep  3 10:29:03 1998  Owen Taylor  <otaylor@redhat.com>
1743
1744         * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
1745         to allow the same gtk.m4 to work for 1.0.x and
1746         1.1.x.
1747
1748 Fri Sep 11 15:25:10 1998  Lars Hamann  <lars@gtk.org>
1749
1750         * gtk/gtkclist.c (gtk_clist_set_selectable): new function
1751         to set/unset the selectable flag of a single row.
1752         (gtk_clist_get_selectable): new function 
1753         to get the state of the selectable flag
1754
1755         * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
1756         (gtk_ctree_node_get_selectable): clist analogons
1757         
1758 Thu Sep 10 17:04:03 1998  Raph Levien  <raph@gimp.org>
1759
1760         * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
1761         pattern.
1762
1763         * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
1764         bugs in the 4bit gray cases.
1765
1766 Wed Sep  9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
1767
1768         * configure.in: added -posix check for NeXTStep
1769
1770         * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
1771         a unique buffer for each thread.
1772
1773         * docs/gtk-config.1: clarified copyright
1774
1775 Tue Sep  8 05:19:51 1998  Tim Janik  <timj@gtk.org>
1776
1777         * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
1778
1779         * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
1780
1781         * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
1782         ATEXIT.
1783         
1784         * ltconfig: use GLib's ltconfig which honours lcc.
1785
1786 Mon Sep  7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
1787
1788         * configure.in: comment the -std1 check and save LIBS properly
1789
1790 Sun Sep  6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
1791
1792         * gtk/testrgb.c: #include <stdlib.h>
1793
1794 Sat Sep  5 16:01:19 1998  Owen Taylor  <otaylor@gtk.org>
1795
1796         * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
1797         When the pointer is grabbed on an input window,
1798         either explicitely, or through press-grab, and
1799         then grabbed on a non-input window, ungrab the
1800         devices.
1801
1802 Sat Sep  5 07:13:19 1998  Tim Janik  <timj@gtk.org>
1803
1804         * gtk/gtktypeutils.h: don't include any gdk headers.
1805         added structure definitions for GtkTypeObject and GtkTypeClass,
1806         which cover the very basic fields of GtkObject and GtkObjectClass,
1807         which are actually used by the type system.
1808         
1809         * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
1810         we only refer to our own structures. improved class inheritance
1811         sanity checking a bit.
1812
1813         * gtk/gtkobject.h: placed appropriate comments at the beginnings
1814         of the GtkObject and GtkObjectClass structures, which explain
1815         their relationship to GtkTypeObject and GtkTypeClass.
1816
1817         * gtk/gtktypeutils.h:
1818         * gtk/gtkobject.h:
1819         moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
1820         GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
1821         gtkobject.h to gtktypeutils.h.
1822
1823         * gtk/gtkobject.h:
1824         * gtk/gtkobject.c:
1825         removed gtk_object_check_cast() and gtk_object_check_class_cast()
1826         functions. to keep source compatibility, we can provide macro aliases
1827         for the corresponding gtk_type_* functions. but then again, people
1828         shouldn't have been using these functions anyways since they were part
1829         of Gtk's internal API.
1830
1831         * gtk/gtktypeutils.h:
1832         * gtk/gtktypeutils.c:
1833         implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
1834         functions to check GtkTypeObject and GtkTypeClass types.
1835
1836 Thu Sep  3 07:16:54 1998  Tim Janik  <timj@gtk.org>
1837
1838         * gtk/gtkctree.h:
1839         * gtk/gtkctree.c: `const' fixups.
1840
1841         * gtk/gtkclist.h:
1842         * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
1843
1844         * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
1845         if it is passed as NULL.
1846
1847 Wed Sep  2 22:41:40 1998  Raph Levien  <raph@gimp.org>
1848
1849         * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
1850         big-endian cases. Added a 4bpp packed gray mode (somewhat
1851         incorrectly hardwired to MSB), which should take care of
1852         Stric's hardware.
1853
1854 Thu Sep  3 04:45:57 1998  Tim Janik  <timj@gtk.org>
1855
1856         * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
1857         GtkSIgnalQuery leak.
1858
1859 Thu Sep  3 04:22:20 1998  Tim Janik  <timj@gtk.org>
1860
1861         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
1862         GTK_MENU_DIR_CHILD: check for the existance of
1863         menu_shell->active_menu_item before accessing its child.
1864         GTK_MENU_DIR_PREV:
1865         GTK_MENU_DIR_NEXT: if we haven't had an active item and still
1866         don't, make a default selection.
1867
1868 Wed Sep  2 00:28:58 1998  Tim Janik  <timj@gtk.org>
1869
1870         * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
1871         the children with _forall for sensitivity changes and with
1872         _foreach on pure state changes. this fixes a lot of the
1873         old inclusions of internal widgets into _foreach calls.
1874
1875         * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
1876         do the work. don't walk the subtrees of first level children.
1877
1878         * gtk/gtktreeitem.c: provide a _forall implementation,
1879         which walks the subtrees as well for include_internals.
1880
1881         * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
1882         the submenus as well for include_internals.
1883
1884         * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
1885         implemented gtk_scrolled_window_forall, which will iterate over
1886         the viewport and the scrollbars for gtk_container_forall or
1887         iterate over the viewports children for gtk_container_foreach.
1888
1889         * gtk/gtktoolbar.c: 
1890         * gtk/gtktable.c: 
1891         * gtk/gtkpaned.c:
1892         * gtk/gtkpacker.c:
1893         * gtk/gtkmenushell.c: 
1894         * gtk/gtklist.c: 
1895         * gtk/gtkfixed.c:
1896         * gtk/gtkclist.c:
1897         * gtk/gtkbox.c: 
1898         * gtk/gtkbin.c: 
1899         * gtk/gtknotebook.c:
1900         removed the old gtk_*_foreach functions and provided gtk_*_forall.
1901
1902         * gtk/gtknotebook.c:
1903         (gtk_notebook_real_switch_page): expose tabs.
1904         (gtk_notebook_page_num): new function to return the page number
1905         of a distinct child.
1906         (gtk_notebook_focus): minor fixups. foxus handling is still screwed
1907         under some circumstances.
1908
1909         * gtk/gtktreeitem.c:
1910         (gtk_real_tree_item_select):
1911         (gtk_real_tree_item_deselect): major fixes.
1912         some general fixups wrt queue_redraw, and tree items not being
1913         NO_WINDOW widgets.
1914
1915         * gtk/gtklistitem.c:
1916         (gtk_real_list_item_select): 
1917         (gtk_real_list_item_deselect): 
1918         (gtk_real_list_item_toggle): 
1919         removed unneccessary queue_redraw calls.
1920
1921 Wed Aug 30 09:42:07 1998  Tim Janik  <timj@gtk.org>
1922
1923         * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
1924         automatically popup the menu on space bar.
1925
1926 Wed Aug 26 06:40:34 1998  Tim Janik  <timj@gtk.org>
1927
1928         * gtk/gtkcontainer.h:
1929         * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
1930         method), which acts similar to gtk_container_foreach(), but iterates
1931         over internal children. the GtkContainer::foreach signal vanished in
1932         favour of a new class method ->forall() that optionally includes
1933         internal widgets.
1934
1935         * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
1936         but a _forall implementation, since all child widgets we have are
1937         internal ones.
1938         (column_button_create): set the parent window prior
1939         to gtk_widget_set_parent().
1940
1941         * gtk/gtkwidget.c:
1942         exchanged all calls to gtk_container_foreach() with
1943         gtk_container_forall().
1944
1945         * gtk/gtkwidget.h: 
1946         * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
1947         the GtkWidget::composite_child argument. to have a widget created
1948         with the flag initially, two new functions got added to wrap a widgets
1949         creation:
1950         gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
1951
1952 Wed Aug 25 23:37:39 1998  Tim Janik  <timj@gtk.org>
1953
1954         * gtk/gtktooltips.h:
1955         * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
1956         gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
1957         prior to the first tip being set.
1958         don't put an extra reference on the window, since it is a toplevel,
1959         it wont get destroyed from anywhere else.
1960
1961         * overall macro and GtkType fixups.
1962
1963 1998-09-02  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1964
1965         * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
1966         constructs by more forgiving ones.  (Does anyone else feel like
1967         the color selector need rewriting?).
1968
1969 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
1970
1971         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
1972         the adjustment.
1973
1974         * gtk/gtkmenu.c: Modified reference counting so
1975         that the reference count from the toplevel that
1976         the menu creates to the menu is invisible to the
1977         application.
1978
1979 Mon Aug 31 21:36:31 1998  Raph Levien  <raph@gimp.org>
1980
1981         * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
1982         conversion selection logic, so Suns and other big-endian
1983         machines should get faster conv routines. This is also the
1984         point where 4bpp gray and 1bpp are checked in, although I
1985         wouldn't be surprised if 1bpp is a little buggy. This is
1986         synchronized with the 0.0.7 release of GdkRgb.
1987
1988         * gtk/Makefile.am: 
1989         * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
1990         appropriate change to the Makefile.am
1991
1992 Mon Aug 31 15:18:19 1998  Raph Levien  <raph@gimp.org>
1993
1994         * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
1995         which is good for images that scroll (makes the dither patterns
1996         align correctly)
1997
1998 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
1999
2000         * gdk/gdkcolor.c:
2001         (gdk_colormap_new) (gdk_colormap_get_system):
2002         quell some warnings with g_hash_table_new
2003
2004         * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
2005         when we're done with it
2006
2007         * gtk/itemfactory.c:
2008         (gtk_item_factory_from_path):
2009         (gtk_item_factory_create_item): free some strings
2010
2011         * gtk/gtklabel.c:
2012         (gtk_label_finalize): free label->pattern when done
2013         (gtk_label_parse_uline): null terminate pattern string, delete
2014         some duplicated code
2015
2016         * gtk/testthreads.c: add #include <unistd.h> for sleep()
2017
2018 Tue Aug 25 16:52:47 1998  Owen Taylor  <otaylor@redhat.com>
2019
2020         * gtk/gtktext.c (recompute_geometry): Make sure the
2021         mark we pass to line start is the beginning of a 
2022         real line, not a wrapped one.
2023
2024 Mon Aug 24 18:37:15 1998  Owen Taylor  <otaylor@redhat.com>
2025
2026         * gtk/gtktext.c: Reference count the fonts used in
2027         the text widget.
2028
2029         * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
2030         freeing functions to be more consistent, and more 
2031         convenient; leave the old names in for backwards compatibility.
2032
2033         * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
2034         allocations in pseudo-color colormaps to greatly reduce
2035         calls to XAllocColor. Keep a per-colormap hashtable to
2036         speed up finding if there is an already-allocated matching
2037         color.
2038
2039         * gdk/gdkcolor.c: Don't just match read the system colormap
2040         when the colormap is created, but synchronize our copy
2041         with the system colormap periodically.
2042         
2043         * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c: 
2044         Change XIM constants names to match GDK conventions
2045
2046         * gtk/testinput.c: Allow the drawing area to get the focus.
2047
2048         * gtk/testgtk.c: Change around the Text test to demonstrates
2049         multiple fonts, use more colors.
2050
2051         * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
2052         so they work after a widget is unrealized.
2053
2054         * gtk/gtktext.[ch]: Remove the requirement that the text
2055         widget be realized before adding text (!) Allocate colors
2056         ourself, instead of requiring the caller allocate them.
2057         Allow changing styles to work properly by keeping track
2058         of the values for a certain property are default or
2059         set explicitely.
2060
2061         * gtk/gtkmenu.h: Added some comments.
2062
2063         * gtk/gtkentry.c: Changes to match XIM constants.
2064
2065         * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
2066         for adding keyed data to drawables. (Uses g_dataset
2067         internally)
2068
2069         * gdk/gdkpixmap.c: Keep track of the colors we allocate,
2070         when creating an XPM - store them as user data for the GdkPixmap,
2071         so we don't leak colors when we create pixmaps from XPM's.
2072
2073         Allocate memory for color information in large blocks instead of 
2074         as many little pieces.
2075         
2076 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
2077
2078         * gdk/gdkrgb.c: removed some unused variables
2079
2080         * gtk/gtkclist.c
2081         * gtk/gtkmain.c: #if 0'd out some unused code
2082
2083         * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
2084
2085 Mon Aug 24 02:36:53 1998  Tim Janik  <timj@gtk.org>
2086
2087         * gtk/gtkarg.h:
2088         * gtk/gtkarg.c:
2089         * gtk/gtkwidget.h: 
2090         * gtk/gtkwidget.c: 
2091         * gtk/gtkobject.h:
2092         * gtk/gtkobject.c:
2093         * gtk/gtkcontainer.h: 
2094         * gtk/gtkcontainer.c: 
2095         (gtk_object_new):
2096         (gtk_object_set):
2097         (gtk_widget_new):
2098         (gtk_widget_set): 
2099         (gtk_container_add_with_args):
2100         (gtk_container_child_set):
2101         begin the parameter elipsis (...) after the first argument name. this
2102         change is source compatible, since it was always required, even as NULL.
2103         (gtk_args_collect): 
2104         (gtk_object_args_collect): 
2105         (gtk_container_child_args_collect):
2106         changed prototypes to pass first_arg_name, also, pass va_list variable
2107         by value (portability concerns). callers changed.
2108
2109         * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
2110         a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
2111         can't pass va_list variables by reference for portability reasons.
2112
2113 Fri Aug 21 22:40:00  Raph Levien  <raph@gtk.org>
2114
2115         * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
2116         get_visual calls, so that it gets implicitly initialized.
2117
2118 Fri Aug 21 13:06:04 1998  Stuart Parmenter  <pavlov@gimp.org>
2119         * gtk/gtkfeatures.h.in:  added GTK_HAVE_FEATURES_1_1_2 for changes
2120         such as GtkCTree function name changes
2121         
2122 Fri Aug 21 02:31:26 1998  Tim Janik  <timj@gtk.org>
2123
2124         * gtk/gtkmain.h:
2125         * gtk/gtkmain.c (gtk_check_version): added a function to perform a
2126         binary version check, returning a static string for error descriptions,
2127         or NULL on success.
2128
2129 Thu Aug 20 20:08:15 1998  Owen Taylor  <otaylor@redhat.com>
2130
2131         * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
2132         computed our geometry yet, and if not, ignore the request.
2133
2134         * gtk/gtktext.c (correct_cache_insert): Fiddled around
2135         some more. All the bug-test codes seem to work at once
2136         now. (fingers crossed...)
2137
2138 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
2139
2140         * gdk/gdkrgb.c: silly visual fixes
2141
2142         * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
2143         works
2144
2145 1998-08-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2146
2147         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
2148         anything if the event's window is not the bin window.
2149         (gtk_handle_box_motion): Likewise.
2150
2151 1998-08-19  Raph Levien  <raph@gimp.org>
2152
2153         * gtk/testgtk.c (create_color_preview): pushed the colormap and
2154         visual so it would work better with GdkRgb.
2155
2156 1998-08-19  Raph Levien  <raph@gimp.org>
2157
2158         * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
2159         4bpp static_color mode (for vga displays). Also fixed a '64' value
2160         in the dither matrix, which was causing one pixel out of 16k to be
2161         dithered wrong.
2162
2163         * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
2164         most of the contents. This is an API change - any apps that relied
2165         on the internal structure of GtkPreview will need some change -
2166         most notably in the use of reserved colors. The Gimp needed
2167         changes in this regard.
2168
2169 Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>
2170
2171         * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
2172         G_ENABLE_DEBUG being defined (specifically --gtk-module= and
2173         --g-fatal-warnings), noticed by miguel.
2174
2175 Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>
2176
2177         * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
2178         getcwd().
2179
2180         * gdk/gdkprivate.h:
2181         * gdk/gdkglobals.c:
2182         * gdk/gdkwindow.c:
2183         * gdk/gdk.c:
2184         * gtk/gtkwindow.c: 
2185         * gtk/gtkitemfactory.c: 
2186         dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
2187
2188         * gtk/gtkselection.c:
2189         * gtk/gtkpreview.c:
2190         * gtk/gtkobject.c: 
2191         * gtk/gtkmain.c: 
2192         * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
2193
2194         * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
2195
2196 Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>
2197
2198         * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab): 
2199         * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
2200         in case of show_tabs == NULL
2201
2202 Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>
2203
2204         * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
2205         to --g-fatal-warnings again. this option now causes log levels of
2206         WARNING and CRITICAL to abort().
2207
2208         * gdk/gdk.c: 
2209         * gdk/gdkdnd.c: 
2210         * gdk/gdkcc.c: 
2211         * gdk/gdkfont.c: 
2212         * gdk/gdkwindow.c:
2213         * gdk/gdkvisual.c:
2214         * gtk/gtkwidget.c:
2215         * gtk/gtktypeutils.c:
2216         * gtk/gtktree.c:
2217         * gtk/gtkfontsel.c:
2218         * gtk/gtkmain.c:
2219         * gtk/gtkobject.c:
2220         * gtk/gtkpreview.c:
2221         * gtk/gtkselection.c:
2222         * gtk/gtktext.c:
2223         * gtk/gtktree.c:
2224         * gtk/gtktreeitem.c:
2225         did a global search&replace to substitute g_print() calls with
2226         g_message(). libraries shouldn't use printf(), g_print() or
2227         g_printerr() at all.
2228         a bunch of the replacements should probably be wrapped into the
2229         G{D|T}K_NOTE() macros, so they are special cased for debugging
2230         purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
2231         things.
2232
2233         * gdk/gdkdnd.c: added copyright notice.
2234
2235 Mon Aug 17 17:28:00  Raph Levien  <raph@gtk.org>
2236
2237         * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
2238         impressively fast now - about 4.65 Mpix/s on an IBM TP 600
2239         running a PII 233. It's synced with the 0.0.5 release of
2240         GdkRgb.
2241
2242 Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>
2243
2244         * gtk/gtkclist.h:
2245         (struct _GtkCListClass): new class methods:
2246         (sort_list) (insert_row) (remove_row) (set_cell_contents)
2247
2248         * gtk/gtkclist.c :
2249         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2250         removed and replaced by (set_cell_contents)
2251         (set_cell_contents): function for class method set_cell_contents
2252         (real_insert_row): function for class method insert_row
2253         (real_remoce_row): function for class method remove_row
2254         (real_sort_list): function for class method sort_list
2255         (default_compare): fix to avoid problems with cell types != CELL_TEXT
2256
2257         * gtk/gtkctree.h :
2258         (gtk_ctree_export_to_gnode): new function to export a ctree as gnode 
2259         (gtk_ctree_node_is_visible): new function to return visibility state
2260         of a node
2261         (gtk_ctree_show_stub): new function to set visibility of root stub
2262
2263         renamed functions :
2264         (gtk_ctree_insert) -> (gtk_ctree_insert_node)
2265         (gtk_ctree_remove) -> (gtk_ctree_remove_node)
2266         (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
2267         (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
2268         (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
2269         (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
2270         (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
2271         (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
2272         (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
2273         (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
2274         (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
2275         (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
2276         (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
2277         (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
2278         (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
2279         (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
2280         (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
2281         (gtk_ctree_sort) -> (gtk_ctree_sort_node)
2282         (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
2283
2284         * gtk/gtkctree.c :
2285         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2286         removed and replaced by (set_cell_contents)
2287         (set_cell_contents): function for class method set_cell_contents
2288         (real_insert_row): function for class method insert_row
2289         (real_remoce_row): function for class method remove_row
2290         (real_sort_list): function for class method sort_list
2291         (default_compare): removed. CTree now also compares two GtkCTreeRows
2292         instead of two GtkCTreeNodes.
2293         (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
2294         unlinking the node
2295         (real_tree_expand) (real_tree_collapse): fix for refcounting of
2296         node pixmaps
2297         (set_node_info): call gtk_ctree_node_set_pixtext instead of
2298         manipulating the row itself
2299         
2300         * gtk/testgtk.c: use renamed functions of GtkCTree.
2301         new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
2302         at work.
2303
2304 Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>
2305
2306         * gtk/gtkmain.c: removed gtk_input_add_interp.
2307
2308         * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
2309         keyword.
2310         (gtk_editable_get_event_time): fix default: case.
2311
2312         * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
2313
2314         * gdk/gdkpixmap.c: made a bunch of unexported functions static.
2315
2316         * gdk/gdkcolor.c:
2317         * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
2318         of our functions.
2319
2320         * various minor compilation cleanups, such as bogus commas in
2321         enums and similar things.
2322
2323 Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>
2324
2325         * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
2326         (thanx raph).
2327
2328 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2329
2330         * NEWS: updated for 1.1.2
2331         * gtk+.spec: version = 1.1.2
2332
2333 Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>
2334
2335         * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
2336         times. changed --gtk-with-module to --gtk-module at owen's request.
2337
2338 Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>
2339
2340         * gtk/gtkmain.c (gtk_init): feature a new commandline option
2341         --gtk-with-module=<module> that allows additional loading and
2342         initialization of modules (e.g. GLE).
2343
2344 Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>
2345
2346         * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
2347         pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
2348
2349         * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
2350         with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
2351         "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
2352         different *-fatal-* arguments now. this needs to be revised and
2353         compressed to a reasonable amount of arguments.
2354
2355 Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>
2356
2357         * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
2358         "--g-fatal-warnings" causes fatal warnings in GLib,
2359         "--gdk-fatal-warnings" causes fatal warnings in Gdk,
2360         "--gtk-fatal-warnings" causes fatal warnings in Gtk.
2361
2362         * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
2363         * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
2364
2365         * gtk/testgtk.c: 
2366         * gdk/gxid.c:
2367         we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
2368         since automake doesn't support per target _CFLAGS yet.
2369
2370         * configure.in: require GLib 1.1.3.
2371
2372 Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>
2373
2374         * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
2375         to set a callback to test if a node in drag can be dropped onto
2376         it's currrent location.
2377         * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
2378         to change the pointer when a drag destination is not allowed.
2379
2380 Thu Aug 13 21:06:00 1998  Raph Levien  <raph@gtk.org>
2381
2382         * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
2383         speeds up the 565_d case by about 25% total. Thanks Ray!
2384
2385 Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>
2386
2387         * Changed GtkSignalFunc back to () from (void). (again!)
2388
2389         * Added file README.cvs-commits
2390         
2391 Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>
2392
2393         * docs/gtk_tut.sgml:
2394           - Tidy up of the menufactory example from
2395             Andy Kahn <kahn@zk3.dec.com>
2396           - New section on Range Widgets from
2397             David Huggins-Daines <bn711@freenet.carleton.ca>
2398           - Started a new section on 'Advanced Event and Signal
2399             Handling' - used an email from Owen.
2400           - New appendix on Gdk Event Types
2401           - Added the tictactoe full example code to the
2402             'Code Examples' appendix
2403
2404 Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>
2405
2406         * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - 
2407           to calculate all the metrics at once of a string, including
2408           things which weren't calculated before.
2409
2410         * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
2411           MenuItem type, that when put as the first thing in a
2412           menu, makes the menu tearoff. Currently drawn as a
2413           dashed line.
2414
2415         * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
2416           "hide_on_activate" to the MenuItem class structure to allow
2417           check and radio buttons to be changed with <Space> without
2418           hiding the menu.
2419
2420         * gtk/gtkitemfactory.c: 
2421           - Create a AccelGroup for each MenuShell we create.
2422           - If an '_' appears before a  character 'c' in the path,
2423             then make 'c' an accelerator in the menu's accel group,
2424             and if the menuitem is menubar <alt>C an accelerator 
2425             in the itemfactory's accel group. Double '__' inserts
2426             a literal '_'
2427
2428         * gtk/gtklabel.[ch]: Add support for a pattern arg - 
2429           which is a string. If an '_' appears in this string,
2430           the corresponding position in the label is underlined.
2431
2432           Add gtk_label_parse_uline() convenience function which
2433           takes a string with embedded underlines, sets the
2434           pattern and label, and returns the accelerator keyval.
2435
2436         * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
2437           Instead, they create a GtkWindow and add themselves
2438           to that. (When torn off, another new feature, they
2439           create another GtkWindow to hold the torn off menu)
2440
2441           New function gtk_menu_set_tearoff_state()
2442         
2443         * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: 
2444           Added action signals  for keyboard navigation of menus.
2445
2446         * gtk/gtkmenushell.c: Key press handler which activates
2447           bindings for navigation, and accelerators, for handling
2448           underline accelerators. Exported functions to select 
2449           and activate menu items in a menushell.
2450
2451         * gtk/testgtk.c: Added a new "Item Factory" test which
2452           tests GtkItemFactory and the new keyboard navigation
2453           of menus.
2454
2455 Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>
2456
2457         * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
2458         external functions have been called. also relookup nodes after
2459         this function has been invoked.
2460
2461 Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>
2462
2463         * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
2464           beginning of Text when creating the Text widget.
2465
2466         * gtk/testgtk.c: Grab the focus on the text widget so
2467           as to test out the above.
2468
2469 Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>
2470
2471         * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16. 
2472           ::changed is a notification signal and should have no default
2473           handler. A complete redraw of the Text widget does _not_ need to
2474           be done on every text insertion.
2475
2476 Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
2477         (gtk-abilleira-072198-patch)
2478
2479         * gtk/gtkwindow.[ch]: 
2480           Add gtk_window_set_modal() which sets a flag; when
2481           set the window does a gtk_grab_add() when the window
2482           is shown, and a gtk_grab_remove() when the window
2483           is hidden. 
2484
2485         * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
2486           that case will run "Create Dir","Delete File" and "Rename File" 
2487           dialogs as modal too.
2488
2489         * gtk/testgtk.c: Added a button with an example of creating modal 
2490           dialog boxes. Including file selection and color selection standard
2491           dialogs.
2492         
2493 Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>
2494
2495         * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
2496           Removed CAN_FOCUS by default from scrollbars, button
2497           children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
2498           (Scrollbar definitely good change, toolbar bit more questionable)
2499
2500 Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>
2501
2502         * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
2503         Pettersen).
2504
2505 Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>
2506
2507         * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0; 
2508           added all logical operations to gc->function.
2509
2510 Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>
2511
2512         * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
2513         gtk_widget_size_allocate instead of gtk_widget_queue_resize
2514         if the visibility state of a scrollbar changes.
2515
2516 Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>
2517
2518         * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
2519
2520 Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>
2521
2522         * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
2523         gtk_clist_merge and gtk_clist_mergesort. :)
2524
2525 1998-08-06  Martin Baulig  <martin@home-of-linux.org>
2526
2527         * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
2528         `mergesort' -> `my_mergesort'.
2529
2530 Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>
2531
2532         * gtk/gtkenums.h: new enum GtkSortType.
2533         
2534         * gtk/gtkclist.h:
2535         * gtk/gtkclist.c:
2536         Added sorting capabilities to GtkCList. New APIs :
2537         gtk_clist_set_compare_func, gtk_clist_set_sort_column,
2538         gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort. 
2539         New internal functions : default_compare, merge, mergesort.
2540
2541         (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
2542         
2543         (gtk_clist_insert): Modified to handle gtk_clist_append and the
2544         auto sort flag. Changed the return value from void to gint to
2545         return the row number where the element was actually inserted.
2546
2547         (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
2548         
2549         * gtk/gtkctree.h:
2550         * gtk/gtkctree.c:
2551         Removed the auto_sort flag, replaced ctree->node_compare with
2552         clist->compare all over the place, modified default_compare to
2553         match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
2554         gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
2555
2556         * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
2557         sorting. The lists can be sorted by a column by clicking the 
2558         corresponding title button.
2559         
2560 Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
2561
2562         * Released GTK+ 1.1.1
2563
2564 Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>
2565
2566         * gtk/gtkctree.h:
2567         * gtk/gtkctree.c:
2568         (gtk_ctree_find): changed to return a gboolean
2569         (gtk_ctree_insert_gnode): new function for recursive insertion of a
2570         GNode tree.
2571         (gtk_ctree_real_select_recursive): fix for extended selection
2572         (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
2573         (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
2574
2575 Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>
2576
2577         * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
2578         GLib version 1.1.1 is now required at minimum.
2579
2580         * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
2581         of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
2582
2583 Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>
2584  
2585         * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
2586           cursor before (possibly) deleting the cursor's text
2587           property.
2588  
2589         * gtk/gtktext.c (correct_cache_delete): More attempts
2590           to clean the line-start cache up after inserting
2591           a property. Among other things, make sure to
2592           fix up text->current_line, since it is used to 
2593           refetch the changed lines.
2594  
2595 Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>
2596
2597         * gtk/gtktable.[ch]: Empty rows/columns of the table
2598         should not have been marked as being able to shrink.
2599         (Fixes problem with shrinking scrollbarless GIMP canvases)
2600
2601 1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2602
2603         * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
2604         function to find a row by its data pointer using a custom
2605         comparison function.
2606
2607 Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>
2608
2609         * gtk/gtkclist.c: draw the buttons during a "draw" as well,
2610           this fixes a bug when the whole widget is made non-sesitive
2611           the buttons weren't redrawn
2612
2613 Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>
2614
2615         * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
2616         * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
2617         * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
2618
2619 Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>
2620
2621         * gdk/gdkwindow.c (gdk_window_reparent): Change 
2622           window_private->parent pointer when reparenting.
2623
2624 Sat Aug  1 22:17:00 1998  Raph Levien  <raph@acm.org>
2625
2626         * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
2627         with the standalone release.
2628
2629 Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>
2630
2631         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
2632         (gtk_clist_button_release) (new_column_width): Few fixes for
2633         column resize. Store resize column in clist->drag_pos.
2634
2635 Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>
2636
2637         * gtk/gtkctree.h 
2638         * gtk/gtkctree.c 
2639         * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
2640         to GtkCTreeNode *node.
2641
2642         * gtk/gtklist.h : added extended selection mode and auto scrolling.
2643         (struct _GtkList): removed unneeded variables timer, button,
2644         selection_start_pos, selection_end_pos, scroll_direction, have_grab.
2645         Added new variables undo_selection, undo_unselection, last_focus_child,
2646         undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
2647         drag_selection, add_mode.
2648  
2649         New functions :
2650         (gtk_list_extend_selection), (gtk_list_start_selection),
2651         (gtk_list_end_selection), (gtk_list_select_all),
2652         (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
2653         (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
2654         (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
2655         (gtk_list_undo_selection), (gtk_list_end_drag_selection)
2656         
2657         * gtk/gtklist.c : 
2658         (gtk_list_enter_notify): removed, because auto scrolling now works
2659         with gtk_list_motion_notify
2660  
2661         New functions, needed for auto scrolling :
2662         (gtk_list_motion_notify) (gtk_list_move_focus_child)
2663  
2664         New functions for extended selection support :
2665         (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
2666         (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
2667         (gtk_list_focus_lost)
2668         
2669         (gtk_list_set_focus_child): modified gtk_container_set_focus_child
2670         function to support auto scrolling, and avoid out-of-sync errors in
2671         case auf GTK_SELECTION_BROWSE
2672         (gtk_list_focus): modified gtk_container_focus function to avoid out
2673         off sync errors in case auf GTK_SELECTION_EXTENDED
2674
2675         * gtk/gtklistitem.h 
2676         * gtk/gtklistitem.c :
2677         New signal functions for key binding support :
2678         (toggle_focus_row), (select_all), (list_item), (unselect_all)
2679         (list_item), (undo_selection), (start_selection), (end_selection)
2680         (extend_selection), (scroll_horizontal), (scroll_vertical),
2681         (toggle_add_mode)
2682         (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
2683         GDK_KEY_RELEASE_MASK
2684         (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
2685  
2686         * gtk/gtkcombo.c :
2687         (gtk_combo_popup_button_press):  grab pointer for combo->list
2688         (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
2689         (gtk_combo_list_key_press): take care of which child HAS_GRAB
2690         (gtk_comb_init): don't connect combo->button with button_release_event
2691
2692 Thu Jul 30 12:39:36 1998  Lars Hamann  <lars@gtk.org>
2693
2694         * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
2695
2696 Wed Jul 29 23:31:50 1998  Lars Hamann  <lars@gtk.org>
2697
2698         * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
2699         horizontal autoscrolling, GtkCTree's 'reorder ability' now works
2700         with horizontal and vertical autoscrolling.
2701
2702 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2703
2704         * gtk/docs/man: new directory
2705         * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
2706
2707 Tue Jul 28 00:03:20 1998  Lars Hamann  <lars@gtk.org>
2708
2709         * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
2710         bug
2711
2712 Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>
2713
2714         * docs/gtk_tut.sgml: GtkTree section from
2715           David Huggins-Daines <bn711@freenet.carleton.ca>,
2716           add a GtkText widget example
2717         * examples/text/* example/tree/* : new examples for the
2718           GtkTree and GtkText widgets
2719         * docs/gtk_tut.sgml: added an appendix to hold complete code
2720           examples that aren't in a full form elsewhere in the
2721           tutorial (e.g. scribble)
2722
2723 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2724
2725         * Released GTK+ 1.1.0
2726
2727 Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>
2728
2729         * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
2730         the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
2731
2732 Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>
2733
2734         * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
2735         values are looked up.
2736
2737         * gtk/gtktypeutils.h:
2738         * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
2739         gtk_type_enums_find_value to lookup enum values.
2740
2741         * gtk/gtkctree.h: 
2742         * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
2743         GtkCTreeExpansionType. fixed signal creations to pass the enum
2744         types not just the base type GTK_TYPE_ENUM.
2745
2746         * gtk/gtkclist.h: 
2747         * gtk/gtkclist.c: fixed signal creations to pass the real enum
2748         types not just the base type GTK_TYPE_ENUM.
2749
2750 Sun Jul 26 14:50:07 1998  Stefan Jeske  <stefan@gtk.org>
2751
2752         * gtk/testgtk.c : 
2753         Began cleanup, e.g. use gtk_widget_show_all instead of many 
2754         gtk_widget_show's. Completely rewrote the button box sample
2755         (only one window now). Removed "miscellaneous" button.
2756
2757 Sun Jul 26 14:48:14 1998  Stefan Jeske  <stefan@gtk.org>
2758
2759         * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate): 
2760         Fixed wrong allocation for GTK_BUTTONBOX_END.
2761         (allocation->x  =>  allocation->y)
2762
2763 Sun Jul 26 14:06:37 1998  Lars Hamann  <lars@gtk.org>
2764
2765         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
2766         (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
2767         
2768         * gtk/gtkctree.c (real_tree_select): added check to avoid double
2769         selected rows
2770         (gtk_ctree_button_press)
2771         (gtk_ctree_button_release): fix for pointer grab
2772
2773 Sat Jul 25 13:16:00 1998 Damon Chaplin  <DAChaplin@msn.com>
2774
2775         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): 
2776         Fixed initialization problem - dirty memory could cause problems.
2777         Also checked that bitmapped fonts can be scaled when showing the
2778         available sizes.
2779
2780 Sat Jul 25 02:25:03 1998  Lars Hamann  <lars@gtk.org>
2781
2782         * gtk/gtkctree.c (gtk_ctree_sort_recursive)
2783         (gtk_ctree_sort_recursive): test for node != NULL
2784         (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
2785         (gtk_ctree_last) : added sanity checks
2786         * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
2787
2788 Fri Jul 24 18:15:49 1998  Lars Hamann  <lars@gtk.org>
2789
2790         * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
2791
2792 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
2793
2794         * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
2795
2796 Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
2797
2798         * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
2799         to check out binding priorities. someone should really write
2800         gtkrc-mode for emacs.
2801
2802         * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
2803         * gtk/testgtk.c (main): and move it here ;). this test says something
2804         on release of C-9. (this works only if the mouse pointer is on a
2805         spinbutton and there is no focus widget).
2806
2807         * gtk/gtkrc.h:
2808         * gtk/gtkrc.c:
2809         export gtk_rc_parse_color, gtk_rc_parse_state and a new function
2810         gtk_rc_parse_priority to parse path priority types.
2811         export rc tokens.
2812         feature binding parsing.
2813
2814 Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
2815
2816         * gtk/gtkbindings.h: 
2817         * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
2818         feature binding parsing in rc files.
2819         * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
2820         * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
2821         order the bindings with lowest priority first.
2822
2823 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
2824
2825         * gdk/gdkrgb.c: actually builds and runs properly on big
2826         endian machines now, because we #include config.h. Also
2827         fixed up a compile error in the WORDS_BIGENDIAN case in
2828         gdk_rgb_convert_565_gray. I made the fix by looking at
2829         patterns in the other code; Raph can you verify this?
2830
2831         * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
2832         warnings
2833
2834 Wed Jul 22 23:00:44 1998  Lars Hamann  <lars@gtk.org>
2835
2836         * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse) 
2837         (tree_toggle_expansion) (real_select/unselect_row)
2838         (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
2839
2840 Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>
2841
2842         * gtk/gtktext.c (new_text_property): We free things from
2843         the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
2844
2845         * Fix up line start cache when splitting a property
2846         during an insert.
2847
2848 Wed Jul 15 21:15:52 1998  Owen Taylor  <otaylor@redhat.com>
2849
2850         * gtk/gtkwidget.c: restauration => restoration
2851
2852 Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>
2853
2854         * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
2855         hasn't been created yet, don't do the lookup.
2856
2857 1998-07-20  Raph Levien  <raph@acm.org>
2858
2859         * gdk/gdkrgb.c: More cleanups in the config process.
2860
2861 1998-07-20  Raph Levien  <raph@acm.org>
2862
2863         * gdkrgb.c: Fixed minor config bug preventing big-endian
2864         architectures from working.
2865
2866 Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>
2867
2868         * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
2869         activity indicator. It is settable now as a fraction of the
2870         total width/height using gtk_progress_bar_set_activity_blocks.
2871         Renamed gtk_progress_bar_set_number_of_blocks to
2872         gtk_progress_bar_set_discrete_blocks.
2873
2874 Mon Jul 20 21:28:18 1998  Lars Hamann  <lars@gtk.org>
2875
2876         * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
2877         (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
2878         tree to specified depth
2879         (gtk_ctree_expand_to_depth): expand tree to specified depth
2880         (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
2881
2882 Sun Jul 19 23:51:05 1998  Lars Hamann  <lars@gtk.org>
2883
2884         * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
2885         of GTK_CLIST_ADD_MOD
2886         * gtk/testgtk.c (add1000_clist): changed pixmap
2887
2888 Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>
2889
2890         * gtk/gtkmain.h: 
2891         * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
2892
2893         * gtk/gtktypeutils.h:
2894         * gtk/gtkitemfactory.h: remove "void" from prototypes again.
2895
2896 Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>
2897
2898         * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
2899         CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
2900         (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
2901         CHILD_ARG_POSITION
2902         (gtk_notebook_reorder_child): new funktion to change position of a
2903         notebook page
2904         (gtk_notebook_draw_arrow): draw left/right arrow with
2905         GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
2906
2907         * gtk/gtkstyle.c (gtk_default_draw_arrow):
2908         added GTK_SHADOW_ETCHED_IN/OUT
2909
2910 Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>
2911
2912         * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
2913           gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
2914         Introduced generic GtkProgress widget. Derived GtkProgressBar from
2915         GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
2916
2917 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
2918
2919         * gtk/gtktypeutils.h
2920         * gtk/gtkitemfactory.h: explicitly specify void in prototype
2921
2922 Fri Jul 17 17:54:02 1998  Lars Hamann  <lars@gtk.org>
2923
2924         * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
2925         of list
2926
2927 Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>
2928
2929         * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
2930         sropped the approach of copying all signal specific data into a
2931         GtkHandlerInfo structure. we rather keep the signal data on the stack
2932         in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
2933         avoids multiple lookups of the signal pointer and works savely together
2934         with destroy notifiers of handlers.
2935
2936         * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
2937         someone destroys the entry on the ::activate signal.
2938
2939 Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>
2940
2941         * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
2942         instead of ypad (typo).
2943         (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
2944         border around the allocation).
2945         (gtk_arrow_init): the static requisition needs to be setup in this
2946         function rather than gtk_widget_new(), so arrow creation works without
2947         the gtk_arrow_new() constructing.
2948         (gtk_arrow_expose): return TRUE, since we actually handled the expose.
2949
2950         * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
2951         implementation for GtkWidget::size_request, so size requisition for
2952         simple statically sized widgets like GtkArrow works.
2953
2954 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
2955
2956         * gtk-config.in: minor changes to gtk-config: --cflags doesn't
2957         prepend -I@libdir@/glib/include anymore, since glib-config handles
2958         it; --libs strips out redundant -L<path>'s properly (there was
2959         code in there to do it before, but it didn't work)
2960
2961 Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>
2962
2963         * gtk/gtknotebook.h: 
2964         * gtk/gtknotebook.c: signdness corrections all ove the place.
2965         implementation of object arguments: GtkNotebook::enable_popup,
2966         GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
2967         GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
2968         begun implementation of child args, we have GtkNotebook::tab_label, but
2969         GtkNotebook::menu_label and GtkNotebook::position still lack the
2970         implementation.
2971         (gtk_notebook_remove_page):
2972         (gtk_notebook_current_page): allow negative indices (-1) as alias for
2973         the last page.
2974
2975         * gtk/gtkentry.h:
2976         * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
2977         arguments GtkEntry::max_length and GtkEntry::visibility.
2978         (gtk_entry_adjust_scroll): queue a redraw.
2979
2980         * gtk/gtkeditable.h:
2981         * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
2982         object arguments GtkEditable::text_position and GtkEditable::editable.
2983         new (action) signal GtkEditable::set_editable.
2984         provide a default handler for GtkEditable::changed that queues a redraw.
2985
2986         * gtk/gtktext.h: 
2987         * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
2988         set_editable.
2989
2990 Thu Jul 16 14:42:11 1998  Lars Hamann  <lars@gtk.org>
2991
2992         * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
2993         case of drag_target == NULL
2994         * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
2995         Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
2996         * gtk/gtkfilesel.c (gtk_file_selection_file_button,
2997         gtk_dir_selection_file_button): fix due to changes in clist's
2998         select_row signal.
2999
3000 Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
3001
3002         * gtk/gtkwidget.h:
3003         * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
3004         similar to gtk_widget_set_uposition(). that is: -1=unspecified,
3005         -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
3006         to be gint16s rather than guint16s, since that's what the code expected
3007         (for a long time actually).
3008
3009         * gtk/gtkviewport.c:
3010         added support for object arguments: GtkViewport::shadow_type,
3011         GtkViewport::vadjustment and GtkViewport::hadjustment.
3012         (gtk_viewport_add): chain gtk_bin_add.
3013
3014         * gtk/gtkscrolledwindow.c: 
3015         added support for object argument: GtkScrolledWindow::hscrollbar_policy,
3016         GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
3017
3018         * gtk/gtkadjustment.h: 
3019         * gtk/gtkadjustment.c: 
3020         * gtk/gtkctree.h: 
3021         * gtk/gtkclist.h: 
3022         * gtk/gtkctree.c: 
3023         * gtk/gtkclist.c:
3024         * gtk/gtkscrolledwindow.h:
3025         * gtk/gtkscrolledwindow.c:
3026         * gtk/gtkviewport.h:
3027         * gtk/gtkviewport.c:
3028         GtkType and macro fixups.
3029
3030 Thu Jul 16 01:10:02 1998  Lars Hamann  <lars@gtk.org>
3031
3032         * gtk/gtkctree.h :
3033         * gtk/gtkctree.c :
3034         Added focus handling, horizontal and vertical autoscrolling,
3035         extended Selection Mode, key bindings
3036         Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
3037         Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
3038         Removed gtk_ctree_clear.
3039         
3040         * gtk/gtkclist.h :
3041         * gtk/gtkclist.c : 
3042         Added focus handling, horizontal and vertical autoscrolling,
3043         extended Selection Mode, key bindings
3044
3045 Wed Jul 15 12:39:27 1998  Raph Levien  <raph@acm.org>
3046
3047         * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
3048         source tree. For more information on GdkRgb, please see:
3049         http://www.levien.com/gdkrgb/
3050
3051         * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
3052         bothers me slightly that the feature is in gdk, and this file is
3053         in gtk, but it's probably ok.
3054
3055         * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
3056
3057         * gdk/gdkrgb.c:
3058         * gdk/gdkrgb.h: Added this module.
3059
3060         * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
3061
3062         * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
3063
3064 Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>
3065
3066         * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
3067         to this function. it needs to relookup the signal multiple times.
3068         this fixes spurious segfaults that could show up with signal intensive
3069         code, when classes are created during a pending emission (which is
3070         normal case).
3071
3072 Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>
3073
3074         * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
3075         child if it isn't a label.
3076
3077 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
3078
3079         * gtk/gtkdialog.h: 
3080         * gtk/gtkseparator.h: 
3081         * gtk/gtkhseparator.h: 
3082         * gtk/gtkvseparator.h: macro and GtkType fixups.
3083
3084 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
3085
3086         * gtk/testgtk.c (create_cursors): display the current cursor name.
3087
3088         * gtk/gtktypeutils.h: 
3089         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
3090         the fundamental type definition. the GtkArg union now only covers
3091         the required storage types for argument values. adapted the GTK_VALUE_*
3092         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
3093
3094         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
3095         code, fixed int/float collection. fixed a bug in the sanity checking
3096         code for GtkObjects.
3097
3098         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
3099         argument collection code.
3100
3101         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
3102         macros when distinguishing the return type.
3103
3104 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
3105
3106         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
3107           is not NULL before trying to g_list_remove the child. A patch
3108           from Michael Lausch.
3109
3110 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
3111
3112         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
3113         collection (always casted to doubles upon argument passing).
3114
3115 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
3116
3117         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
3118         object_init_func for derived objects with the object's ->klass field
3119         still pointing to the corresponding base class, otherwise overridden
3120         class functions could get called with partly-initialized objects.
3121         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
3122
3123 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
3124
3125         * gtk/gtkobject.h:
3126         * gtk/gtkobject.c:
3127         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
3128
3129         * gtk/gtkcontainer.h:
3130         * gtk/gtkcontainer.c:
3131         (gtk_container_child_arg_get_info): new function which wraps
3132         gtk_arg_get_info().
3133
3134 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
3135
3136         * gtk/gtkcontainer.c:
3137         (gtk_container_arg_get): 
3138         (gtk_container_arg_set): 
3139         * gtk/gtkobject.c:
3140         (gtk_object_arg_set): 
3141         (gtk_object_arg_get):
3142         strictly check for the associated get/set arg functions. if an
3143         arg is readable or writable, the associated class functions *must*
3144         be provided.
3145
3146 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
3147
3148         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
3149         padding into account if there is an accelerator.
3150
3151 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
3152
3153         * gtk/gtkcontainer.c:
3154         (gtk_container_add_with_args): collect the arguments with
3155         gtk_container_child_args_collect, not through gtk_object_args_collect.
3156         (gtk_container_child_set): likewise.
3157
3158 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
3159
3160         * gtk/gtktypeutils.h: 
3161         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
3162         which is derived from GTK_TYPE_STRING.
3163
3164         * gtk/gtkbindings.c: reworked the argument type handling.
3165
3166 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3167
3168         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
3169           so that it seems to allow normal operation in those modes,
3170           although you will only see black  (GIMP toolbar now pops up,
3171           just don't create a new image and GIMP now works in 4 bit.)
3172
3173 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3174
3175         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
3176           array, which was too low (?)
3177
3178 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
3179
3180         * gtk/gtkcontainer.h: 
3181         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
3182         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
3183         we now export a new function gtk_container_child_args_collect().
3184         for consistency with the object arguments, a few functions got renamed:
3185         gtk_container_child_arg_get -> gtk_container_child_get,
3186         gtk_container_child_arg_set -> gtk_container_child_set,
3187         gtk_container_child_arg_getv -> gtk_container_child_getv,
3188         gtk_container_child_arg_setv -> gtk_container_child_setv,
3189         gtk_container_add_with_argv -> gtk_container_addv.
3190         note, gtk_container_add_with_args() remained, because its equivalent
3191         would be gtk_container_add(,, ...) which would break all existing code.
3192         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
3193         we expect the `arg_name' argument to be a const static string now.
3194         (gtk_container_get_child_arg_type): function removed.
3195
3196 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
3197
3198         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
3199         this is a static inline function that collects command line arguments
3200         from a va_list. this file can just be included in all places that
3201         need this functionality.
3202
3203         * gtk/gtkarg.h: 
3204         * gtk/gtkarg.c: new files which implement most of the argument
3205         handling stuff from gtkobject.c. also collected a few more
3206         gtk_arg_* utility functions from else places.
3207
3208         * gtk/gtkobject.h: 
3209         * gtk/gtkobject.c: moved most of the argument handling code into
3210         gtkarg.c. we now export gtk_object_args_collect() as a non-public
3211         method with a blind va_list pointer.
3212         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
3213         const static string now.
3214         (gtk_object_get_arg_type): function got removed.
3215
3216         * gtk/gtkwidget.c: 
3217         (gtk_widget_set): 
3218         (gtk_widget_new): adaptions for gtk_object_args_collect().
3219
3220         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
3221         fundamental type name so as to have a valid prefix, e.g. "bool"->
3222         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
3223         though that should probably be something like GtkNone since the
3224         type itself is called GTK_TYPE_NONE.
3225         even the internal type names need to avoid name clashes and must live
3226         in their own namespace, several code portions rely on that.
3227         we should relly have typedefs such as typedef gchar* GtkString; so the
3228         fundamental type names can be used for code dumpers just like with all
3229         the Gtk/Gdk types.
3230
3231 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
3232
3233         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
3234         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
3235         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
3236         (GTK_RELIEF_HALF).
3237         (gtk_button_paint): set the background for prelighted buttons with
3238         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
3239         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
3240         the shadow type (otherwise we get strange shadows for coloured buttons).
3241         (gtk_button_set_relief): queue a redraw after changing
3242         the relief.
3243         (gtk_button_class_init): 
3244         (gtk_button_set_arg): 
3245         (gtk_button_get_arg): added object argument "GtkButton::relief".
3246
3247         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
3248
3249 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
3250
3251         * gtk/gtkbutton.h:
3252         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
3253         GTK_BIN (button)->child to button->child to keep source compatibility.
3254
3255         * gtk/gtkoptionmenu.c:
3256         * gtk/gtkclist.c:
3257         * gtkcheckbutton.c: don't refer to button->child, but
3258         GTK_BIN (button)->child instead.
3259
3260 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
3261
3262         * docs/gtkfaq.sgml: update anon CVS info
3263
3264 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
3265
3266         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
3267         functions.
3268
3269         * gdk/gdkwindow.c:
3270         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
3271         to XFree() calls.
3272
3273 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3274
3275         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
3276         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
3277
3278 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
3279
3280         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
3281
3282 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
3283
3284         * gtk/gtkwidget.h:
3285         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
3286
3287         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
3288         error that prevented signal to entry addition for signals with
3289         parameters.
3290
3291 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
3292
3293         * ltconfig: fix for properly detecting shared lib support on
3294         SunPro cc (taken from libtool 1.2.a)
3295
3296 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
3297
3298         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
3299
3300 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
3301
3302         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
3303         rc set pattern is favoured, this is needed for overriding of style
3304         patterns with subsequently parsed rc files.
3305
3306 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
3307
3308         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
3309         error messages.
3310
3311 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
3312
3313         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
3314         modifier as well.
3315         (gtk_accelerator_name): add "<Release>" to the accelerator name if
3316         neccessary.
3317
3318         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
3319         account.
3320
3321         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
3322         default handler for key-release events, which checks for activation
3323         of GDK_RELEASE_MASK key bindings.
3324
3325         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
3326
3327 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
3328
3329         * gtk/gtkarrow.h: GtkType and macro fixups.
3330         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
3331         "GtkArrow::shadow_type".
3332
3333 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
3334
3335         * gtk/gtkalignment.h:
3336         * gtk/gtkbin.h: GtkType and macro fixups.
3337         
3338         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
3339         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
3340         GtkAlignment::xscale, GtkAlignment::yscale.
3341
3342 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
3343
3344         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
3345         fucntions from all parent types upon class initialization.
3346
3347         * gtk/gtkcontainer.c:
3348         (gtk_container_get_type): announce gtk_container_base_class_init to
3349         the type system.
3350         (gtk_container_base_class_init): new function to feature base class
3351         initialization.
3352         (gtk_container_get_child_arg): 
3353         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
3354         and set_child_arg methods of the class indicated through the argument
3355         name.
3356
3357         * gtk/gtkobject.c:
3358         (gtk_object_base_class_init): new function to feature base class
3359         initialization.
3360         (gtk_object_init_type): announce gtk_object_base_class_init to the type
3361         system.
3362         (gtk_object_class_init): setup the get_arg and set_arg pointers for
3363         GtkObjectClass.
3364         (gtk_object_setv): 
3365         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
3366         instead of bothering the type system with this.
3367
3368         * gtk/gtkaccellabel.c: 
3369         * gtk/gtkbutton.c: 
3370         * gtk/gtkradiobutton.c: 
3371         * gtk/gtktable.c:
3372         * gtk/gtktogglebutton.c: 
3373         * gtk/gtktipsquery.c: 
3374         * gtk/gtkbox.c: 
3375         * gtk/gtkpacker.c: 
3376         * gtk/gtkwidget.c: 
3377         * gtk/gtkwindow.c: 
3378         * gtk/gtkframe.c: 
3379         * gtk/gtkmisc.c:
3380         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
3381         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
3382         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
3383         arg functions to take a GtkObject argument.
3384
3385         gtk/gtkadjustment.c:
3386         gtk/gtkalignment.c:
3387         gtk/gtkarrow.c:
3388         gtk/gtkaspectframe.c:
3389         gtk/gtkbbox.c:
3390         gtk/gtkbin.c:
3391         gtk/gtkcheckbutton.c:
3392         gtk/gtkcheckmenuitem.c:
3393         gtk/gtkclist.c:
3394         gtk/gtkcolorsel.c:
3395         gtk/gtkcombo.c:
3396         gtk/gtkctree.c:
3397         gtk/gtkcurve.c:
3398         gtk/gtkdata.c:
3399         gtk/gtkdialog.c:
3400         gtk/gtkdrawingarea.c:
3401         gtk/gtkeditable.c:
3402         gtk/gtkentry.c:
3403         gtk/gtkeventbox.c:
3404         gtk/gtkfilesel.c:
3405         gtk/gtkfixed.c:
3406         gtk/gtkfontsel.c:
3407         gtk/gtkgamma.c:
3408         gtk/gtkhandlebox.c:
3409         gtk/gtkhbbox.c:
3410         gtk/gtkhbox.c:
3411         gtk/gtkhpaned.c:
3412         gtk/gtkhruler.c:
3413         gtk/gtkhscale.c:
3414         gtk/gtkhscrollbar.c:
3415         gtk/gtkhseparator.c:
3416         gtk/gtkimage.c:
3417         gtk/gtkinputdialog.c:
3418         gtk/gtkitem.c:
3419         gtk/gtkitemfactory.c:
3420         gtk/gtklist.c:
3421         gtk/gtklistitem.c:
3422         gtk/gtkmenu.c:
3423         gtk/gtkmenubar.c:
3424         gtk/gtkmenuitem.c:
3425         gtk/gtkmenushell.c:
3426         gtk/gtknotebook.c:
3427         gtk/gtkoptionmenu.c:
3428         gtk/gtkpaned.c:
3429         gtk/gtkpixmap.c:
3430         gtk/gtkpreview.c:
3431         gtk/gtkprogressbar.c:
3432         gtk/gtkradiomenuitem.c:
3433         gtk/gtkrange.c:
3434         gtk/gtkruler.c:
3435         gtk/gtkscale.c:
3436         gtk/gtkscrollbar.c:
3437         gtk/gtkscrolledwindow.c:
3438         gtk/gtkseparator.c:
3439         gtk/gtkspinbutton.c:
3440         gtk/gtkstatusbar.c:
3441         gtk/gtktext.c:
3442         gtk/gtktoolbar.c:
3443         gtk/gtktooltips.c:
3444         gtk/gtktree.c:
3445         gtk/gtktreeitem.c:
3446         gtk/gtkvbbox.c:
3447         gtk/gtkvbox.c:
3448         gtk/gtkviewport.c:
3449         gtk/gtkvpaned.c:
3450         gtk/gtkvruler.c:
3451         gtk/gtkvscale.c:
3452         gtk/gtkvscrollbar.c:
3453         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
3454         match the modified GtkTypeInfo structure.
3455
3456 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
3457
3458         * gtk/testgtk.c: use rand() instead of random() for portability
3459
3460 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
3461
3462         * configure.in
3463         * acconfig.h
3464         * gdk/gdk.c: use native Xlib XConvertCase if it's available
3465
3466 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
3467
3468         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
3469         XConvertCase() functionality from X11R6 on X11R5 systems.
3470
3471 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
3472
3473         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
3474         gdk_string_height, gdk_char_height to retrieve the exact
3475         height of a text.
3476
3477 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
3478
3479         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
3480           by Stefan Mars <mars@lysator.liu.se>
3481         * examples/clist/clist.c examples/clist/Makefile: example code
3482           for GtkCList widget from the Tutorial
3483
3484 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
3485
3486         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
3487         if the container is not visible, we might be a toplevel! this holds
3488         for all other base container implementations as well, that are
3489         candidates to derive toplevels from. in general the resizing code will
3490         care about visibility itself.
3491         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
3492         * gtk/gtkbox.c (gtk_box_remove): likewise.
3493
3494         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
3495         gtk_window_set_hints(), since we haven't calculated the new position
3496         yet.
3497
3498         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
3499         *mask are alway initialized in a sane way, regardless of the return
3500         value.
3501
3502 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
3503
3504         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
3505         to gtk_container_child_arg_setv, but takes a variable argument list.
3506         new function gtk_container_get_child_arg_type, which is needed by
3507         gtk_object_collect_args.
3508
3509         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
3510         take a function pointer to figure the argument type.
3511         adapted callers to pass gtk_object_get_arg_type.
3512         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
3513         gtk_object_get_arg_type..
3514
3515         * gtk/gtkpacker.h: 
3516         * gtk/gtkpacker.c:
3517         (gtk_packer_reorder_child): new function to change the packing order
3518         of a child.
3519         (gtk_packer_size_request): 
3520         (gtk_packer_size_allocate): take container->border_width into acount.
3521
3522         * gtk/gtkpacker.c: implemented widget arguments:
3523         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
3524         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
3525         implemented child arguments:
3526         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
3527         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
3528         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
3529         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
3530
3531         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
3532         not the alignment.
3533
3534         * gtk/gtkeventbox.h:
3535         * gtk/gtkeventbox.c: GtkType and macro fixups.
3536
3537         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
3538         sensitivity of an entry.
3539
3540         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
3541         for insensitive base and text.
3542
3543         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
3544         widget state dependent.
3545         (gtk_entry_style_set): likewise.
3546         (gtk_entry_state_changed): set background color on state changes.
3547         (gtk_entry_draw_text): for non selected text, use state dependent
3548         colors.
3549
3550         * gtk/gtktogglebutton.c: support for widget arguments
3551         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
3552
3553 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
3554
3555         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
3556         code for 1.0.x-like parameters. Changed internal interface of
3557         gtk_spin_button_real_spin. Several fixes to avoid emission of
3558         "value_changed" where possible.
3559
3560 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
3561
3562         * gtk-boxed.defs: s/GkWidget/GtkWidget/
3563
3564 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
3565
3566         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
3567         to select the resize_mode for the idle-labels container.
3568
3569         * gtk/gtkframe.h: 
3570         * gtk/gtkframe.c: GtkType and macro corrections.
3571
3572         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
3573         support widget argument "GtkRadioButton::group".
3574
3575 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
3576
3577         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
3578         unconditionally if resize_mode has changed.
3579
3580         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
3581         GTK_RESIZE_QUEUE on the scrolled window.
3582         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
3583
3584 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
3585
3586         * gtk/gtkcontainer.h:
3587         * gtk/gtkcontainer.c:
3588         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
3589         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
3590         (gtk_container_queue_resize): new function to queue a container for
3591         a *size* reallocation (doesn't affect its position, and thus its
3592         parent is left untouched usually).
3593         (gtk_container_get_resize_container): new function to retrive the next
3594         most resize container which is not itself queued for a resize.
3595         (gtk_container_idle_sizer): new function to carefully process the
3596         container_resize_queue since it can change during invokation of
3597         gtk_container_check_resize().
3598         (gtk_container_resize_children): total rework of this function to
3599         properly handle resize containers. makes a lot of assumptions whitch
3600         are stated in the comments.
3601
3602         * gtk/gtkcontainer.c:
3603         (gtk_container_real_check_resize): only requeue ourselves if we are not
3604         a resize container.
3605         (gtk_container_clear_resize_widgets): care for automatic deletion of our
3606         resize_widgets list on size_allocate through a handler connection.
3607
3608         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
3609         focus and default widget of a window, so to take the burden from
3610         gtk_widget_unparent.
3611
3612         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
3613         to be clever, but actually messed up the resize_children logic and
3614         caused unneccessary allocations on its whole branch. besides this,
3615         it messed up the display by not invoking a redraw after the allocation.
3616
3617         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
3618         that it is the child again that is queued for a resize.
3619         (gtk_table_attach): likewise.
3620         (gtk_table_remove): likewise.
3621
3622 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
3623
3624         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
3625         gtk_entry_adjust_scroll.  Required if you change the cursor
3626         position and want to sync it up with your code (Midnight Commander
3627         gtk front end needs this).
3628
3629         * gtk/gtktable.c: Deal with tables that have size 0, 0.
3630
3631 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
3632
3633         * examples/README.1ST: new file to explain how the
3634           code examples should be extracted from the tutorial.
3635
3636 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
3637
3638         * gtk/gtkctree.c (draw_row): added new "line style"
3639         GTK_CTREE_LINES_TABBED 
3640         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
3641         search the glist pointer of an GtkCTreeRow
3642
3643 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
3644  
3645         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
3646         from, and clean up, the dependencies.  Generate to intermediate
3647         files to prevent problems with Ctrl-C.
3648
3649         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
3650
3651 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
3652
3653         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
3654         - Bug fix for precision problem causing occasional double emission 
3655           of "value_changed" signal (hopefully works now).
3656         - API change (should be binary compatible) : 
3657           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
3658           Modified cursor example appropriately.
3659           To spin by something other than step_/page_increment, use
3660           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
3661         - Made GTK_SHADOW_NONE the default. ;)
3662         - Fixed casting of GtkAdjustment* to GtkWidget* in
3663           gtk_spin_button_value_changed.
3664
3665 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
3666
3667         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
3668         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
3669         resize widget list before queuing the container for a new reize.
3670         (gtk_container_need_resize): changed return value to FALSE, since this
3671         used to indicate that no further resizes are needed.
3672         (gtk_container_set_arg): 
3673         (gtk_container_get_arg): 
3674         (gtk_container_class_init): implemented GtkContainer::resize_mode
3675         argument.
3676
3677         (gtk_container_resize_children): when we walk up the tree of a resize
3678         widget we need to stop if we are the current parent.
3679
3680         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
3681         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
3682         (gtk_widget_hide_all): retrive the toplevel widget from via
3683         gtk_widget_get_resize_container().
3684
3685 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
3686
3687         * gtk/gtklist.c (gtk_list_button_press): Only respond
3688           to selection with button 1. This allows context-sensitive
3689           menus to work correctly.
3690
3691 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
3692
3693         * gtk/gtkaccelgroup.c: 
3694         * gtk/gtkbindings.c: 
3695         * gtk/gtkcontainer.c:
3696         * gtk/gtkitemfactory.c:
3697         * gtk/gtkobject.c: 
3698         * gtk/gtksignal.c:
3699         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
3700         g_quark_from_static_string calls to save memory.
3701
3702         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
3703         function _after_ the new data has been setup.
3704         minor changes to object data functions to feature the GQuark type.
3705
3706 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
3707
3708         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
3709           from argv.
3710
3711 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
3712
3713         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
3714           to be more readable perl, to spit out stuff that looks
3715           more like readable C, and to pipe output through indent
3716           so output looks a lot like readable C. No functional
3717           changes.
3718
3719 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
3720
3721         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
3722           necessary when switching to a masked pixmap. (Based on a patch
3723           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
3724
3725 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
3726
3727         * gtk/gtkeditable.[ch]: Added action signals for keyboard
3728           bindings. (move_cursor, kill_word, etc, etc, etc). 
3729
3730           removed the time argument from
3731           gtk_editable_cut/copy/paste_clipboard (source but not
3732           binary incompatible...) Instead get time from
3733           gtk_get_current_event ().
3734         
3735         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
3736           signals.
3737
3738 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
3739
3740         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
3741
3742         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
3743              parent class to GtkNotebookClass when splitting the widget in
3744              two.  Also updated some comments.
3745
3746         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
3747                button without a font selected.
3748
3749              Fixed bug in set_font_name - I hadn't updated the code to
3750                search for the style in the font_style clist - it was
3751                still assuming the style row was equal to its index,
3752                but it isn't any more.
3753         
3754              Changed 'Reset' button on filter page to 'Clear Filter'.
3755              Deleted old code relating to the old 'Filter Fonts' toggle
3756              Updated some comments.
3757              Cleared 'Actual Fontname' if no font is set.
3758
3759         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
3760              destroying the GtkFontSelection instead of the
3761              GtkFontSelectionDialog.
3762
3763 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
3764
3765         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
3766           flag to make all warnings fatal errors.
3767
3768         * gtk/testthreads.c: moved <pthreads.h> include inside 
3769           #ifdef USE_PTHREADS
3770
3771 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
3772
3773         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
3774           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
3775
3776         - Added new function gtk_container_set_resize_mode() for
3777           fine-grained control of where resize-queueing is done.
3778
3779         - Removed GtkContainer::need_resize and GtkWindow::move_resize
3780         - Added GtkContainer::check_resize to replace need_resize.
3781
3782         - Added function gtk_container_check_resize() to trigger
3783           queued resizes, and gtk_container_resize_children() to
3784           Figure which children need to be size-allocated. (logic
3785           moved from gtkwindow.c)
3786
3787         - Reorganized code in gtkwindow.c
3788         
3789         - Set the resize-mode for viewports so that resizes within
3790           a viewport don't propagate out of it. 
3791         
3792 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3793
3794         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
3795
3796         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
3797         g_return_val_if_fail, because the function *does* return a value.
3798
3799 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
3800
3801         * gtk/gtkaccellabel.h:
3802         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
3803         request the size of the accelerator portion of an accel label.
3804         (gtk_accel_label_size_request): don't request for the accelerators size.
3805         (gtk_accel_label_expose_event): only draw the accelerator if we got
3806         enough extra space.
3807
3808         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
3809         width from children.
3810
3811         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
3812         object (after removal has been requested) check if there is still an
3813         accelerator remaining to avoid adding two accelerators on an object.
3814         this can happen for locked accelerators (or accelerator-frozen widgets).
3815         (gtk_menu_size_request): feature childrens accelerator width in size
3816         requests.
3817
3818         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
3819         gtk_widget_freeze_accelerators() for dynamically created menu items.
3820
3821         * gtk/gtksignal.h: 
3822         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
3823         which will return a handler_id > 0 if the specified function is pending
3824         for `signal_id'.
3825
3826         * gtk/gtkwidget.h:
3827         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
3828         a signal handler function to stop accelerator addition.
3829         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
3830         which will prevent (undo) any accelerators from being added to or
3831         removed from a widget.
3832
3833 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
3834
3835         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
3836         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
3837         acceleration, new API gtk_spin_button_set_snap_to_ticks.
3838
3839 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
3840
3841         * gdk/gdk.h:
3842         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
3843         the current GdkWindow the pointer is on if there is any.
3844         
3845         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
3846         and one column, so we don't construction logic at all. changed a few
3847         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
3848         unsigned int wraps.
3849
3850         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
3851         portion, added an additional check for parent != widget.
3852
3853         * more GtkType and macro fixups.
3854
3855 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3856
3857         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
3858         "clip" parameter, which is the clipping rectangle to use.  This
3859         eliminates the extremely annoying flicker when exposing parts of
3860         the handlebox.
3861
3862 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
3863
3864         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
3865         resizing
3866
3867 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
3868
3869         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
3870         != 0 on the argument.
3871
3872         * gtk/gtktable.h: 
3873         * gtk/gtktable.c: new function gtk_table_resize() which allowes
3874         shrinking and expanding of tables. implementation of widget arguments
3875         and child arguments. many signedness corrections.
3876
3877 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
3878
3879         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
3880         not only the child, otherwise we might end up taking away other
3881         childrens space after the resize.
3882
3883         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
3884         an unknown menu path from any source, that path must always be flagged
3885         as "modified", since we don't really know whether it has its default
3886         value or not.
3887
3888         * gtk/gtktree.c:
3889         * gtk/gtkpacker.c:
3890         * gtk/gtknotebook.c:
3891         * gtk/gtkmenushell.c:
3892         * gtk/gtklist.c:
3893         * gtk/gtkpaned.c:
3894         * gtk/gtkfixed.c: 
3895         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
3896
3897         * gtk/gtkbox.h: 
3898         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
3899         arguments. implemented child arguments.
3900
3901         * more GtkType and macro fixups.
3902
3903 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
3904
3905         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
3906
3907         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
3908         and gtk_clist_get_hadjustment.
3909
3910         * gtk/gtkcontainer.c:
3911         implementation of children arguments, new class member functions
3912         (child_type), (get_child_arg) and (set_child_arg) plus a new field
3913         n_child_args.
3914         (gtk_container_child_type): new function which returns the type of a
3915         child that the container expects for its next addition.
3916         (gtk_container_add_child_arg_type): new function to introduce a new
3917         child argument at class creation time.
3918         (gtk_container_query_child_args): new function to query all child
3919         arguments that are supported by a container class.
3920         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
3921         child argument.
3922         (gtk_container_child_arg_setv): new function to set a child argument for
3923         a certain container and child combination.
3924         (gtk_container_add_with_args):
3925         (gtk_container_add_with_argv): new functions to feature addition of a
3926         new child in combination with the setting of certain child arguments.
3927
3928         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
3929         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
3930         this should really be done through class cretion hooks some day.
3931
3932         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
3933         guint : 16.
3934
3935         * gtk/gtkpacker.h:
3936         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
3937         follow the gtk convention for lower case variable names (important
3938         for language wrappers and widget arguments), and made them guint : 16.
3939
3940         * examples/packer/pack.c: adaptions for the case converted GtkPacker
3941         fields.
3942
3943 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
3944
3945         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
3946         change the character pair for single line comments.
3947         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
3948         GtkItemFactoryClass.
3949         (gtk_item_factory_parse_rc_string): likewise.
3950
3951 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
3952
3953         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
3954         lists from the klass structure to a static structure
3955         in gtkfontsel.c; cleans up global the namespace.
3956
3957 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
3958
3959         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
3960         bug with /*< skip >*/ and remove warning.
3961         
3962 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
3963
3964         * gtk/Makefile.am: Made the gtkmarshal.* generation
3965         rules maintainer-only.
3966
3967 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
3968
3969         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
3970           gtk/Makefile.am gtk/makenums.pl 
3971
3972         Removed out the G_ENUM/FLAGS mechanism in favor
3973         of a perl script that parses the standard headers
3974         (with occasional /*< nick=foo >*/ style overrides)
3975         and extracts the enumerations.
3976
3977           gtk/maketypes.awk: Small improvments to the
3978           translation of names. (Avoid splitting gc into
3979           g_c_.)
3980         
3981 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
3982
3983         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
3984         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
3985         
3986 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
3987
3988         * gtk/gtkentry.c:
3989         - Restored gtk_entry_adjust_scroll to static 
3990         - Changed text positioning code so that we always
3991           display as large a portion of the text as possible.
3992
3993 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
3994
3995         * gtk/gtktext.c (gtk_text_finalize): Free internal
3996         structures of text widget. Also, unreference pixmaps
3997         when unrealizing.
3998         
3999 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
4000
4001         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
4002         3.3.1 bug workaround to number keys starting at 1.
4003
4004 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
4005
4006         * docs/gtk_tut.sgml: Fixed urls for complete example
4007         source for scribble+widget-writing examples.
4008
4009 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
4010
4011         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
4012         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
4013         specs of the form c #abcdef [ more keys ] properly.
4014
4015 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
4016
4017         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
4018         (gtk_spin_button_set_shadow_type):
4019         New API to set the shadow type of the arrow panel.
4020
4021 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
4022
4023         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
4024         code for drawing the child in two places at once. Unfortunately,
4025         not only does it not work anymore (because reparenting has
4026         been fixed), but it also triggers reparent/expose loops
4027         in some cases.
4028
4029         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
4030         an unecessary unrealize.
4031
4032 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
4033
4034         * gdk/gdkwindow.c (gdk_window_reparent): Update the
4035           old and new parents' child window lists properly.
4036
4037 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
4038
4039         * gtk/gtkpacker.h:
4040         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
4041         and GtkSideType, to be consistent with the rest of Gtk's enum
4042         definitions. wrapped the enum definitions with the G_ eunm wrappers.
4043         spelled out the GTK_ANCHOR_* enum values, since single letters don't
4044         work out corectly as nick-names (left the old values as aliases).
4045         some signdness corrections (border-width, spacing), could stand more.
4046
4047 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4048
4049         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
4050           Added gtkpacker
4051
4052         * examples/packer/pack.c, examples/packer/Makefile: Added
4053           gtkpacker example
4054
4055 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
4056
4057         * gtk/gtktext.c (remove_cache_line): Fixed broken
4058         list-removal code.
4059
4060         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
4061         Check bounds before deleting.
4062
4063 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
4064
4065         * autogen.sh: Support ACLOCAL_FLAGS
4066
4067 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
4068
4069         * gtk-config.in: Added missing quotes.
4070
4071 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
4072
4073         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
4074
4075 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
4076
4077         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
4078         G_COMPILED_WITH_DEBUGGING.
4079
4080         * configure.in (fd_set): Explain check better.
4081
4082         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
4083         the version from which gtk+'s libtool forked.  Needed for people
4084         who use post-1.2 alphas of libtool.
4085
4086 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
4087
4088         * glib/* Moved to glib module
4089
4090         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
4091           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
4092
4093           configuration changes for the above:
4094          
4095           - Use AM_PATH_GLIB by default to find glib; also accept
4096             a --with-glib option for using an uninstalled glib.
4097          
4098           - Put --enable-debug information into config.h so
4099             that we rebuild when it changes. (was in glibconfig.h)
4100
4101 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
4102
4103         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
4104
4105         * gtk/gtknotebook.h (struct _GtkNotebookClass):
4106         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
4107         added missing argument (according to Joseph Coleman's bug report)
4108
4109         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
4110         function to fix notebook focus handling
4111         
4112 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
4113
4114         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
4115           glib/gutils.c glib/testglib.c glib/gdataset.c
4116           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
4117           gtk/gtktext.c gtk/gtkbindings.c:
4118
4119          renamed g_const_pointer => gconstpointer
4120
4121 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
4122
4123         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
4124         invoked with (NULL, NULL); (this worked sometime ago).
4125
4126         * gtk/gtktypeutils.h: 
4127         * gtk/gtktypeutils.c: enum and flags type creation can now be done
4128         through gtk_type_register_enum() and gtk_type_register_flags(),
4129         which allow to specify the enum value arrays directly.
4130         the NULL terminated value arrays can be retrived through
4131         gtk_type_enum_get_values() and gtk_type_flags_get_values();
4132         (gtk_type_children_types): new function to query derived types.
4133
4134 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
4135
4136         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
4137         environment to genmarshal.pl.
4138         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
4139         rule), and removed it where not needed (in the dependencies).
4140
4141         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
4142
4143 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
4144
4145         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
4146         was just g_direct_hash.
4147
4148 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
4149
4150         * configure.in: x_libs=, not $x_libs=. Enough said.
4151           (Case only hit for --disable-xshm)
4152         
4153 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
4154
4155         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
4156           when testing for X libraries, don't replace them. Because
4157           the user might have specified the path to the X libraries
4158           themself before running configure.
4159
4160         * examples/**.c: Changed all gpointer * to gpointer
4161         
4162 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4163
4164         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
4165         fleur_cursor field.  Now the cursor is created/destroyed on demand
4166         by the routines that need it.
4167
4168         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
4169         (gtk_handle_box_motion): The fleur cursor is created and destroyed
4170         only when needed.
4171
4172 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
4173
4174         * gtk/gtktypeutils.h: 
4175         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
4176         gtk_enum_set_values to gtk_type_enum_get_values and
4177         gtk_type_enum_set_values respectively, since they are actually type
4178         system features.
4179
4180         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
4181         my last commit. ;)
4182
4183 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
4184
4185         * gtk/gtkselection.h: 
4186         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
4187         gtk_selection_data_free.
4188
4189         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
4190         for "selection_received", which was completely bogus.
4191         * other fixups to gtk_signal_new() calls all over the place.
4192
4193         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
4194         * gtk/gtktypebuiltins_vars.c: type variable implementations.
4195         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
4196         declarations.
4197         * gtk/gtktypebuiltins_evals.c: enum value arrays.
4198         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
4199         gtk.defs.
4200         * gtk/gtk.defs: generated file with scheme syntax for type definitions
4201         of gtk and gdk structures and enums.
4202         * gtk/gtktypeutils.h: 
4203         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
4204         macros anymore (this fixes binary incompatibility with new enum
4205         definitions).
4206
4207         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
4208         key bindings for this widget.
4209         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
4210         handler.
4211
4212         * gtk/gtkobject.h:
4213         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
4214         again. new functions gtk_object_class_user_signal_new () and
4215         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
4216         flag on the signal creation.
4217
4218 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
4219
4220         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
4221
4222 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
4223
4224         * gdk/gdkprivate.h: 
4225         * gdk/gdktypes.h: 
4226         * gtk/gtkprivate.h: 
4227         * gtk/gtkwidget.h: 
4228         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
4229
4230         * reworked enum value array generation code. gtk.defs is a generated
4231         file now.
4232
4233 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
4234
4235         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
4236         check menu items in the compatibility code (this required me to remove
4237         the "<check>" part from the menu item name, grrr).
4238
4239 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
4240
4241         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
4242         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
4243         
4244 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
4245
4246         * gtk/gtkitemfactory.h: 
4247         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
4248         additions to the dumping code to feature GtkPatternSpec.
4249         even found a bug to fix in the original code ;)
4250         
4251 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
4252
4253         * gtk/gtkitemfactory.c: support different types of callbacks, to
4254         maintain existing code.
4255
4256 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
4257
4258         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
4259
4260         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
4261         this should eventually be done by gentypeinfo.el somewhen.
4262         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
4263
4264         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
4265         enum values of an enum type.
4266
4267         * gtk/gtk.defs:
4268         * gtk/gtkcurve.h: 
4269         * gtk/gtkobject.h: 
4270         * gtk/gtkprivate.h: 
4271         * gtk/gtkwidget.h:
4272         * gtk/gtkenums.h: 
4273         brought enum/flags definitions in sync, added a few more enum
4274         definitions for bindings and pattern matching.
4275
4276         * some more macro and GtkType fixups in various places.
4277
4278         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
4279         as a key-release modifier for the binding system.
4280
4281 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
4282
4283         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
4284         was a stale list pointer that is already present in GtkMenuShell.
4285
4286         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
4287         GtkMenuShell::selection_done which is emitted after the menu shell
4288         poped down again and all possible menu items have been activated.
4289
4290 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
4291
4292         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
4293         before activation of the menuitem, so the menu is actually taken off the
4294         screen prior to any menu item activation.
4295
4296         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
4297         for NULL nodes.
4298
4299         * gtk/gtkwidget.h:
4300         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
4301         the emission of the "add-accelerator" signal on a widget. this is
4302         usefull to prevent accelerator installation on certain widgets.
4303
4304         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
4305         labels left justified, by setting their alignment. stop accelerator
4306         installation for the menu items, since we use dynamic menus.
4307
4308 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
4309
4310         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
4311         should *really* use GtkItemFactory. this is only for preserving source
4312         compatibility where possible, use of GtkMenuFactory is deprecated as of
4313         now.
4314
4315         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
4316         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
4317         missed this possibility when i added gtk_object_class_add_user_signal
4318         in late january.
4319
4320         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
4321
4322 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
4323
4324         * gtk/gtkaccelgroup.h: 
4325         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
4326
4327         * gtk/gtkaccellabel.h: 
4328         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
4329         display of the accelerators associated with a certain widget.
4330
4331         * gtk/gtkitemfactory.h: 
4332         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
4333         parsing and accelerator handling.
4334
4335         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
4336         positioning a menu.
4337         (gtk_menu_map): removed the allocation code.
4338         (gtk_menu_size_allocate): care for redrawing of children and resize
4339         our widget->window correctly.
4340         (gtk_menu_key_press): feature the new accelerator groups.
4341
4342         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
4343         submenu if neccessary.
4344
4345         * gtk/gtkmenuitem.c:
4346         * gtk/gtkcheckmenuitem.c:
4347         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
4348         function variants.
4349
4350         * gdk/gdk.c:
4351         (gdk_keyval_from_name): 
4352         (gdk_keyval_name): new functions for keyval<->key-name associations.
4353         (gdk_keyval_to_upper): 
4354         (gdk_keyval_to_lower): 
4355         (gdk_keyval_is_upper): 
4356         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
4357         regards to their cases.
4358
4359 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
4360
4361         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
4362         widget's class path.
4363         (gtk_widget_path): new function to calculate a widget's name path.
4364
4365         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
4366         pattern matching, features reversed pattern matches.
4367
4368 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
4369
4370         * examples/extract.sh, examples/extract.awk:
4371           New files to automagically extract code examples from the
4372           tutorial.
4373
4374 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
4375
4376         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
4377         * gtk/gtkcontainer.c (gtk_container_focus_move):
4378         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
4379
4380 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
4381
4382         * docs/gtk_tut.sgml: minor changes to support auto
4383           extraction of example code
4384
4385 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
4386
4387         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
4388           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
4389
4390 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
4391
4392         * docs/gtk_tut.sgml:
4393           - new section on Events
4394           - change all delete_event callbacks to include
4395             a GdkEvent parameter
4396           - clean up the formatting
4397
4398         * examples - helloworld.c, helloworld2.c, notebook.c,
4399           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
4400           rulers.c, table.c, wheelbarrow.c: change all delete_event
4401            callbacks to include a GdkEvent parameter.
4402
4403 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4404
4405         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
4406         field of crossing events.
4407         (struct _GdkEventCrossing): Added the following fields: time, x,
4408         y, x_root, y_root, mode, focus, state.
4409
4410         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
4411         crossing event structure.
4412
4413         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
4414         changes to the crossing event structure.
4415
4416 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
4417
4418         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
4419
4420 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
4421
4422         * docs/gtk_tut.sgml:
4423            - GtkTooltips, update to current API
4424            - change all 'gpointer *data' to 'gpointer data'
4425            - other minor changes
4426
4427 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
4428
4429         * configure.in (LDFLAGS): Bomb out with a moderately
4430           helpful message if detection of X libraries fails.
4431
4432 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
4433
4434   [ Combination of:
4435      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
4436      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
4437
4438         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
4439           gtk/gtksignal.c gtk/gtktext.c: 
4440
4441           Fixups for warnings from adding const to type of GHashFunc,
4442           GCompareFunc
4443         
4444         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
4445           ansi-warnings fixups.
4446
4447 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
4448
4449         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
4450         Locate child at (border_width,border_width), not
4451         (2*border_width,2*border_width). [ The border is _outside_
4452         widget->window ]
4453         
4454         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
4455           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
4456
4457 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
4458
4459         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
4460         used in gnome-libs
4461
4462 1998-05-22    <sopwith@redhat.com>
4463
4464         * gtk/gtkeventbox.c: Pass size_allocate on to the child
4465         regardless of whether it is visible or not. Also
4466         locate child at (border_width,border_width), not (0,0)
4467
4468 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
4469
4470         * gtk/gtkhandlebox.c: Added style_set handler.
4471
4472 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
4473  [ From: Chris Lahey  <clahey@umich.edu> ]
4474         
4475         * gtk/gtkeditable.c, gtk/gtkeditable.h,
4476           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
4477           and set_position functions to get and set the cursor position.
4478
4479         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
4480           signal status. Make GtkText do user-controlled insertion
4481           and deletion through the Editable widget so that these
4482           signals are properly emitted.
4483
4484         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
4485           display asterisks instead of empty space when visible = FALSE)
4486
4487 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
4488
4489         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
4490         signal.
4491
4492 1998-05-21    <sopwith@redhat.com>
4493
4494         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
4495         custom routine for loading images specified in gtkrc's.
4496
4497 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
4498
4499         * configure.in: Use pthread_attr_init() as a test function,
4500         since most of the rest of -lpthread is macros on DU4.
4501
4502 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
4503
4504         * gtk/gtkcombo.c: implemented completion in the entry.
4505
4506 1998-05-18    <sopwith@moebuis.labs.redhat.com>
4507
4508         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
4509
4510 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
4511
4512         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
4513         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
4514         to be of runtype GTK_RUN_LAST.
4515
4516         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
4517         "need-resize".
4518
4519         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
4520         "widget-selected".
4521
4522 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
4523
4524         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
4525         text retrived from GtkEntry. only intercept the Tab key if there
4526         was some text to complete.
4527
4528 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
4529
4530         Basic thread-awareness:
4531
4532         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
4533
4534         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
4535         gdk_threads_[init/enter/leave] for applications, plus
4536         gdk_threads_wake to wake the mainloop thread out of
4537         the select().
4538
4539         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
4540
4541 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
4542
4543         * gtk/testgtk.c (list_clear): Account for the fact
4544         that gtk_list_clear_items is not inclusive. (Clears
4545         [start, end))
4546
4547 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
4548
4549         * gdk/gdk.c: include gdkkeysyms.h always
4550         
4551
4552 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
4553
4554         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
4555         the visibility_notify_event method and changed method order.
4556
4557 1998-05-14    <sopwith@moebuis.labs.redhat.com>
4558
4559         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
4560
4561 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
4562
4563         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
4564         from Olli Helenius <ollhel@batman.jytol.fi>.
4565
4566         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
4567         freeing types.
4568         (gtk_type_set_chunk_alloc): new function to allow allocation of new
4569         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
4570         thorugh g_malloc).
4571
4572         * gtk/gtkobject.c (gtk_object_finalize): free an object through
4573         gtk_type_free().
4574
4575         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
4576         GtkButtons to 16.
4577         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
4578         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
4579
4580 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
4581
4582         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
4583           GPOINTER_TO_UINT fixes.
4584
4585         * gtk/gtksignal.c: Include <string.h> for memset.
4586
4587 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
4588         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
4589
4590         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
4591         Cleanups, comments and the ability to have rulers with 
4592         a reversed direction.
4593
4594 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
4595
4596         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
4597         that Sopwith missed when changing stat => lstat.
4598
4599 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
4600
4601         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
4602           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
4603         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
4604
4605         * gdk/gdk.c: Print sizeof() results
4606         as g_print("%ld", (glong)sizeof(foo)), to deal with
4607         sizeof() being long on Alpha's.
4608
4609         * gtk/testgtk.c: include <string.h> for strlen
4610
4611 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
4612         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
4613         
4614         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
4615         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
4616
4617         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
4618
4619 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
4620         (From: Christopher James Lahey <clahey@umich.edu>)
4621         
4622         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
4623           gtk/testgtk.c:
4624
4625         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
4626         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
4627         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
4628         the default relief for the toolbars buttons. Added an
4629         toggle for the toolbar test in testgtk.c.
4630
4631 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
4632
4633         * docs/gtk-config.1: Rewritten and hopefully improved.
4634
4635 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
4636
4637         * docs/Makefile.am
4638         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
4639
4640 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4641
4642         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
4643         GtkPreview's visual and colormap, otherwise things can BadMatch.
4644
4645         * gtk/testgtk.c (create_color_preview): 
4646         (create_gray_preview): Removed pushing/popping of visual/colormap
4647         now that GtkPreview does things correctly.
4648
4649         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
4650         (gtk_color_selection_draw_wheel): Pick the style from the correct
4651         place (the colorsel->wheel_area widget) so that the GCs will match
4652         with where we are going to paint to.
4653
4654         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
4655         of visual/colormap now that GtkColorSelection does things the
4656         right way.
4657
4658 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
4659
4660         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
4661         previously unused window->need_resize flag to mark if a window's
4662         descendents changed size while the window was not visible. In this
4663         case, when the window becomes visible, we reallocate everything,
4664         since we didn't keep track of what actually changed.
4665
4666         (Fixes bug where changing the popdown strings of a
4667         combo to something of the same length caused them to
4668         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
4669
4670 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
4671
4672         [security audit by Alan Cox]
4673
4674         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
4675         exceed maximum assumed size.
4676
4677         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
4678         not exceed maximum assumed size.
4679         (gtk_menu_factory_remove): likewise.
4680         (gtk_menu_factory_find_recurse): likewise.
4681
4682 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
4683
4684         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
4685         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
4686         redrawn if that is still neccessary. don't allow queueing of already
4687         destructed objects.
4688         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
4689         widgets which are in the queue can be destroyed safely, handle
4690         requeueing properly.
4691         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
4692         widgets which are in the queue can be destroyed/unrealized safely.
4693
4694 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
4695
4696         * gtkfaq.sgml: add question on multi-threading,
4697           minor URL cleanups.
4698
4699 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
4700
4701         * configure.in (cflags_set): preserve automake CFLAGS.
4702
4703         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
4704         and libgdk-1.1.la. this means we need to change certain portions of
4705         the Makefile.am on major/minor version bumps.
4706
4707         * ltmain.sh: the -release option is not required anymore.
4708         
4709         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
4710         of the first argument to be of type GtkObject. unconditionally compile
4711         this function. removed __GNUC__ dependancy of the gtk_object_ref and
4712         gtk_object_unref macro wrappers for this function.
4713
4714 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
4715
4716         * gtk/gtkobject.h:
4717         * gtk/gtkobject.c:
4718         (gtk_object_data_try_key):
4719         (gtk_object_data_force_id): these are now macros substituting the old
4720         functions. we just use the corresponding g_dataset_* functions for
4721         key->id associations. (this is to assure unique key<->id associations).
4722
4723 1998-05-10  Stefan Jeske  <stefan@gtk.org>
4724
4725         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
4726         to gboolean.
4727
4728         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
4729
4730 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
4731
4732         * configure.in (LIBS): Try to figure out if this
4733         is Digital Unix and we need -std1 to get the
4734         right prototypes.
4735
4736 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
4737
4738         * docs/gtk_tut_it.sgml: update of Italian tutorial
4739           translation from Daniele Canazza <dcanazz@tin.it>
4740
4741 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
4742
4743         * gtk/gtkfeatures.h.in: new file used as template for
4744         * gtk/gtkfeatures.h: new file to define macros indicating newly
4745         introduced features, such as GTK_HAVE_SIGNAL_INIT.
4746
4747         * gtk/gtksignal.c:
4748         (gtk_signal_emitv_by_name):
4749         (gtk_signal_emitv):
4750         new functions to emit signals with an already provided parameter set.
4751         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
4752         (gtk_signal_real_emit): prototype changes, so this functions always
4753         gets its parameters and signal structure as arguments.
4754         (gtk_signal_emit): provide the signal structure and parameter list for
4755         gtk_signal_real_emit.
4756         (gtk_signal_emit_by_name): likewise.
4757
4758 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
4759
4760         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
4761         signal connections through unsetting GTK_CONNECTED.
4762         (gtk_signal_handler_insert): reflect the presence of signal connections
4763         through setting GTK_CONNECTED.
4764         (gtk_signal_real_emit): only check for handler emissions if the object
4765         has the GTK_CONNECTED flag set.
4766         (gtk_signal_handler_pending): don't check for pending handlers if the
4767         GTK_CONNECTED flag is not set for this object.
4768
4769         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
4770         a GtkObject has signal handler connections.
4771
4772         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
4773         set for this object call gtk_signal_handlers_destroy().
4774         
4775         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
4776         multiple processing of macro args.
4777
4778         * gtk/gtktypeutils.c:
4779         * gtk/gtkobject.c:
4780         * gtk/gtkwidget.c:
4781         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
4782
4783 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
4784
4785         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
4786         draw-queue when we are done. 
4787
4788         (gtk_widget_queue_draw/_queu_resize): Always return
4789         FALSE and avoid having two idles at the same time.
4790         
4791 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
4792
4793         * gtk/gtktext.c: Various fixes to make sure cache
4794         lines are freed if line_start_cache doesn't point to the
4795         beginning of the cache.
4796
4797 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
4798
4799         * style_set improvements for GtkText and GtkEntry
4800
4801 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
4802
4803         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
4804         been initialized.
4805
4806 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
4807
4808         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
4809         data chunks through a global object data structure list. unlink
4810         object data before invoking its destroy function.
4811         (gtk_object_finalize): slight modification to allow usage of object
4812         data during object finalization.
4813
4814 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
4815
4816         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
4817         signal names, e.g. "signal-name" is now an alias for "signal_name".
4818         (gtk_signal_handler_new): allocate handlers through a global handler
4819         structure list, that's faster than memchunks.
4820         (gtk_emission_new): allocate emissions through a global emission
4821         structure list, that's faster than memchunks.
4822
4823 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
4824
4825         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
4826
4827         * ltmain.sh: added a new commandline flag -postfix similar to -release,
4828         but will immediately change the library name.
4829
4830         * gdk/Makefile.am:
4831         * gtk/Makefile.am: specify -postfix and -version-info
4832
4833         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
4834         GTK_BINARY_AGE. calculate LT_* variables for libtool.
4835
4836 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4837
4838         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
4839         background (fg_set -> bg_set confusion).
4840
4841 1998-05-06  Stefan Jeske  <stefan@gtk.org>
4842
4843         * gtk/testgtk.c (unselect_all): Removed code that caused an
4844         endless loop.
4845
4846 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
4847
4848         * gtk/gtksignal.c: reimplemented the signal storage system to use a
4849         linear array rather than a hash table.
4850         be carefull *not* to keep any GtkSignal pointers across invokations
4851         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
4852         general code cleanups, made all allocations through memchunks.
4853         (gtk_signal_lookup): we now do the lookup of signals through a key_id
4854         for the signal names to avoid multiple hashing of the signal name on
4855         lookups for the several hirarchy levels of an object.
4856
4857 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
4858
4859         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
4860         to speed things up and remove code duplication.
4861
4862         Reintegrated buffer overflow patches, and added
4863         some extra paranoia.
4864         
4865 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
4866
4867         * gdk/gdk.c (gdk_event_translate): A guint * was
4868         being passed where X expected a Keysym *, and
4869         keysyms are long's on Alpha Linux. This was causing
4870         segfaults in Xlib, apparently because of alignment.
4871         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
4872         
4873 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
4874
4875         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
4876         set GDK_EXPOSURE_MASK for DrawingAreas
4877
4878 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
4879
4880         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
4881         (superceded by RC file reparsing capabilities)
4882
4883         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
4884         events. (Shouldn't be sent to the InputOnly leader, which
4885         it is now by gdk_event_send_clientmessage_toall
4886
4887         * gtk/testgtk.c: Added extra button to rcfiles test
4888         to send out _GDK_READ_RCFILES events.
4889         
4890 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
4891
4892         * gtk/gtkselection.c (gtk_selection_clear): Fixed
4893         reversed conditionals that caused segfault on some
4894         platforms.
4895
4896 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
4897
4898         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
4899         cast to GTK_OBJECT for gtk_object_ref.
4900
4901 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
4902
4903         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
4904         checking for signal initialization in gtksignal.c.
4905
4906         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
4907         a long debugging period ;)
4908
4909 1998-05-05  Stefan Jeske  <stefan@gtk.org>
4910
4911         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
4912         New function to wrap XSetDashes; modified gtkctree.c to use it.
4913
4914 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
4915
4916         * configure.in: Added $x_libs in the other_libraries field in the
4917         check for XShapeCombineMask.
4918
4919 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
4920
4921         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
4922         gtk_type_is_a().
4923         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
4924         linear array rather than a hash table. it actually speeded up testgtk
4925         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
4926         pointers across invokations of gtk_type_node_next_and_invalidate() and
4927         therefore gtk_type_unique()!
4928
4929         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
4930         inheritance of a class pointer.
4931         (GTK_OBJECT): modifications for speedups.
4932         (GTK_IS_OBJECT): likewise.
4933         (GTK_OBJECT_CLASS): likewise.
4934         (suggested by owen).
4935
4936         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
4937
4938         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
4939
4940         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
4941         since its derivation changed 4 month ago ;(. showed up with the unique
4942         type name checking code in gtk_type_unique().
4943
4944         * random guint->GtkType and macro fixups.
4945
4946 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
4947
4948         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
4949         Configure events that would result in a negative
4950         size.
4951
4952 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
4953
4954         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
4955         "glibconfig.h" and another about writing another IRC
4956         client.
4957
4958 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
4959
4960         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
4961         parameters to log are doubles. Digital Unix apparently
4962         is missing the argument in its prototype.
4963
4964 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
4965
4966         * gtk/gtklabel.c (gtk_label_state_changed): Don't
4967         force a clear until the widget is actually on
4968         screen.
4969
4970 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
4971
4972         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
4973         to make this consistent with the gtk-1-0 tree.
4974
4975 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
4976
4977         * configure.in acheader.h gdk/gdkwindow.c 
4978         Check for Shape extension both on the client and server
4979         side. (And, more importantly, check for the shape extension
4980         so we may include -lXext even when compiling with --disable-xshm)
4981
4982         Don't set override_redirect on all shaped windows. It isn't
4983         necessary.
4984
4985         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
4986         and foreign windows. Use this to check if we
4987         need to get the colormap from X.
4988
4989 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
4990
4991         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
4992         between the default and the button always in GTK_STATE_NORMAL.
4993
4994         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
4995         callback.
4996
4997 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
4998
4999         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
5000           Fix a buffer overflow on pixmaps that claim to have
5001           more than 31 characters per pixel.
5002
5003           (gdk_pixmap_read_string): Don't wrap around strings longer
5004           than half of address space ;-)
5005
5006         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
5007         that were used for printing integers.
5008
5009         * */* (almost):
5010
5011         Style: All 
5012           int foo () { ... }
5013         changed to
5014           int foo (void) { ... }
5015
5016         Even where there were proper prototypes elsewhere.
5017
5018         * gdk/gxid.c (handle_claim_device): Some extra checks.
5019         It isn't safe against being fed bad X id's, but at
5020         least it should be safe against deleting all your
5021         files.
5022
5023 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
5024
5025         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
5026         to set the adjustments value when there is no current emission.
5027         [ Removed by mutual agreement owt 5/3/1998 ]
5028
5029         * gtk/gtksignal.c: added new functions to retrive the number of
5030         existing emissions for a certain signal.
5031         (gtk_signal_n_emissions): new function.
5032         (gtk_signal_n_emissions_by_name): new function.
5033
5034 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
5035
5036         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
5037         set the current focus_child of a container, does proper referencing and
5038         adjusts the vadjustment/hadjustment associated with the focus widget.
5039
5040         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
5041         containers via gtk_container_set_focus_child.
5042
5043         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
5044         where appropriate.
5045
5046         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
5047         child since not every child removal goes through this function (this
5048         showed up after gtk_container_set_focus_child() started to reference the
5049         focus_child of a container).
5050
5051         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
5052         of a container from gtk_container_remove into this place.
5053
5054 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
5055
5056         * gtk/gtksignal.c: added new functions to operate on intermediate
5057         function pointers. implemented incremental blocking.
5058         (gtk_signal_disconnect_by_func): new function.
5059         (gtk_signal_handler_block_by_func): new function.
5060         (gtk_signal_handler_unblock_by_func): new function
5061
5062 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
5063
5064         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5065         Always show the scrollbars when the policy is
5066         GTK_POLICY_ALWAYS...
5067
5068 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
5069
5070         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
5071         "value_changed" if we really passed a new value.
5072         (gtk_adjustment_changed): new function to emit the "changed" signal.
5073         (gtk_adjustment_set_value): new function to emit the "value_changed"
5074         signal.
5075
5076 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
5077
5078         * gtk/gtkcombo.c: Further changes to the way the window
5079         is popped up so that it will be compatible with 
5080         auto-scrolling in the future.
5081
5082 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
5083
5084         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
5085         the combo-list is empty since that will cause the combo to operate
5086         on a non existing GtkList window.
5087         (gtk_combo_get_pos): provide the combo list with a usfull default
5088         height if empty.
5089         (gtk_combo_popup_button_press): grab the focus.
5090         (gtk_combo_activate): grab the focus.
5091
5092 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
5093
5094         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
5095         function to reset the RC styles for a heirarchy
5096
5097         Clear the window background if necessary in
5098         gtk_window_style_set.
5099
5100         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
5101         rereads all previously read RC files.
5102
5103         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
5104         (Should it just be called gdk_get_toplevels?)
5105
5106         * gtk/testgtk.c: New test to reload RC files.
5107
5108 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
5109
5110         * gtk/gtkclist.h:
5111         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
5112         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
5113         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
5114         the GTK_ prefix (this solution involved less changes in the
5115         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
5116         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
5117         from lars & stefan to support the derivation of GtkCtree.
5118
5119         * gtkctree.h:
5120         * gtkctree.c:
5121         initial import of a tree widget derived from gtkclist, courtesy
5122         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
5123         it just damn rocks!
5124
5125 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
5126
5127         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
5128         for us.
5129         (gtk_list_insert_items):
5130         (gtk_list_remove_items_internal): 
5131         (gtk_list_clear_items): 
5132         remove a possible pointer grab, we might get thrown into a loop
5133         otherwise.
5134         (gtk_list_button_press): grab the pointer *before* selecting the child,
5135         because selection of items may cause the lists children to change,
5136         resulting in a grab release.
5137         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
5138         children.
5139         (gtk_list_shutdown): remove all children from the list.
5140         (gtk_real_list_unselect_child): 
5141         (gtk_real_list_select_child): *always* put our internal structures into
5142         sane state *before* signal emisions (i.e. list->selection updates prior
5143         to gtk_list_item_[de]select() calls).
5144
5145         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
5146         focused child walks out of the window.
5147         removed CAN_FOCUS for the combo arrow's button since it doesn't react
5148         to keyboard events ("clicked" connection is missing).
5149
5150 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
5151
5152         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
5153         getting colormap for FOREIGN windows to go along with
5154         Raster's fix for visuals.
5155
5156 Merges from gtk-1-0
5157 ===================
5158         
5159 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
5160
5161         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5162         Check to catch the case when the viewport fits in either
5163         direction or both, instead of flip-flopping infinitely.
5164
5165         Only show/hide the scrollbars once at the end.
5166
5167 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
5168
5169         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
5170         Include the scrollbars in the foreach call.
5171         (gtk-fortier-980405-0.patch; 
5172          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
5173
5174         The notebook widget
5175         really should also include its tabs, but that might cause
5176         problems for programs if they
5177
5178 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
5179
5180         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
5181         resize if the size actually changed. 
5182         (gtk-johannes-980414-0.patch ;  
5183          johannes@nada.kth.se (Johannes Keukelaar) )
5184
5185 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
5186
5187         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5188           ltmain.sh ltconfig config.sub config.guess:
5189
5190         Reverted back to libtool-1.2 (plus minor patches) so as not to
5191         force the issue for everyone else.
5192
5193 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
5194
5195         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5196         Updated to libtool 1.2a.
5197
5198         * gtk/gtkclist.c: Draw the in-between lines with style->base
5199         instead of style->white.
5200         
5201 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
5202
5203         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
5204         Cache the colormap and children of a window locally
5205         instead of fetching them from the server when needed.
5206         Huge performance difference for creating/destroying
5207         windows.
5208
5209         * gtk/gtkstyle.c: Find the depth from the cached
5210         visual, instead of asking the server.
5211
5212         * gtk.m4: Distribute the new version which tries to
5213         figure out what went wrong and give helpful error
5214         messages.
5215
5216         * ltmain.sh ltconfig config.sub config.sh: 
5217         Updated to libtool 1.2a
5218
5219         * gtk/gtktext.c: Fixed a bug where the drawn level
5220         was being messed up when the text was scrolled
5221         during a deletion.
5222         
5223 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
5224
5225         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
5226         the filesystem under you (fix from Josh)
5227
5228 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
5229
5230         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
5231         if the viewport already exists before iterating over it, maybe we
5232         haven't been constructed yet.
5233
5234 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
5235
5236         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
5237         the GtkBin widget already has a child.
5238
5239         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
5240         check that child->parent == NULL;
5241
5242 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
5243
5244         * gtk/gtkselection.c (gtk_selection_clear): Only return
5245         FALSE when the clear event is been rejected, not when
5246         widget has already lost the selection. (Which should
5247         only happen when we are setting the selection to another
5248         widget ourself.)
5249         
5250 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
5251
5252         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
5253
5254         Removed the "check visibility after gtk_widget_unparent" bug 
5255         in hopefully the last three places.
5256
5257 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
5258
5259         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
5260         rc-files.
5261
5262 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
5263
5264         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
5265         for CAN_FOCUS widgets.
5266
5267         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
5268         adjustments for the table.
5269         (create_list): feature automatic adjustment of the scrolled window to
5270         always contain the focused child.
5271         (create_main_window): keep the focussed button always inside of the
5272         scrolled windoww.
5273
5274         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
5275         adjustments, to contain the allocation of the currently focused child.
5276         (gtk_container_set_focus_hadjustment): new functin to set the
5277         horizontal focus adjustment.
5278         (gtk_container_set_focus_vadjustment): new functin to set the vertical
5279         focus adjustment.
5280
5281         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
5282         clamp the currents adjustment page into a specific range.
5283
5284         * random GtkType fixups for gtk_*_get_type() functions.
5285
5286 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
5287
5288         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
5289         Account for the fact that gtk_tree_item_remove_subtree
5290         will be called recursively. 
5291
5292         Handle removing a collapsed subtree.
5293
5294         (From Andy Dustman <adustman@comstar.net>)
5295         
5296         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
5297         root tree when removing items from a non-previously
5298         mapped tree.
5299
5300         * gtk/testgtk.c: Added a remove_subtree button.
5301         
5302 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
5303
5304         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
5305         before object removing data. This change fixes a bug where 
5306         removing the last weak references would cause it to be 
5307         triggered.
5308
5309 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
5310
5311         * gdk/Makefile.am: Removed mostly useless dependency that
5312         was causing problems for SGI's make, when used with
5313         the 'make dist' form of GTK+. (Dependency caused dependencies
5314         to be redone when BUILT_SOURCES changed)
5315
5316 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
5317
5318         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
5319         like a menu.
5320         
5321         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
5322         to gtkitem.c so dragging can also work in lists.
5323
5324         * gtk/gtklist.[ch]: Track child enter events and use
5325         those to allow dragging the selection. 
5326
5327 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
5328
5329         * gtk/gtktext.c: Try enabling background pixmaps for editable text
5330         widgets.  There is a bit of flashing, but not too bad. If you
5331         don't want the flashing, you can always not set a background
5332         pixmap.
5333
5334 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
5335
5336         * gtk/gtktext.c: Fixed a bug where the drawn level
5337         was being messed up when the text was scrolled
5338         during a deletion.
5339         
5340 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
5341
5342         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
5343         bug:  There is no need to set the ExposureMask in the XGrabPointer
5344         (this caused DnD programs to crash).
5345
5346 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
5347
5348         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
5349         field to be of type guint.
5350         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
5351         ref_count>0;
5352         (gtk_accelerator_table_install): keep a per object list of accelerator
5353         tables that refer to this object.
5354         (gtk_accelerator_table_remove): remove the accelerator table from the
5355         per object list.
5356         (gtk_accelerator_table_clean): warn if there are any object references
5357         left in an accelerator table upon destruction.
5358         (gtk_accelerator_tables_delete): new function to delete object
5359         references from the accelerator tables associated with this object.
5360
5361         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
5362         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
5363         of an accelerator can be prevented by gtk_signal_emit_stop().
5364         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
5365         so there are no stale pointers in accelerator tables left.
5366
5367 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5368
5369         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
5370         visible before we unparent it.
5371
5372 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
5373
5374         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
5375         running_timeouts list with the tmp_list link itself, not with a new
5376         GList structure pointing to our link. that would fill up memory and
5377         causes the GList.data fields of the running_timeouts list to point to
5378         GList structures and not GtkTimeoutFunction structures which is a
5379         *really* bad thing.
5380         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
5381         the above entry ;).
5382
5383 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
5384
5385         * gtk/gtkradiomenuitem.h: 
5386         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
5387         ala gtk_radio_button_set_group.
5388         (gtk_radio_menu_item_init): assure that we always have at least a group
5389         that points to self.
5390
5391         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
5392         added g_return_if_fail() statements.
5393         (gtk_radio_button_init): assure that we always have at least a group
5394         that points to self.
5395
5396 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
5397
5398         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
5399
5400 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
5401
5402         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
5403         (Damon Chaplin), which i got wrong when applying Damon's patch the last
5404         time.
5405
5406 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
5407
5408         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
5409         that when we are running with a non-installed colormap,
5410         in 8-bit pseudo-color, we actually are using the system
5411         visual. (Fixes *Bad Match* errors on Digital Unix machines
5412         with multiple 8-bit pseudo-color visuals)
5413
5414 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
5415
5416         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
5417         by whoever thought that randomly changing ints to unsigned int
5418         without reviewing the code was a good idea.  It is, btw not
5419         mentioned in the ChangeLog as usual, but I know it was not Elliot
5420         the culprit this time. 
5421
5422 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
5423
5424         * Released GTK+ 1.0.0