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