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