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