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