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