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