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