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