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