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