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