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