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