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