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