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