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