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