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