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