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