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