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