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