]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-2
new function to set/unset the selectable flag of a single row.
[~andy/gtk] / ChangeLog.pre-2-2
1 Fri Sep 11 15:25:10 1998  Lars Hamann  <lars@gtk.org>
2
3         * gtk/gtkclist.c (gtk_clist_set_selectable): new function
4         to set/unset the selectable flag of a single row.
5         (gtk_clist_get_selectable): new function 
6         to get the state of the selectable flag
7
8         * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
9         (gtk_ctree_node_get_selectable): clist analogons
10         
11 Thu Sep 10 17:04:03 1998  Raph Levien  <raph@gimp.org>
12
13         * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
14         pattern.
15
16         * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
17         bugs in the 4bit gray cases.
18
19 Wed Sep  9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
20
21         * configure.in: added -posix check for NeXTStep
22
23         * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
24         a unique buffer for each thread.
25
26         * docs/gtk-config.1: clarified copyright
27
28 Tue Sep  8 05:19:51 1998  Tim Janik  <timj@gtk.org>
29
30         * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
31
32         * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
33
34         * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
35         ATEXIT.
36         
37         * ltconfig: use GLib's ltconfig which honours lcc.
38
39 Mon Sep  7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
40
41         * configure.in: comment the -std1 check and save LIBS properly
42
43 Sun Sep  6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
44
45         * gtk/testrgb.c: #include <stdlib.h>
46
47 Sat Sep  5 16:01:19 1998  Owen Taylor  <otaylor@gtk.org>
48
49         * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
50         When the pointer is grabbed on an input window,
51         either explicitely, or through press-grab, and
52         then grabbed on a non-input window, ungrab the
53         devices.
54
55 Sat Sep  5 07:13:19 1998  Tim Janik  <timj@gtk.org>
56
57         * gtk/gtktypeutils.h: don't include any gdk headers.
58         added structure definitions for GtkTypeObject and GtkTypeClass,
59         which cover the very basic fields of GtkObject and GtkObjectClass,
60         which are actually used by the type system.
61         
62         * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
63         we only refer to our own structures. improved class inheritance
64         sanity checking a bit.
65
66         * gtk/gtkobject.h: placed appropriate comments at the beginnings
67         of the GtkObject and GtkObjectClass structures, which explain
68         their relationship to GtkTypeObject and GtkTypeClass.
69
70         * gtk/gtktypeutils.h:
71         * gtk/gtkobject.h:
72         moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
73         GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
74         gtkobject.h to gtktypeutils.h.
75
76         * gtk/gtkobject.h:
77         * gtk/gtkobject.c:
78         removed gtk_object_check_cast() and gtk_object_check_class_cast()
79         functions. to keep source compatibility, we can provide macro aliases
80         for the corresponding gtk_type_* functions. but then again, people
81         shouldn't have been using these functions anyways since they were part
82         of Gtk's internal API.
83
84         * gtk/gtktypeutils.h:
85         * gtk/gtktypeutils.c:
86         implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
87         functions to check GtkTypeObject and GtkTypeClass types.
88
89 Thu Sep  3 07:16:54 1998  Tim Janik  <timj@gtk.org>
90
91         * gtk/gtkctree.h:
92         * gtk/gtkctree.c: `const' fixups.
93
94         * gtk/gtkclist.h:
95         * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
96
97         * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
98         if it is passed as NULL.
99
100 Wed Sep  2 22:41:40 1998  Raph Levien  <raph@gimp.org>
101
102         * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
103         big-endian cases. Added a 4bpp packed gray mode (somewhat
104         incorrectly hardwired to MSB), which should take care of
105         Stric's hardware.
106
107 Thu Sep  3 04:45:57 1998  Tim Janik  <timj@gtk.org>
108
109         * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
110         GtkSIgnalQuery leak.
111
112 Thu Sep  3 04:22:20 1998  Tim Janik  <timj@gtk.org>
113
114         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
115         GTK_MENU_DIR_CHILD: check for the existance of
116         menu_shell->active_menu_item before accessing its child.
117         GTK_MENU_DIR_PREV:
118         GTK_MENU_DIR_NEXT: if we haven't had an active item and still
119         don't, make a default selection.
120
121 Wed Sep  2 00:28:58 1998  Tim Janik  <timj@gtk.org>
122
123         * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
124         the children with _forall for sensitivity changes and with
125         _foreach on pure state changes. this fixes a lot of the
126         old inclusions of internal widgets into _foreach calls.
127
128         * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
129         do the work. don't walk the subtrees of first level children.
130
131         * gtk/gtktreeitem.c: provide a _forall implementation,
132         which walks the subtrees as well for include_internals.
133
134         * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
135         the submenus as well for include_internals.
136
137         * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
138         implemented gtk_scrolled_window_forall, which will iterate over
139         the viewport and the scrollbars for gtk_container_forall or
140         iterate over the viewports children for gtk_container_foreach.
141
142         * gtk/gtktoolbar.c: 
143         * gtk/gtktable.c: 
144         * gtk/gtkpaned.c:
145         * gtk/gtkpacker.c:
146         * gtk/gtkmenushell.c: 
147         * gtk/gtklist.c: 
148         * gtk/gtkfixed.c:
149         * gtk/gtkclist.c:
150         * gtk/gtkbox.c: 
151         * gtk/gtkbin.c: 
152         * gtk/gtknotebook.c:
153         removed the old gtk_*_foreach functions and provided gtk_*_forall.
154
155         * gtk/gtknotebook.c:
156         (gtk_notebook_real_switch_page): expose tabs.
157         (gtk_notebook_page_num): new function to return the page number
158         of a distinct child.
159         (gtk_notebook_focus): minor fixups. foxus handling is still screwed
160         under some circumstances.
161
162         * gtk/gtktreeitem.c:
163         (gtk_real_tree_item_select):
164         (gtk_real_tree_item_deselect): major fixes.
165         some general fixups wrt queue_redraw, and tree items not being
166         NO_WINDOW widgets.
167
168         * gtk/gtklistitem.c:
169         (gtk_real_list_item_select): 
170         (gtk_real_list_item_deselect): 
171         (gtk_real_list_item_toggle): 
172         removed unneccessary queue_redraw calls.
173
174 Wed Aug 30 09:42:07 1998  Tim Janik  <timj@gtk.org>
175
176         * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
177         automatically popup the menu on space bar.
178
179 Wed Aug 26 06:40:34 1998  Tim Janik  <timj@gtk.org>
180
181         * gtk/gtkcontainer.h:
182         * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
183         method), which acts similar to gtk_container_foreach(), but iterates
184         over internal children. the GtkContainer::foreach signal vanished in
185         favour of a new class method ->forall() that optionally includes
186         internal widgets.
187
188         * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
189         but a _forall implementation, since all child widgets we have are
190         internal ones.
191         (column_button_create): set the parent window prior
192         to gtk_widget_set_parent().
193
194         * gtk/gtkwidget.c:
195         exchanged all calls to gtk_container_foreach() with
196         gtk_container_forall().
197
198         * gtk/gtkwidget.h: 
199         * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
200         the GtkWidget::composite_child argument. to have a widget created
201         with the flag initially, two new functions got added to wrap a widgets
202         creation:
203         gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
204
205 Wed Aug 25 23:37:39 1998  Tim Janik  <timj@gtk.org>
206
207         * gtk/gtktooltips.h:
208         * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
209         gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
210         prior to the first tip being set.
211         don't put an extra reference on the window, since it is a toplevel,
212         it wont get destroyed from anywhere else.
213
214         * overall macro and GtkType fixups.
215
216 1998-09-02  Federico Mena Quintero  <federico@nuclecu.unam.mx>
217
218         * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
219         constructs by more forgiving ones.  (Does anyone else feel like
220         the color selector need rewriting?).
221
222 Tue Sep  1 10:53:52 1998  Owen Taylor  <otaylor@redhat.com>
223
224         * gtk/gtkprogress.c (gtk_progress_finalize): Unref
225         the adjustment.
226
227         * gtk/gtkmenu.c: Modified reference counting so
228         that the reference count from the toplevel that
229         the menu creates to the menu is invisible to the
230         application.
231
232 Mon Aug 31 21:36:31 1998  Raph Levien  <raph@gimp.org>
233
234         * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
235         conversion selection logic, so Suns and other big-endian
236         machines should get faster conv routines. This is also the
237         point where 4bpp gray and 1bpp are checked in, although I
238         wouldn't be surprised if 1bpp is a little buggy. This is
239         synchronized with the 0.0.7 release of GdkRgb.
240
241         * gtk/Makefile.am: 
242         * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
243         appropriate change to the Makefile.am
244
245 Mon Aug 31 15:18:19 1998  Raph Levien  <raph@gimp.org>
246
247         * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
248         which is good for images that scroll (makes the dither patterns
249         align correctly)
250
251 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
252
253         * gdk/gdkcolor.c:
254         (gdk_colormap_new) (gdk_colormap_get_system):
255         quell some warnings with g_hash_table_new
256
257         * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
258         when we're done with it
259
260         * gtk/itemfactory.c:
261         (gtk_item_factory_from_path):
262         (gtk_item_factory_create_item): free some strings
263
264         * gtk/gtklabel.c:
265         (gtk_label_finalize): free label->pattern when done
266         (gtk_label_parse_uline): null terminate pattern string, delete
267         some duplicated code
268
269         * gtk/testthreads.c: add #include <unistd.h> for sleep()
270
271 Tue Aug 25 16:52:47 1998  Owen Taylor  <otaylor@redhat.com>
272
273         * gtk/gtktext.c (recompute_geometry): Make sure the
274         mark we pass to line start is the beginning of a 
275         real line, not a wrapped one.
276
277 Mon Aug 24 18:37:15 1998  Owen Taylor  <otaylor@redhat.com>
278
279         * gtk/gtktext.c: Reference count the fonts used in
280         the text widget.
281
282         * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
283         freeing functions to be more consistent, and more 
284         convenient; leave the old names in for backwards compatibility.
285
286         * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
287         allocations in pseudo-color colormaps to greatly reduce
288         calls to XAllocColor. Keep a per-colormap hashtable to
289         speed up finding if there is an already-allocated matching
290         color.
291
292         * gdk/gdkcolor.c: Don't just match read the system colormap
293         when the colormap is created, but synchronize our copy
294         with the system colormap periodically.
295         
296         * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c: 
297         Change XIM constants names to match GDK conventions
298
299         * gtk/testinput.c: Allow the drawing area to get the focus.
300
301         * gtk/testgtk.c: Change around the Text test to demonstrates
302         multiple fonts, use more colors.
303
304         * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
305         so they work after a widget is unrealized.
306
307         * gtk/gtktext.[ch]: Remove the requirement that the text
308         widget be realized before adding text (!) Allocate colors
309         ourself, instead of requiring the caller allocate them.
310         Allow changing styles to work properly by keeping track
311         of the values for a certain property are default or
312         set explicitely.
313
314         * gtk/gtkmenu.h: Added some comments.
315
316         * gtk/gtkentry.c: Changes to match XIM constants.
317
318         * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
319         for adding keyed data to drawables. (Uses g_dataset
320         internally)
321
322         * gdk/gdkpixmap.c: Keep track of the colors we allocate,
323         when creating an XPM - store them as user data for the GdkPixmap,
324         so we don't leak colors when we create pixmaps from XPM's.
325
326         Allocate memory for color information in large blocks instead of 
327         as many little pieces.
328         
329 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
330
331         * gdk/gdkrgb.c: removed some unused variables
332
333         * gtk/gtkclist.c
334         * gtk/gtkmain.c: #if 0'd out some unused code
335
336         * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
337
338 Mon Aug 24 02:36:53 1998  Tim Janik  <timj@gtk.org>
339
340         * gtk/gtkarg.h:
341         * gtk/gtkarg.c:
342         * gtk/gtkwidget.h: 
343         * gtk/gtkwidget.c: 
344         * gtk/gtkobject.h:
345         * gtk/gtkobject.c:
346         * gtk/gtkcontainer.h: 
347         * gtk/gtkcontainer.c: 
348         (gtk_object_new):
349         (gtk_object_set):
350         (gtk_widget_new):
351         (gtk_widget_set): 
352         (gtk_container_add_with_args):
353         (gtk_container_child_set):
354         begin the parameter elipsis (...) after the first argument name. this
355         change is source compatible, since it was always required, even as NULL.
356         (gtk_args_collect): 
357         (gtk_object_args_collect): 
358         (gtk_container_child_args_collect):
359         changed prototypes to pass first_arg_name, also, pass va_list variable
360         by value (portability concerns). callers changed.
361
362         * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
363         a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
364         can't pass va_list variables by reference for portability reasons.
365
366 Fri Aug 21 22:40:00  Raph Levien  <raph@gtk.org>
367
368         * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
369         get_visual calls, so that it gets implicitly initialized.
370
371 Fri Aug 21 13:06:04 1998  Stuart Parmenter  <pavlov@gimp.org>
372         * gtk/gtkfeatures.h.in:  added GTK_HAVE_FEATURES_1_1_2 for changes
373         such as GtkCTree function name changes
374         
375 Fri Aug 21 02:31:26 1998  Tim Janik  <timj@gtk.org>
376
377         * gtk/gtkmain.h:
378         * gtk/gtkmain.c (gtk_check_version): added a function to perform a
379         binary version check, returning a static string for error descriptions,
380         or NULL on success.
381
382 Thu Aug 20 20:08:15 1998  Owen Taylor  <otaylor@redhat.com>
383
384         * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
385         computed our geometry yet, and if not, ignore the request.
386
387         * gtk/gtktext.c (correct_cache_insert): Fiddled around
388         some more. All the bug-test codes seem to work at once
389         now. (fingers crossed...)
390
391 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
392
393         * gdk/gdkrgb.c: silly visual fixes
394
395         * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
396         works
397
398 1998-08-20  Federico Mena Quintero  <federico@nuclecu.unam.mx>
399
400         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
401         anything if the event's window is not the bin window.
402         (gtk_handle_box_motion): Likewise.
403
404 1998-08-19  Raph Levien  <raph@gimp.org>
405
406         * gtk/testgtk.c (create_color_preview): pushed the colormap and
407         visual so it would work better with GdkRgb.
408
409 1998-08-19  Raph Levien  <raph@gimp.org>
410
411         * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
412         4bpp static_color mode (for vga displays). Also fixed a '64' value
413         in the dither matrix, which was causing one pixel out of 16k to be
414         dithered wrong.
415
416         * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
417         most of the contents. This is an API change - any apps that relied
418         on the internal structure of GtkPreview will need some change -
419         most notably in the use of reserved colors. The Gimp needed
420         changes in this regard.
421
422 Wed Aug 19 00:11:14 1998  Tim Janik  <timj@gtk.org>
423
424         * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
425         G_ENABLE_DEBUG being defined (specifically --gtk-module= and
426         --g-fatal-warnings), noticed by miguel.
427
428 Tue Aug 18 17:54:40 1998  Tim Janik  <timj@gtk.org>
429
430         * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
431         getcwd().
432
433         * gdk/gdkprivate.h:
434         * gdk/gdkglobals.c:
435         * gdk/gdkwindow.c:
436         * gdk/gdk.c:
437         * gtk/gtkwindow.c: 
438         * gtk/gtkitemfactory.c: 
439         dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
440
441         * gtk/gtkselection.c:
442         * gtk/gtkpreview.c:
443         * gtk/gtkobject.c: 
444         * gtk/gtkmain.c: 
445         * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
446
447         * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
448
449 Tue Aug 18 17:22:22 1998  Lars Hamann  <lars@gtk.org>
450
451         * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab): 
452         * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
453         in case of show_tabs == NULL
454
455 Tue Aug 18 03:54:43 1998  Tim Janik  <timj@gtk.org>
456
457         * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
458         to --g-fatal-warnings again. this option now causes log levels of
459         WARNING and CRITICAL to abort().
460
461         * gdk/gdk.c: 
462         * gdk/gdkdnd.c: 
463         * gdk/gdkcc.c: 
464         * gdk/gdkfont.c: 
465         * gdk/gdkwindow.c:
466         * gdk/gdkvisual.c:
467         * gtk/gtkwidget.c:
468         * gtk/gtktypeutils.c:
469         * gtk/gtktree.c:
470         * gtk/gtkfontsel.c:
471         * gtk/gtkmain.c:
472         * gtk/gtkobject.c:
473         * gtk/gtkpreview.c:
474         * gtk/gtkselection.c:
475         * gtk/gtktext.c:
476         * gtk/gtktree.c:
477         * gtk/gtktreeitem.c:
478         did a global search&replace to substitute g_print() calls with
479         g_message(). libraries shouldn't use printf(), g_print() or
480         g_printerr() at all.
481         a bunch of the replacements should probably be wrapped into the
482         G{D|T}K_NOTE() macros, so they are special cased for debugging
483         purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
484         things.
485
486         * gdk/gdkdnd.c: added copyright notice.
487
488 Mon Aug 17 17:28:00  Raph Levien  <raph@gtk.org>
489
490         * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
491         impressively fast now - about 4.65 Mpix/s on an IBM TP 600
492         running a PII 233. It's synced with the 0.0.5 release of
493         GdkRgb.
494
495 Tue Aug 18 00:29:13 1998  Lars Hamann  <lars@gtk.org>
496
497         * gtk/gtkclist.h:
498         (struct _GtkCListClass): new class methods:
499         (sort_list) (insert_row) (remove_row) (set_cell_contents)
500
501         * gtk/gtkclist.c :
502         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
503         removed and replaced by (set_cell_contents)
504         (set_cell_contents): function for class method set_cell_contents
505         (real_insert_row): function for class method insert_row
506         (real_remoce_row): function for class method remove_row
507         (real_sort_list): function for class method sort_list
508         (default_compare): fix to avoid problems with cell types != CELL_TEXT
509
510         * gtk/gtkctree.h :
511         (gtk_ctree_export_to_gnode): new function to export a ctree as gnode 
512         (gtk_ctree_node_is_visible): new function to return visibility state
513         of a node
514         (gtk_ctree_show_stub): new function to set visibility of root stub
515
516         renamed functions :
517         (gtk_ctree_insert) -> (gtk_ctree_insert_node)
518         (gtk_ctree_remove) -> (gtk_ctree_remove_node)
519         (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
520         (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
521         (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
522         (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
523         (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
524         (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
525         (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
526         (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
527         (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
528         (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
529         (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
530         (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
531         (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
532         (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
533         (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
534         (gtk_ctree_sort) -> (gtk_ctree_sort_node)
535         (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
536
537         * gtk/gtkctree.c :
538         (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
539         removed and replaced by (set_cell_contents)
540         (set_cell_contents): function for class method set_cell_contents
541         (real_insert_row): function for class method insert_row
542         (real_remoce_row): function for class method remove_row
543         (real_sort_list): function for class method sort_list
544         (default_compare): removed. CTree now also compares two GtkCTreeRows
545         instead of two GtkCTreeNodes.
546         (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
547         unlinking the node
548         (real_tree_expand) (real_tree_collapse): fix for refcounting of
549         node pixmaps
550         (set_node_info): call gtk_ctree_node_set_pixtext instead of
551         manipulating the row itself
552         
553         * gtk/testgtk.c: use renamed functions of GtkCTree.
554         new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
555         at work.
556
557 Mon Aug 17 15:31:38 1998  Tim Janik  <timj@gtk.org>
558
559         * gtk/gtkmain.c: removed gtk_input_add_interp.
560
561         * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
562         keyword.
563         (gtk_editable_get_event_time): fix default: case.
564
565         * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
566
567         * gdk/gdkpixmap.c: made a bunch of unexported functions static.
568
569         * gdk/gdkcolor.c:
570         * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
571         of our functions.
572
573         * various minor compilation cleanups, such as bogus commas in
574         enums and similar things.
575
576 Mon Aug 17 07:47:43 1998  Tim Janik  <timj@gtk.org>
577
578         * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
579         (thanx raph).
580
581 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
582
583         * NEWS: updated for 1.1.2
584         * gtk+.spec: version = 1.1.2
585
586 Mon Aug 17 05:10:29 1998  Tim Janik  <timj@gtk.org>
587
588         * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
589         times. changed --gtk-with-module to --gtk-module at owen's request.
590
591 Mon Aug 17 03:47:55 1998  Tim Janik  <timj@gtk.org>
592
593         * gtk/gtkmain.c (gtk_init): feature a new commandline option
594         --gtk-with-module=<module> that allows additional loading and
595         initialization of modules (e.g. GLE).
596
597 Mon Aug 17 01:40:00 1998  Tim Janik  <timj@gtk.org>
598
599         * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
600         pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
601
602         * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
603         with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
604         "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
605         different *-fatal-* arguments now. this needs to be revised and
606         compressed to a reasonable amount of arguments.
607
608 Sun Aug 16 20:51:59 1998  Tim Janik  <timj@gtk.org>
609
610         * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
611         "--g-fatal-warnings" causes fatal warnings in GLib,
612         "--gdk-fatal-warnings" causes fatal warnings in Gdk,
613         "--gtk-fatal-warnings" causes fatal warnings in Gtk.
614
615         * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
616         * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
617
618         * gtk/testgtk.c: 
619         * gdk/gxid.c:
620         we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
621         since automake doesn't support per target _CFLAGS yet.
622
623         * configure.in: require GLib 1.1.3.
624
625 Sat Aug 15 03:19:30 1998  John Ellis  <johne@bellatlantic.net>
626
627         * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
628         to set a callback to test if a node in drag can be dropped onto
629         it's currrent location.
630         * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
631         to change the pointer when a drag destination is not allowed.
632
633 Thu Aug 13 21:06:00 1998  Raph Levien  <raph@gtk.org>
634
635         * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
636         speeds up the 565_d case by about 25% total. Thanks Ray!
637
638 Thu Aug 13 16:47:44 1998  Owen Taylor  <otaylor@redhat.com>
639
640         * Changed GtkSignalFunc back to () from (void). (again!)
641
642         * Added file README.cvs-commits
643         
644 Thu Aug 13 09:11:11 BST 1998  Tony Gale  <gale@gtk.org>
645
646         * docs/gtk_tut.sgml:
647           - Tidy up of the menufactory example from
648             Andy Kahn <kahn@zk3.dec.com>
649           - New section on Range Widgets from
650             David Huggins-Daines <bn711@freenet.carleton.ca>
651           - Started a new section on 'Advanced Event and Signal
652             Handling' - used an email from Owen.
653           - New appendix on Gdk Event Types
654           - Added the tictactoe full example code to the
655             'Code Examples' appendix
656
657 Tue Jul 21 12:42:01 1998  Owen Taylor  <otaylor@redhat.com>
658
659         * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() - 
660           to calculate all the metrics at once of a string, including
661           things which weren't calculated before.
662
663         * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
664           MenuItem type, that when put as the first thing in a
665           menu, makes the menu tearoff. Currently drawn as a
666           dashed line.
667
668         * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
669           "hide_on_activate" to the MenuItem class structure to allow
670           check and radio buttons to be changed with <Space> without
671           hiding the menu.
672
673         * gtk/gtkitemfactory.c: 
674           - Create a AccelGroup for each MenuShell we create.
675           - If an '_' appears before a  character 'c' in the path,
676             then make 'c' an accelerator in the menu's accel group,
677             and if the menuitem is menubar <alt>C an accelerator 
678             in the itemfactory's accel group. Double '__' inserts
679             a literal '_'
680
681         * gtk/gtklabel.[ch]: Add support for a pattern arg - 
682           which is a string. If an '_' appears in this string,
683           the corresponding position in the label is underlined.
684
685           Add gtk_label_parse_uline() convenience function which
686           takes a string with embedded underlines, sets the
687           pattern and label, and returns the accelerator keyval.
688
689         * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
690           Instead, they create a GtkWindow and add themselves
691           to that. (When torn off, another new feature, they
692           create another GtkWindow to hold the torn off menu)
693
694           New function gtk_menu_set_tearoff_state()
695         
696         * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h: 
697           Added action signals  for keyboard navigation of menus.
698
699         * gtk/gtkmenushell.c: Key press handler which activates
700           bindings for navigation, and accelerators, for handling
701           underline accelerators. Exported functions to select 
702           and activate menu items in a menushell.
703
704         * gtk/testgtk.c: Added a new "Item Factory" test which
705           tests GtkItemFactory and the new keyboard navigation
706           of menus.
707
708 Tue Aug 11 20:52:58 1998  Tim Janik  <timj@gtk.org>
709
710         * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
711         external functions have been called. also relookup nodes after
712         this function has been invoked.
713
714 Tue Aug 11 15:04:52 1998  Owen Taylor  <otaylor@redhat.com>
715
716         * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
717           beginning of Text when creating the Text widget.
718
719         * gtk/testgtk.c: Grab the focus on the text widget so
720           as to test out the above.
721
722 Tue Aug 11 14:55:00 1998  Owen Taylor  <otaylor@redhat.com>
723
724         * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16. 
725           ::changed is a notification signal and should have no default
726           handler. A complete redraw of the Text widget does _not_ need to
727           be done on every text insertion.
728
729 Tue Aug 11 13:07:29 1998  Owen Taylor  <otaylor@redhat.com>
730         (gtk-abilleira-072198-patch)
731
732         * gtk/gtkwindow.[ch]: 
733           Add gtk_window_set_modal() which sets a flag; when
734           set the window does a gtk_grab_add() when the window
735           is shown, and a gtk_grab_remove() when the window
736           is hidden. 
737
738         * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
739           that case will run "Create Dir","Delete File" and "Rename File" 
740           dialogs as modal too.
741
742         * gtk/testgtk.c: Added a button with an example of creating modal 
743           dialog boxes. Including file selection and color selection standard
744           dialogs.
745         
746 Tue Aug 11 00:44:47 1998  Owen Taylor  <otaylor@redhat.com>
747
748         * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
749           Removed CAN_FOCUS by default from scrollbars, button
750           children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
751           (Scrollbar definitely good change, toolbar bit more questionable)
752
753 Tue Aug 11 17:49:33 1998  Tim Janik  <timj@gtk.org>
754
755         * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
756         Pettersen).
757
758 Tue Aug 11 00:35:56 1998  Owen Taylor  <otaylor@redhat.com>
759
760         * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0; 
761           added all logical operations to gc->function.
762
763 Sun Aug  9 23:31:59 1998  Lars Hamann  <lars@gtk.org>
764
765         * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
766         gtk_widget_size_allocate instead of gtk_widget_queue_resize
767         if the visibility state of a scrollbar changes.
768
769 Mon Aug 10 12:49:54 1998  Tim Janik  <timj@gtk.org>
770
771         * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
772
773 Thu Aug  6 22:37:21 1998  Stefan Jeske  <stefan@gtk.org>
774
775         * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
776         gtk_clist_merge and gtk_clist_mergesort. :)
777
778 1998-08-06  Martin Baulig  <martin@home-of-linux.org>
779
780         * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
781         `mergesort' -> `my_mergesort'.
782
783 Wed Aug  5 21:12:37 1998  Stefan Jeske  <stefan@gtk.org>
784
785         * gtk/gtkenums.h: new enum GtkSortType.
786         
787         * gtk/gtkclist.h:
788         * gtk/gtkclist.c:
789         Added sorting capabilities to GtkCList. New APIs :
790         gtk_clist_set_compare_func, gtk_clist_set_sort_column,
791         gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort. 
792         New internal functions : default_compare, merge, mergesort.
793
794         (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
795         
796         (gtk_clist_insert): Modified to handle gtk_clist_append and the
797         auto sort flag. Changed the return value from void to gint to
798         return the row number where the element was actually inserted.
799
800         (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
801         
802         * gtk/gtkctree.h:
803         * gtk/gtkctree.c:
804         Removed the auto_sort flag, replaced ctree->node_compare with
805         clist->compare all over the place, modified default_compare to
806         match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
807         gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
808
809         * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
810         sorting. The lists can be sorted by a column by clicking the 
811         corresponding title button.
812         
813 Tue Aug  4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
814
815         * Released GTK+ 1.1.1
816
817 Wed Aug  5 02:57:20 1998  Lars Hamann  <lars@gtk.org>
818
819         * gtk/gtkctree.h:
820         * gtk/gtkctree.c:
821         (gtk_ctree_find): changed to return a gboolean
822         (gtk_ctree_insert_gnode): new function for recursive insertion of a
823         GNode tree.
824         (gtk_ctree_real_select_recursive): fix for extended selection
825         (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
826         (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
827
828 Tue Aug  4 16:18:26 1998  Tim Janik  <timj@gtk.org>
829
830         * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
831         GLib version 1.1.1 is now required at minimum.
832
833         * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
834         of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
835
836 Mon Aug  3 19:24:48 1998  Owen Taylor  <otaylor@redhat.com>
837  
838         * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
839           cursor before (possibly) deleting the cursor's text
840           property.
841  
842         * gtk/gtktext.c (correct_cache_delete): More attempts
843           to clean the line-start cache up after inserting
844           a property. Among other things, make sure to
845           fix up text->current_line, since it is used to 
846           refetch the changed lines.
847  
848 Tue Aug  4 10:59:19 1998  Owen Taylor  <otaylor@redhat.com>
849
850         * gtk/gtktable.[ch]: Empty rows/columns of the table
851         should not have been marked as being able to shrink.
852         (Fixes problem with shrinking scrollbarless GIMP canvases)
853
854 1998-08-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
855
856         * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
857         function to find a row by its data pointer using a custom
858         comparison function.
859
860 Sun Aug 02 22:58:00 1998  George Lebl  <jirka@5z.com>
861
862         * gtk/gtkclist.c: draw the buttons during a "draw" as well,
863           this fixes a bug when the whole widget is made non-sesitive
864           the buttons weren't redrawn
865
866 Mon Aug  3 00:04:09 1998  Lars Hamann  <lars@gtk.org>
867
868         * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
869         * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
870         * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
871
872 Sun Aug  2 03:08:07 1998  Owen Taylor  <otaylor@gtk.org>
873
874         * gdk/gdkwindow.c (gdk_window_reparent): Change 
875           window_private->parent pointer when reparenting.
876
877 Sat Aug  1 22:17:00 1998  Raph Levien  <raph@acm.org>
878
879         * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
880         with the standalone release.
881
882 Fri Jul 31 20:45:07 1998  Lars Hamann  <lars@gtk.org>
883
884         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
885         (gtk_clist_button_release) (new_column_width): Few fixes for
886         column resize. Store resize column in clist->drag_pos.
887
888 Thu Jul 31 15:18:36 1998  Lars Hamann  <lars@gtk.org>
889
890         * gtk/gtkctree.h 
891         * gtk/gtkctree.c 
892         * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
893         to GtkCTreeNode *node.
894
895         * gtk/gtklist.h : added extended selection mode and auto scrolling.
896         (struct _GtkList): removed unneeded variables timer, button,
897         selection_start_pos, selection_end_pos, scroll_direction, have_grab.
898         Added new variables undo_selection, undo_unselection, last_focus_child,
899         undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
900         drag_selection, add_mode.
901  
902         New functions :
903         (gtk_list_extend_selection), (gtk_list_start_selection),
904         (gtk_list_end_selection), (gtk_list_select_all),
905         (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
906         (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
907         (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
908         (gtk_list_undo_selection), (gtk_list_end_drag_selection)
909         
910         * gtk/gtklist.c : 
911         (gtk_list_enter_notify): removed, because auto scrolling now works
912         with gtk_list_motion_notify
913  
914         New functions, needed for auto scrolling :
915         (gtk_list_motion_notify) (gtk_list_move_focus_child)
916  
917         New functions for extended selection support :
918         (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
919         (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
920         (gtk_list_focus_lost)
921         
922         (gtk_list_set_focus_child): modified gtk_container_set_focus_child
923         function to support auto scrolling, and avoid out-of-sync errors in
924         case auf GTK_SELECTION_BROWSE
925         (gtk_list_focus): modified gtk_container_focus function to avoid out
926         off sync errors in case auf GTK_SELECTION_EXTENDED
927
928         * gtk/gtklistitem.h 
929         * gtk/gtklistitem.c :
930         New signal functions for key binding support :
931         (toggle_focus_row), (select_all), (list_item), (unselect_all)
932         (list_item), (undo_selection), (start_selection), (end_selection)
933         (extend_selection), (scroll_horizontal), (scroll_vertical),
934         (toggle_add_mode)
935         (gtk_list_item_realize): added  GDK_KEY_PRESS_MASK |
936         GDK_KEY_RELEASE_MASK
937         (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
938  
939         * gtk/gtkcombo.c :
940         (gtk_combo_popup_button_press):  grab pointer for combo->list
941         (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
942         (gtk_combo_list_key_press): take care of which child HAS_GRAB
943         (gtk_comb_init): don't connect combo->button with button_release_event
944
945 Thu Jul 30 12:39:36 1998  Lars Hamann  <lars@gtk.org>
946
947         * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
948
949 Wed Jul 29 23:31:50 1998  Lars Hamann  <lars@gtk.org>
950
951         * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
952         horizontal autoscrolling, GtkCTree's 'reorder ability' now works
953         with horizontal and vertical autoscrolling.
954
955 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
956
957         * gtk/docs/man: new directory
958         * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
959
960 Tue Jul 28 00:03:20 1998  Lars Hamann  <lars@gtk.org>
961
962         * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
963         bug
964
965 Mon Jul 27 09:18:13 BST 1998  Tony Gale  <gale@gtk.org>
966
967         * docs/gtk_tut.sgml: GtkTree section from
968           David Huggins-Daines <bn711@freenet.carleton.ca>,
969           add a GtkText widget example
970         * examples/text/* example/tree/* : new examples for the
971           GtkTree and GtkText widgets
972         * docs/gtk_tut.sgml: added an appendix to hold complete code
973           examples that aren't in a full form elsewhere in the
974           tutorial (e.g. scribble)
975
976 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
977
978         * Released GTK+ 1.1.0
979
980 Mon Jul 27 04:18:26 1998  Tim Janik  <timj@gtk.org>
981
982         * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
983         the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
984
985 Mon Jul 27 03:11:20 1998  Tim Janik  <timj@gtk.org>
986
987         * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
988         values are looked up.
989
990         * gtk/gtktypeutils.h:
991         * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
992         gtk_type_enums_find_value to lookup enum values.
993
994         * gtk/gtkctree.h: 
995         * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
996         GtkCTreeExpansionType. fixed signal creations to pass the enum
997         types not just the base type GTK_TYPE_ENUM.
998
999         * gtk/gtkclist.h: 
1000         * gtk/gtkclist.c: fixed signal creations to pass the real enum
1001         types not just the base type GTK_TYPE_ENUM.
1002
1003 Sun Jul 26 14:50:07 1998  Stefan Jeske  <stefan@gtk.org>
1004
1005         * gtk/testgtk.c : 
1006         Began cleanup, e.g. use gtk_widget_show_all instead of many 
1007         gtk_widget_show's. Completely rewrote the button box sample
1008         (only one window now). Removed "miscellaneous" button.
1009
1010 Sun Jul 26 14:48:14 1998  Stefan Jeske  <stefan@gtk.org>
1011
1012         * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate): 
1013         Fixed wrong allocation for GTK_BUTTONBOX_END.
1014         (allocation->x  =>  allocation->y)
1015
1016 Sun Jul 26 14:06:37 1998  Lars Hamann  <lars@gtk.org>
1017
1018         * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
1019         (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
1020         
1021         * gtk/gtkctree.c (real_tree_select): added check to avoid double
1022         selected rows
1023         (gtk_ctree_button_press)
1024         (gtk_ctree_button_release): fix for pointer grab
1025
1026 Sat Jul 25 13:16:00 1998 Damon Chaplin  <DAChaplin@msn.com>
1027
1028         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): 
1029         Fixed initialization problem - dirty memory could cause problems.
1030         Also checked that bitmapped fonts can be scaled when showing the
1031         available sizes.
1032
1033 Sat Jul 25 02:25:03 1998  Lars Hamann  <lars@gtk.org>
1034
1035         * gtk/gtkctree.c (gtk_ctree_sort_recursive)
1036         (gtk_ctree_sort_recursive): test for node != NULL
1037         (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
1038         (gtk_ctree_last) : added sanity checks
1039         * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
1040
1041 Fri Jul 24 18:15:49 1998  Lars Hamann  <lars@gtk.org>
1042
1043         * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
1044
1045 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
1046
1047         * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
1048
1049 Thu Jul 23 00:11:39 1998  Tim Janik  <timj@gtk.org>
1050
1051         * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
1052         to check out binding priorities. someone should really write
1053         gtkrc-mode for emacs.
1054
1055         * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
1056         * gtk/testgtk.c (main): and move it here ;). this test says something
1057         on release of C-9. (this works only if the mouse pointer is on a
1058         spinbutton and there is no focus widget).
1059
1060         * gtk/gtkrc.h:
1061         * gtk/gtkrc.c:
1062         export gtk_rc_parse_color, gtk_rc_parse_state and a new function
1063         gtk_rc_parse_priority to parse path priority types.
1064         export rc tokens.
1065         feature binding parsing.
1066
1067 Wed Jul 22 23:41:17 1998  Tim Janik  <timj@gtk.org>
1068
1069         * gtk/gtkbindings.h: 
1070         * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
1071         feature binding parsing in rc files.
1072         * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
1073         * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
1074         order the bindings with lowest priority first.
1075
1076 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
1077
1078         * gdk/gdkrgb.c: actually builds and runs properly on big
1079         endian machines now, because we #include config.h. Also
1080         fixed up a compile error in the WORDS_BIGENDIAN case in
1081         gdk_rgb_convert_565_gray. I made the fix by looking at
1082         patterns in the other code; Raph can you verify this?
1083
1084         * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
1085         warnings
1086
1087 Wed Jul 22 23:00:44 1998  Lars Hamann  <lars@gtk.org>
1088
1089         * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse) 
1090         (tree_toggle_expansion) (real_select/unselect_row)
1091         (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
1092
1093 Wed Jul 15 17:44:47 1998  Owen Taylor  <otaylor@redhat.com>
1094
1095         * gtk/gtktext.c (new_text_property): We free things from
1096         the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
1097
1098         * Fix up line start cache when splitting a property
1099         during an insert.
1100
1101 Wed Jul 15 21:15:52 1998  Owen Taylor  <otaylor@redhat.com>
1102
1103         * gtk/gtkwidget.c: restauration => restoration
1104
1105 Thu Jul 16 20:11:36 1998  Owen Taylor  <otaylor@redhat.com>
1106
1107         * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
1108         hasn't been created yet, don't do the lookup.
1109
1110 1998-07-20  Raph Levien  <raph@acm.org>
1111
1112         * gdk/gdkrgb.c: More cleanups in the config process.
1113
1114 1998-07-20  Raph Levien  <raph@acm.org>
1115
1116         * gdkrgb.c: Fixed minor config bug preventing big-endian
1117         architectures from working.
1118
1119 Tue Jul 21 06:32:43 1998  Stefan Jeske  <stefan@gtk.org>
1120
1121         * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
1122         activity indicator. It is settable now as a fraction of the
1123         total width/height using gtk_progress_bar_set_activity_blocks.
1124         Renamed gtk_progress_bar_set_number_of_blocks to
1125         gtk_progress_bar_set_discrete_blocks.
1126
1127 Mon Jul 20 21:28:18 1998  Lars Hamann  <lars@gtk.org>
1128
1129         * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
1130         (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
1131         tree to specified depth
1132         (gtk_ctree_expand_to_depth): expand tree to specified depth
1133         (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
1134
1135 Sun Jul 19 23:51:05 1998  Lars Hamann  <lars@gtk.org>
1136
1137         * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
1138         of GTK_CLIST_ADD_MOD
1139         * gtk/testgtk.c (add1000_clist): changed pixmap
1140
1141 Sat Jul 18 22:59:04 1998  Tim Janik  <timj@gtk.org>
1142
1143         * gtk/gtkmain.h: 
1144         * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
1145
1146         * gtk/gtktypeutils.h:
1147         * gtk/gtkitemfactory.h: remove "void" from prototypes again.
1148
1149 Sat Jul 18 00:54:01 1998  Lars Hamann  <lars@gtk.org>
1150
1151         * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
1152         CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
1153         (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
1154         CHILD_ARG_POSITION
1155         (gtk_notebook_reorder_child): new funktion to change position of a
1156         notebook page
1157         (gtk_notebook_draw_arrow): draw left/right arrow with
1158         GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
1159
1160         * gtk/gtkstyle.c (gtk_default_draw_arrow):
1161         added GTK_SHADOW_ETCHED_IN/OUT
1162
1163 Sun Jul 19 12:19:16 1998  Stefan Jeske  <stefan@gtk.org>
1164
1165         * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
1166           gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
1167         Introduced generic GtkProgress widget. Derived GtkProgressBar from
1168         GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
1169
1170 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
1171
1172         * gtk/gtktypeutils.h
1173         * gtk/gtkitemfactory.h: explicitly specify void in prototype
1174
1175 Fri Jul 17 17:54:02 1998  Lars Hamann  <lars@gtk.org>
1176
1177         * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
1178         of list
1179
1180 Fri Jul 17 05:30:47 1998  Tim Janik  <timj@gtk.org>
1181
1182         * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
1183         sropped the approach of copying all signal specific data into a
1184         GtkHandlerInfo structure. we rather keep the signal data on the stack
1185         in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
1186         avoids multiple lookups of the signal pointer and works savely together
1187         with destroy notifiers of handlers.
1188
1189         * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
1190         someone destroys the entry on the ::activate signal.
1191
1192 Fri Jul 17 01:21:32 1998  Tim Janik  <timj@gtk.org>
1193
1194         * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
1195         instead of ypad (typo).
1196         (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
1197         border around the allocation).
1198         (gtk_arrow_init): the static requisition needs to be setup in this
1199         function rather than gtk_widget_new(), so arrow creation works without
1200         the gtk_arrow_new() constructing.
1201         (gtk_arrow_expose): return TRUE, since we actually handled the expose.
1202
1203         * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
1204         implementation for GtkWidget::size_request, so size requisition for
1205         simple statically sized widgets like GtkArrow works.
1206
1207 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
1208
1209         * gtk-config.in: minor changes to gtk-config: --cflags doesn't
1210         prepend -I@libdir@/glib/include anymore, since glib-config handles
1211         it; --libs strips out redundant -L<path>'s properly (there was
1212         code in there to do it before, but it didn't work)
1213
1214 Thu Jul 16 18:24:41 1998  Tim Janik  <timj@gtk.org>
1215
1216         * gtk/gtknotebook.h: 
1217         * gtk/gtknotebook.c: signdness corrections all ove the place.
1218         implementation of object arguments: GtkNotebook::enable_popup,
1219         GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
1220         GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
1221         begun implementation of child args, we have GtkNotebook::tab_label, but
1222         GtkNotebook::menu_label and GtkNotebook::position still lack the
1223         implementation.
1224         (gtk_notebook_remove_page):
1225         (gtk_notebook_current_page): allow negative indices (-1) as alias for
1226         the last page.
1227
1228         * gtk/gtkentry.h:
1229         * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
1230         arguments GtkEntry::max_length and GtkEntry::visibility.
1231         (gtk_entry_adjust_scroll): queue a redraw.
1232
1233         * gtk/gtkeditable.h:
1234         * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
1235         object arguments GtkEditable::text_position and GtkEditable::editable.
1236         new (action) signal GtkEditable::set_editable.
1237         provide a default handler for GtkEditable::changed that queues a redraw.
1238
1239         * gtk/gtktext.h: 
1240         * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
1241         set_editable.
1242
1243 Thu Jul 16 14:42:11 1998  Lars Hamann  <lars@gtk.org>
1244
1245         * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
1246         case of drag_target == NULL
1247         * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
1248         Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
1249         * gtk/gtkfilesel.c (gtk_file_selection_file_button,
1250         gtk_dir_selection_file_button): fix due to changes in clist's
1251         select_row signal.
1252
1253 Thu Jul 16 01:27:15 1998  Tim Janik  <timj@gtk.org>
1254
1255         * gtk/gtkwidget.h:
1256         * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
1257         similar to gtk_widget_set_uposition(). that is: -1=unspecified,
1258         -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
1259         to be gint16s rather than guint16s, since that's what the code expected
1260         (for a long time actually).
1261
1262         * gtk/gtkviewport.c:
1263         added support for object arguments: GtkViewport::shadow_type,
1264         GtkViewport::vadjustment and GtkViewport::hadjustment.
1265         (gtk_viewport_add): chain gtk_bin_add.
1266
1267         * gtk/gtkscrolledwindow.c: 
1268         added support for object argument: GtkScrolledWindow::hscrollbar_policy,
1269         GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
1270
1271         * gtk/gtkadjustment.h: 
1272         * gtk/gtkadjustment.c: 
1273         * gtk/gtkctree.h: 
1274         * gtk/gtkclist.h: 
1275         * gtk/gtkctree.c: 
1276         * gtk/gtkclist.c:
1277         * gtk/gtkscrolledwindow.h:
1278         * gtk/gtkscrolledwindow.c:
1279         * gtk/gtkviewport.h:
1280         * gtk/gtkviewport.c:
1281         GtkType and macro fixups.
1282
1283 Thu Jul 16 01:10:02 1998  Lars Hamann  <lars@gtk.org>
1284
1285         * gtk/gtkctree.h :
1286         * gtk/gtkctree.c :
1287         Added focus handling, horizontal and vertical autoscrolling,
1288         extended Selection Mode, key bindings
1289         Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
1290         Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
1291         Removed gtk_ctree_clear.
1292         
1293         * gtk/gtkclist.h :
1294         * gtk/gtkclist.c : 
1295         Added focus handling, horizontal and vertical autoscrolling,
1296         extended Selection Mode, key bindings
1297
1298 Wed Jul 15 12:39:27 1998  Raph Levien  <raph@acm.org>
1299
1300         * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
1301         source tree. For more information on GdkRgb, please see:
1302         http://www.levien.com/gdkrgb/
1303
1304         * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
1305         bothers me slightly that the feature is in gdk, and this file is
1306         in gtk, but it's probably ok.
1307
1308         * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
1309
1310         * gdk/gdkrgb.c:
1311         * gdk/gdkrgb.h: Added this module.
1312
1313         * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
1314
1315         * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
1316
1317 Wed Jul 15 14:20:10 1998  Tim Janik  <timj@gtk.org>
1318
1319         * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
1320         to this function. it needs to relookup the signal multiple times.
1321         this fixes spurious segfaults that could show up with signal intensive
1322         code, when classes are created during a pending emission (which is
1323         normal case).
1324
1325 Tue Jul 14 19:12:12 1998  Tim Janik  <timj@gtk.org>
1326
1327         * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
1328         child if it isn't a label.
1329
1330 Tue Jul 14 11:41:38 1998  Tim Janik  <timj@gtk.org>
1331
1332         * gtk/gtkdialog.h: 
1333         * gtk/gtkseparator.h: 
1334         * gtk/gtkhseparator.h: 
1335         * gtk/gtkvseparator.h: macro and GtkType fixups.
1336
1337 Tue Jul 14 06:25:46 1998  Tim Janik  <timj@gtk.org>
1338
1339         * gtk/testgtk.c (create_cursors): display the current cursor name.
1340
1341         * gtk/gtktypeutils.h: 
1342         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
1343         the fundamental type definition. the GtkArg union now only covers
1344         the required storage types for argument values. adapted the GTK_VALUE_*
1345         macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
1346
1347         * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
1348         code, fixed int/float collection. fixed a bug in the sanity checking
1349         code for GtkObjects.
1350
1351         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
1352         argument collection code.
1353
1354         * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
1355         macros when distinguishing the return type.
1356
1357 Mon Jul 13 12:42:51 1998  George Lebl  <jirka@5z.com>
1358
1359         * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
1360           is not NULL before trying to g_list_remove the child. A patch
1361           from Michael Lausch.
1362
1363 Sun Jul 12 16:40:06 1998  Tim Janik  <timj@gtk.org>
1364
1365         * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
1366         collection (always casted to doubles upon argument passing).
1367
1368 Sun Jul 12 05:59:26 1998  Tim Janik  <timj@gtk.org>
1369
1370         * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
1371         object_init_func for derived objects with the object's ->klass field
1372         still pointing to the corresponding base class, otherwise overridden
1373         class functions could get called with partly-initialized objects.
1374         (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
1375
1376 Sun Jul 12 02:47:35 1998  Tim Janik  <timj@gtk.org>
1377
1378         * gtk/gtkobject.h:
1379         * gtk/gtkobject.c:
1380         (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
1381
1382         * gtk/gtkcontainer.h:
1383         * gtk/gtkcontainer.c:
1384         (gtk_container_child_arg_get_info): new function which wraps
1385         gtk_arg_get_info().
1386
1387 Fri Jul 10 13:29:53 1998  Tim Janik  <timj@gtk.org>
1388
1389         * gtk/gtkcontainer.c:
1390         (gtk_container_arg_get): 
1391         (gtk_container_arg_set): 
1392         * gtk/gtkobject.c:
1393         (gtk_object_arg_set): 
1394         (gtk_object_arg_get):
1395         strictly check for the associated get/set arg functions. if an
1396         arg is readable or writable, the associated class functions *must*
1397         be provided.
1398
1399 Fri Jul 10 09:37:50 1998  Tim Janik  <timj@gtk.org>
1400
1401         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
1402         padding into account if there is an accelerator.
1403
1404 Fri Jul 10 05:51:44 1998  Tim Janik  <timj@gtk.org>
1405
1406         * gtk/gtkcontainer.c:
1407         (gtk_container_add_with_args): collect the arguments with
1408         gtk_container_child_args_collect, not through gtk_object_args_collect.
1409         (gtk_container_child_set): likewise.
1410
1411 Fri Jul 10 04:20:35 1998  Tim Janik  <timj@gtk.org>
1412
1413         * gtk/gtktypeutils.h: 
1414         * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
1415         which is derived from GTK_TYPE_STRING.
1416
1417         * gtk/gtkbindings.c: reworked the argument type handling.
1418
1419 Thu Jul  9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1420
1421         * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
1422           so that it seems to allow normal operation in those modes,
1423           although you will only see black  (GIMP toolbar now pops up,
1424           just don't create a new image and GIMP now works in 4 bit.)
1425
1426 Thu Jul  9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1427
1428         * gdk/gdkvisuals.c: 4 bit support, increased available_depths
1429           array, which was too low (?)
1430
1431 Fri Jul 10 00:02:04 1998  Tim Janik  <timj@gtk.org>
1432
1433         * gtk/gtkcontainer.h: 
1434         * gtk/gtkcontainer.c: deleted most of the argument handling code, since
1435         that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
1436         we now export a new function gtk_container_child_args_collect().
1437         for consistency with the object arguments, a few functions got renamed:
1438         gtk_container_child_arg_get -> gtk_container_child_get,
1439         gtk_container_child_arg_set -> gtk_container_child_set,
1440         gtk_container_child_arg_getv -> gtk_container_child_getv,
1441         gtk_container_child_arg_setv -> gtk_container_child_setv,
1442         gtk_container_add_with_argv -> gtk_container_addv.
1443         note, gtk_container_add_with_args() remained, because its equivalent
1444         would be gtk_container_add(,, ...) which would break all existing code.
1445         (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
1446         we expect the `arg_name' argument to be a const static string now.
1447         (gtk_container_get_child_arg_type): function removed.
1448
1449 Thu Jul  9 07:03:04 1998  Tim Janik  <timj@gtk.org>
1450
1451         * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
1452         this is a static inline function that collects command line arguments
1453         from a va_list. this file can just be included in all places that
1454         need this functionality.
1455
1456         * gtk/gtkarg.h: 
1457         * gtk/gtkarg.c: new files which implement most of the argument
1458         handling stuff from gtkobject.c. also collected a few more
1459         gtk_arg_* utility functions from else places.
1460
1461         * gtk/gtkobject.h: 
1462         * gtk/gtkobject.c: moved most of the argument handling code into
1463         gtkarg.c. we now export gtk_object_args_collect() as a non-public
1464         method with a blind va_list pointer.
1465         (gtk_object_add_arg_type): the `arg_name' argument is required to be a
1466         const static string now.
1467         (gtk_object_get_arg_type): function got removed.
1468
1469         * gtk/gtkwidget.c: 
1470         (gtk_widget_set): 
1471         (gtk_widget_new): adaptions for gtk_object_args_collect().
1472
1473         * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
1474         fundamental type name so as to have a valid prefix, e.g. "bool"->
1475         "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
1476         though that should probably be something like GtkNone since the
1477         type itself is called GTK_TYPE_NONE.
1478         even the internal type names need to avoid name clashes and must live
1479         in their own namespace, several code portions rely on that.
1480         we should relly have typedefs such as typedef gchar* GtkString; so the
1481         fundamental type names can be used for code dumpers just like with all
1482         the Gtk/Gdk types.
1483
1484 Wed Jul  8 15:31:28 1998  Tim Janik  <timj@gtk.org>
1485
1486         * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
1487         keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
1488         to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
1489         (GTK_RELIEF_HALF).
1490         (gtk_button_paint): set the background for prelighted buttons with
1491         GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
1492         (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
1493         the shadow type (otherwise we get strange shadows for coloured buttons).
1494         (gtk_button_set_relief): queue a redraw after changing
1495         the relief.
1496         (gtk_button_class_init): 
1497         (gtk_button_set_arg): 
1498         (gtk_button_get_arg): added object argument "GtkButton::relief".
1499
1500         * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
1501
1502 Mon Jul  6 18:30:48 1998  Tim Janik  <timj@gtk.org>
1503
1504         * gtk/gtkbutton.h:
1505         * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
1506         GTK_BIN (button)->child to button->child to keep source compatibility.
1507
1508         * gtk/gtkoptionmenu.c:
1509         * gtk/gtkclist.c:
1510         * gtkcheckbutton.c: don't refer to button->child, but
1511         GTK_BIN (button)->child instead.
1512
1513 Mon Jul  6 12:06:23 BST 1998  Tony Gale  <gale@gtk.org>
1514
1515         * docs/gtkfaq.sgml: update anon CVS info
1516
1517 Sat Jul  4 13:16:24 1998  Tim Janik  <timj@gtk.org>
1518
1519         * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
1520         functions.
1521
1522         * gdk/gdkwindow.c:
1523         * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
1524         to XFree() calls.
1525
1526 1998-07-03  Federico Mena Quintero  <federico@nuclecu.unam.mx>
1527
1528         * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
1529         I seem to have erroneously added it to gtkfeatures.h (not .h.in).
1530
1531 Fri Jul  3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
1532
1533         * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
1534
1535 Wed Jul  1 20:58:46 1998  Tim Janik  <timj@gtk.org>
1536
1537         * gtk/gtkwidget.h:
1538         * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
1539
1540         * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
1541         error that prevented signal to entry addition for signals with
1542         parameters.
1543
1544 Wed Jul  1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
1545
1546         * ltconfig: fix for properly detecting shared lib support on
1547         SunPro cc (taken from libtool 1.2.a)
1548
1549 Wed Jul  1 03:33:30 1998  Tim Janik  <timj@gtk.org>
1550
1551         * gtk/gtkrc.c: implementation of the "class" keyword for styles.
1552
1553 Tue Jun 30 14:30:37 1998  Tim Janik  <timj@gtk.org>
1554
1555         * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
1556         rc set pattern is favoured, this is needed for overriding of style
1557         patterns with subsequently parsed rc files.
1558
1559 Tue Jun 30 12:45:19 1998  Tim Janik  <timj@gtk.org>
1560
1561         * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
1562         error messages.
1563
1564 Tue Jun 30 09:24:40 1998  Tim Janik  <timj@gtk.org>
1565
1566         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
1567         modifier as well.
1568         (gtk_accelerator_name): add "<Release>" to the accelerator name if
1569         neccessary.
1570
1571         * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
1572         account.
1573
1574         * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
1575         default handler for key-release events, which checks for activation
1576         of GDK_RELEASE_MASK key bindings.
1577
1578         * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
1579
1580 Mon Jun 29 13:39:45 1998  Tim Janik  <timj@gtk.org>
1581
1582         * gtk/gtkarrow.h: GtkType and macro fixups.
1583         * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
1584         "GtkArrow::shadow_type".
1585
1586 Sun Jun 28 11:39:17 1998  Tim Janik  <timj@gtk.org>
1587
1588         * gtk/gtkalignment.h:
1589         * gtk/gtkbin.h: GtkType and macro fixups.
1590         
1591         * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
1592         implementation: GtkAlignment::xalign, GtkAlignment::yalign,
1593         GtkAlignment::xscale, GtkAlignment::yscale.
1594
1595 Sun Jun 28 04:29:10 1998  Tim Janik  <timj@gtk.org>
1596
1597         * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
1598         fucntions from all parent types upon class initialization.
1599
1600         * gtk/gtkcontainer.c:
1601         (gtk_container_get_type): announce gtk_container_base_class_init to
1602         the type system.
1603         (gtk_container_base_class_init): new function to feature base class
1604         initialization.
1605         (gtk_container_get_child_arg): 
1606         (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
1607         and set_child_arg methods of the class indicated through the argument
1608         name.
1609
1610         * gtk/gtkobject.c:
1611         (gtk_object_base_class_init): new function to feature base class
1612         initialization.
1613         (gtk_object_init_type): announce gtk_object_base_class_init to the type
1614         system.
1615         (gtk_object_class_init): setup the get_arg and set_arg pointers for
1616         GtkObjectClass.
1617         (gtk_object_setv): 
1618         (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
1619         instead of bothering the type system with this.
1620
1621         * gtk/gtkaccellabel.c: 
1622         * gtk/gtkbutton.c: 
1623         * gtk/gtkradiobutton.c: 
1624         * gtk/gtktable.c:
1625         * gtk/gtktogglebutton.c: 
1626         * gtk/gtktipsquery.c: 
1627         * gtk/gtkbox.c: 
1628         * gtk/gtkpacker.c: 
1629         * gtk/gtkwidget.c: 
1630         * gtk/gtkwindow.c: 
1631         * gtk/gtkframe.c: 
1632         * gtk/gtkmisc.c:
1633         * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
1634         corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
1635         functions wrt GtkTypeInfo initialization. changed a lot of the set/get
1636         arg functions to take a GtkObject argument.
1637
1638         gtk/gtkadjustment.c:
1639         gtk/gtkalignment.c:
1640         gtk/gtkarrow.c:
1641         gtk/gtkaspectframe.c:
1642         gtk/gtkbbox.c:
1643         gtk/gtkbin.c:
1644         gtk/gtkcheckbutton.c:
1645         gtk/gtkcheckmenuitem.c:
1646         gtk/gtkclist.c:
1647         gtk/gtkcolorsel.c:
1648         gtk/gtkcombo.c:
1649         gtk/gtkctree.c:
1650         gtk/gtkcurve.c:
1651         gtk/gtkdata.c:
1652         gtk/gtkdialog.c:
1653         gtk/gtkdrawingarea.c:
1654         gtk/gtkeditable.c:
1655         gtk/gtkentry.c:
1656         gtk/gtkeventbox.c:
1657         gtk/gtkfilesel.c:
1658         gtk/gtkfixed.c:
1659         gtk/gtkfontsel.c:
1660         gtk/gtkgamma.c:
1661         gtk/gtkhandlebox.c:
1662         gtk/gtkhbbox.c:
1663         gtk/gtkhbox.c:
1664         gtk/gtkhpaned.c:
1665         gtk/gtkhruler.c:
1666         gtk/gtkhscale.c:
1667         gtk/gtkhscrollbar.c:
1668         gtk/gtkhseparator.c:
1669         gtk/gtkimage.c:
1670         gtk/gtkinputdialog.c:
1671         gtk/gtkitem.c:
1672         gtk/gtkitemfactory.c:
1673         gtk/gtklist.c:
1674         gtk/gtklistitem.c:
1675         gtk/gtkmenu.c:
1676         gtk/gtkmenubar.c:
1677         gtk/gtkmenuitem.c:
1678         gtk/gtkmenushell.c:
1679         gtk/gtknotebook.c:
1680         gtk/gtkoptionmenu.c:
1681         gtk/gtkpaned.c:
1682         gtk/gtkpixmap.c:
1683         gtk/gtkpreview.c:
1684         gtk/gtkprogressbar.c:
1685         gtk/gtkradiomenuitem.c:
1686         gtk/gtkrange.c:
1687         gtk/gtkruler.c:
1688         gtk/gtkscale.c:
1689         gtk/gtkscrollbar.c:
1690         gtk/gtkscrolledwindow.c:
1691         gtk/gtkseparator.c:
1692         gtk/gtkspinbutton.c:
1693         gtk/gtkstatusbar.c:
1694         gtk/gtktext.c:
1695         gtk/gtktoolbar.c:
1696         gtk/gtktooltips.c:
1697         gtk/gtktree.c:
1698         gtk/gtktreeitem.c:
1699         gtk/gtkvbbox.c:
1700         gtk/gtkvbox.c:
1701         gtk/gtkviewport.c:
1702         gtk/gtkvpaned.c:
1703         gtk/gtkvruler.c:
1704         gtk/gtkvscale.c:
1705         gtk/gtkvscrollbar.c:
1706         gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
1707         match the modified GtkTypeInfo structure.
1708
1709 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
1710
1711         * gtk/testgtk.c: use rand() instead of random() for portability
1712
1713 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
1714
1715         * configure.in
1716         * acconfig.h
1717         * gdk/gdk.c: use native Xlib XConvertCase if it's available
1718
1719 Sat Jun 27 15:44:46 1998  Tim Janik  <timj@gtk.org>
1720
1721         * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
1722         XConvertCase() functionality from X11R6 on X11R5 systems.
1723
1724 Thu Jun 25 10:50:34 1998  Stefan Jeske  <stefan@gtk.org>
1725
1726         * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
1727         gdk_string_height, gdk_char_height to retrieve the exact
1728         height of a text.
1729
1730 Thu Jun 25 07:53:51 BST 1998  Tony Gale  <gale@gtk.org>
1731
1732         * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
1733           by Stefan Mars <mars@lysator.liu.se>
1734         * examples/clist/clist.c examples/clist/Makefile: example code
1735           for GtkCList widget from the Tutorial
1736
1737 Wed Jun 24 16:38:02 1998  Tim Janik  <timj@gtk.org>
1738
1739         * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
1740         if the container is not visible, we might be a toplevel! this holds
1741         for all other base container implementations as well, that are
1742         candidates to derive toplevels from. in general the resizing code will
1743         care about visibility itself.
1744         * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
1745         * gtk/gtkbox.c (gtk_box_remove): likewise.
1746
1747         * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
1748         gtk_window_set_hints(), since we haven't calculated the new position
1749         yet.
1750
1751         * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
1752         *mask are alway initialized in a sane way, regardless of the return
1753         value.
1754
1755 Wed Jun 24 14:14:32 1998  Tim Janik  <timj@gtk.org>
1756
1757         * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
1758         to gtk_container_child_arg_setv, but takes a variable argument list.
1759         new function gtk_container_get_child_arg_type, which is needed by
1760         gtk_object_collect_args.
1761
1762         * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
1763         take a function pointer to figure the argument type.
1764         adapted callers to pass gtk_object_get_arg_type.
1765         * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
1766         gtk_object_get_arg_type..
1767
1768         * gtk/gtkpacker.h: 
1769         * gtk/gtkpacker.c:
1770         (gtk_packer_reorder_child): new function to change the packing order
1771         of a child.
1772         (gtk_packer_size_request): 
1773         (gtk_packer_size_allocate): take container->border_width into acount.
1774
1775         * gtk/gtkpacker.c: implemented widget arguments:
1776         "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
1777         "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
1778         implemented child arguments:
1779         "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
1780         "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
1781         "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
1782         "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
1783
1784         * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
1785         not the alignment.
1786
1787         * gtk/gtkeventbox.h:
1788         * gtk/gtkeventbox.c: GtkType and macro fixups.
1789
1790         * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
1791         sensitivity of an entry.
1792
1793         * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
1794         for insensitive base and text.
1795
1796         * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
1797         widget state dependent.
1798         (gtk_entry_style_set): likewise.
1799         (gtk_entry_state_changed): set background color on state changes.
1800         (gtk_entry_draw_text): for non selected text, use state dependent
1801         colors.
1802
1803         * gtk/gtktogglebutton.c: support for widget arguments
1804         "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
1805
1806 Wed Jun 24 08:35:45 1998  Stefan Jeske  <stefan@gtk.org>
1807
1808         * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility 
1809         code for 1.0.x-like parameters. Changed internal interface of
1810         gtk_spin_button_real_spin. Several fixes to avoid emission of
1811         "value_changed" where possible.
1812
1813 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
1814
1815         * gtk-boxed.defs: s/GkWidget/GtkWidget/
1816
1817 Wed Jun 24 07:47:29 1998  Tim Janik  <timj@gtk.org>
1818
1819         * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
1820         to select the resize_mode for the idle-labels container.
1821
1822         * gtk/gtkframe.h: 
1823         * gtk/gtkframe.c: GtkType and macro corrections.
1824
1825         * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
1826         support widget argument "GtkRadioButton::group".
1827
1828 Tue Jun 23 08:01:09 1998  Tim Janik  <timj@gtk.org>
1829
1830         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
1831         unconditionally if resize_mode has changed.
1832
1833         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
1834         GTK_RESIZE_QUEUE on the scrolled window.
1835         (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
1836
1837 Tue Jun 23 04:20:30 1998  Tim Janik  <timj@gtk.org>
1838
1839         * gtk/gtkcontainer.h:
1840         * gtk/gtkcontainer.c:
1841         (GTK_IS_RESIZE_CONTAINER): new macro to find out if
1842         a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
1843         (gtk_container_queue_resize): new function to queue a container for
1844         a *size* reallocation (doesn't affect its position, and thus its
1845         parent is left untouched usually).
1846         (gtk_container_get_resize_container): new function to retrive the next
1847         most resize container which is not itself queued for a resize.
1848         (gtk_container_idle_sizer): new function to carefully process the
1849         container_resize_queue since it can change during invokation of
1850         gtk_container_check_resize().
1851         (gtk_container_resize_children): total rework of this function to
1852         properly handle resize containers. makes a lot of assumptions whitch
1853         are stated in the comments.
1854
1855         * gtk/gtkcontainer.c:
1856         (gtk_container_real_check_resize): only requeue ourselves if we are not
1857         a resize container.
1858         (gtk_container_clear_resize_widgets): care for automatic deletion of our
1859         resize_widgets list on size_allocate through a handler connection.
1860
1861         * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
1862         focus and default widget of a window, so to take the burden from
1863         gtk_widget_unparent.
1864
1865         * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
1866         to be clever, but actually messed up the resize_children logic and
1867         caused unneccessary allocations on its whole branch. besides this,
1868         it messed up the display by not invoking a redraw after the allocation.
1869
1870         * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
1871         that it is the child again that is queued for a resize.
1872         (gtk_table_attach): likewise.
1873         (gtk_table_remove): likewise.
1874
1875 1998-06-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
1876
1877         * gtk/gtkentry.h, gtk/gtkentry.c: Export the
1878         gtk_entry_adjust_scroll.  Required if you change the cursor
1879         position and want to sync it up with your code (Midnight Commander
1880         gtk front end needs this).
1881
1882         * gtk/gtktable.c: Deal with tables that have size 0, 0.
1883
1884 Tue Jun 23 12:12:19 BST 1998  Tony Gale  <gale@gtk.org>
1885
1886         * examples/README.1ST: new file to explain how the
1887           code examples should be extracted from the tutorial.
1888
1889 Mon Jun 22 18:43:11 1998  Lars Hamann  <lars@gtk.org>
1890
1891         * gtk/gtkctree.c (draw_row): added new "line style"
1892         GTK_CTREE_LINES_TABBED 
1893         * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
1894         search the glist pointer of an GtkCTreeRow
1895
1896 1998-06-21  Raja R Harinath  <harinath@cs.umn.edu>
1897  
1898         * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
1899         from, and clean up, the dependencies.  Generate to intermediate
1900         files to prevent problems with Ctrl-C.
1901
1902         * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
1903
1904 Fri Jun 19 14:46:56 1998  Stefan Jeske  <stefan@gtk.org>
1905
1906         * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
1907         - Bug fix for precision problem causing occasional double emission 
1908           of "value_changed" signal (hopefully works now).
1909         - API change (should be binary compatible) : 
1910           new enum GtkSpinType; modified gtk_spin_button_spin to use it.
1911           Modified cursor example appropriately.
1912           To spin by something other than step_/page_increment, use
1913           gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
1914         - Made GTK_SHADOW_NONE the default. ;)
1915         - Fixed casting of GtkAdjustment* to GtkWidget* in
1916           gtk_spin_button_value_changed.
1917
1918 Fri Jun 19 06:18:19 1998  Tim Janik  <timj@gtk.org>
1919
1920         * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
1921         for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
1922         resize widget list before queuing the container for a new reize.
1923         (gtk_container_need_resize): changed return value to FALSE, since this
1924         used to indicate that no further resizes are needed.
1925         (gtk_container_set_arg): 
1926         (gtk_container_get_arg): 
1927         (gtk_container_class_init): implemented GtkContainer::resize_mode
1928         argument.
1929
1930         (gtk_container_resize_children): when we walk up the tree of a resize
1931         widget we need to stop if we are the current parent.
1932
1933         * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
1934         GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
1935         (gtk_widget_hide_all): retrive the toplevel widget from via
1936         gtk_widget_get_resize_container().
1937
1938 Thu Jun 18 23:08:36 1998  Owen Taylor  <otaylor@gtk.org>
1939
1940         * gtk/gtklist.c (gtk_list_button_press): Only respond
1941           to selection with button 1. This allows context-sensitive
1942           menus to work correctly.
1943
1944 Fri Jun 19 03:29:04 1998  Tim Janik  <timj@gtk.org>
1945
1946         * gtk/gtkaccelgroup.c: 
1947         * gtk/gtkbindings.c: 
1948         * gtk/gtkcontainer.c:
1949         * gtk/gtkitemfactory.c:
1950         * gtk/gtkobject.c: 
1951         * gtk/gtksignal.c:
1952         * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
1953         g_quark_from_static_string calls to save memory.
1954
1955         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
1956         function _after_ the new data has been setup.
1957         minor changes to object data functions to feature the GQuark type.
1958
1959 Thu Jun 18 21:13:54 1998  Owen Taylor  <otaylor@gtk.org>
1960
1961         * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
1962           from argv.
1963
1964 Thu Jun 18 20:22:28 1998  Owen Taylor  <otaylor@gtk.org>
1965
1966         * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
1967           to be more readable perl, to spit out stuff that looks
1968           more like readable C, and to pipe output through indent
1969           so output looks a lot like readable C. No functional
1970           changes.
1971
1972 Thu Jun 18 17:43:31 1998  Owen Taylor  <otaylor@gtk.org>
1973
1974         * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
1975           necessary when switching to a masked pixmap. (Based on a patch
1976           from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
1977
1978 Thu Jun 18 16:18:10 1998  Owen Taylor  <otaylor@gtk.org>
1979
1980         * gtk/gtkeditable.[ch]: Added action signals for keyboard
1981           bindings. (move_cursor, kill_word, etc, etc, etc). 
1982
1983           removed the time argument from
1984           gtk_editable_cut/copy/paste_clipboard (source but not
1985           binary incompatible...) Instead get time from
1986           gtk_get_current_event ().
1987         
1988         * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
1989           signals.
1990
1991 Thu Jun 18 02:52:09 1998  Owen Taylor  <otaylor@gtk.org>
1992
1993         Patches from Damon Chaplin <DAChaplin@email.msn.com>:
1994
1995         gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
1996              parent class to GtkNotebookClass when splitting the widget in
1997              two.  Also updated some comments.
1998
1999         gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
2000                button without a font selected.
2001
2002              Fixed bug in set_font_name - I hadn't updated the code to
2003                search for the style in the font_style clist - it was
2004                still assuming the style row was equal to its index,
2005                but it isn't any more.
2006         
2007              Changed 'Reset' button on filter page to 'Clear Filter'.
2008              Deleted old code relating to the old 'Filter Fonts' toggle
2009              Updated some comments.
2010              Cleared 'Actual Fontname' if no font is set.
2011
2012         gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
2013              destroying the GtkFontSelection instead of the
2014              GtkFontSelectionDialog.
2015
2016 Thu Jun 18 02:15:31 1998  Owen Taylor  <otaylor@gtk.org>
2017
2018         * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
2019           flag to make all warnings fatal errors.
2020
2021         * gtk/testthreads.c: moved <pthreads.h> include inside 
2022           #ifdef USE_PTHREADS
2023
2024 Thu Jun 18 01:37:31 1998  Owen Taylor  <otaylor@gtk.org>
2025
2026         * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c 
2027           gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
2028
2029         - Added new function gtk_container_set_resize_mode() for
2030           fine-grained control of where resize-queueing is done.
2031
2032         - Removed GtkContainer::need_resize and GtkWindow::move_resize
2033         - Added GtkContainer::check_resize to replace need_resize.
2034
2035         - Added function gtk_container_check_resize() to trigger
2036           queued resizes, and gtk_container_resize_children() to
2037           Figure which children need to be size-allocated. (logic
2038           moved from gtkwindow.c)
2039
2040         - Reorganized code in gtkwindow.c
2041         
2042         - Set the resize-mode for viewports so that resizes within
2043           a viewport don't propagate out of it. 
2044         
2045 1998-06-18  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2046
2047         * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
2048
2049         * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
2050         g_return_val_if_fail, because the function *does* return a value.
2051
2052 Thu Jun 18 03:30:06 1998  Tim Janik  <timj@gtk.org>
2053
2054         * gtk/gtkaccellabel.h:
2055         * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
2056         request the size of the accelerator portion of an accel label.
2057         (gtk_accel_label_size_request): don't request for the accelerators size.
2058         (gtk_accel_label_expose_event): only draw the accelerator if we got
2059         enough extra space.
2060
2061         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
2062         width from children.
2063
2064         * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
2065         object (after removal has been requested) check if there is still an
2066         accelerator remaining to avoid adding two accelerators on an object.
2067         this can happen for locked accelerators (or accelerator-frozen widgets).
2068         (gtk_menu_size_request): feature childrens accelerator width in size
2069         requests.
2070
2071         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
2072         gtk_widget_freeze_accelerators() for dynamically created menu items.
2073
2074         * gtk/gtksignal.h: 
2075         * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
2076         which will return a handler_id > 0 if the specified function is pending
2077         for `signal_id'.
2078
2079         * gtk/gtkwidget.h:
2080         * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
2081         a signal handler function to stop accelerator addition.
2082         added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
2083         which will prevent (undo) any accelerators from being added to or
2084         removed from a widget.
2085
2086 Wed Jun 17 21:59:09 1998  Stefan Jeske  <stefan@gtk.org>
2087
2088         * gtkspinbutton.h gtkspinbutton.c testgtk.c:
2089         Changed GtkSpinButtonUpdatePolicy enum, added keyboard
2090         acceleration, new API gtk_spin_button_set_snap_to_ticks.
2091
2092 Wed Jun 17 03:47:40 1998  Tim Janik  <timj@gtk.org>
2093
2094         * gdk/gdk.h:
2095         * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
2096         the current GdkWindow the pointer is on if there is any.
2097         
2098         * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
2099         and one column, so we don't construction logic at all. changed a few
2100         (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
2101         unsigned int wraps.
2102
2103         * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
2104         portion, added an additional check for parent != widget.
2105
2106         * more GtkType and macro fixups.
2107
2108 1998-06-16  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2109
2110         * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
2111         "clip" parameter, which is the clipping rectangle to use.  This
2112         eliminates the extremely annoying flicker when exposing parts of
2113         the handlebox.
2114
2115 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
2116
2117         * gtk/gtktable.c: fix from TimJ for off-by-one error in table
2118         resizing
2119
2120 Tue Jun 16 06:29:57 1998  Tim Janik  <timj@gtk.org>
2121
2122         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
2123         != 0 on the argument.
2124
2125         * gtk/gtktable.h: 
2126         * gtk/gtktable.c: new function gtk_table_resize() which allowes
2127         shrinking and expanding of tables. implementation of widget arguments
2128         and child arguments. many signedness corrections.
2129
2130 Mon Jun 15 04:15:03 1998  Tim Janik  <timj@gtk.org>
2131
2132         * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
2133         not only the child, otherwise we might end up taking away other
2134         childrens space after the resize.
2135
2136         * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
2137         an unknown menu path from any source, that path must always be flagged
2138         as "modified", since we don't really know whether it has its default
2139         value or not.
2140
2141         * gtk/gtktree.c:
2142         * gtk/gtkpacker.c:
2143         * gtk/gtknotebook.c:
2144         * gtk/gtkmenushell.c:
2145         * gtk/gtklist.c:
2146         * gtk/gtkpaned.c:
2147         * gtk/gtkfixed.c: 
2148         * gtk/gtkbutton.c: implement gtk_*_child_type functions.
2149
2150         * gtk/gtkbox.h: 
2151         * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
2152         arguments. implemented child arguments.
2153
2154         * more GtkType and macro fixups.
2155
2156 Sun Jun 14 16:30:02 1998  Tim Janik  <timj@gtk.org>
2157
2158         * gtk/gtkcheckbutton.h: GtkType and macro fixups.
2159
2160         * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
2161         and gtk_clist_get_hadjustment.
2162
2163         * gtk/gtkcontainer.c:
2164         implementation of children arguments, new class member functions
2165         (child_type), (get_child_arg) and (set_child_arg) plus a new field
2166         n_child_args.
2167         (gtk_container_child_type): new function which returns the type of a
2168         child that the container expects for its next addition.
2169         (gtk_container_add_child_arg_type): new function to introduce a new
2170         child argument at class creation time.
2171         (gtk_container_query_child_args): new function to query all child
2172         arguments that are supported by a container class.
2173         (gtk_container_child_arg_getv): new fucntion to retrive the value of a
2174         child argument.
2175         (gtk_container_child_arg_setv): new function to set a child argument for
2176         a certain container and child combination.
2177         (gtk_container_add_with_args):
2178         (gtk_container_add_with_argv): new functions to feature addition of a
2179         new child in combination with the setting of certain child arguments.
2180
2181         * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
2182         GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
2183         this should really be done through class cretion hooks some day.
2184
2185         * gtk/gtkcontainer.c: changed type of border_width from gint16 to
2186         guint : 16.
2187
2188         * gtk/gtkpacker.h:
2189         * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
2190         follow the gtk convention for lower case variable names (important
2191         for language wrappers and widget arguments), and made them guint : 16.
2192
2193         * examples/packer/pack.c: adaptions for the case converted GtkPacker
2194         fields.
2195
2196 Fri Jun 12 16:33:23 1998  Tim Janik  <timj@gtk.org>
2197
2198         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
2199         change the character pair for single line comments.
2200         (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
2201         GtkItemFactoryClass.
2202         (gtk_item_factory_parse_rc_string): likewise.
2203
2204 Mon Jun 15 23:39:44 1998  Owen Taylor  <otaylor@gtk.org>
2205
2206         * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
2207         lists from the klass structure to a static structure
2208         in gtkfontsel.c; cleans up global the namespace.
2209
2210 Mon Jun 15 22:16:10 1998  Owen Taylor  <otaylor@gtk.org>
2211
2212         * gtk/makeenums.pl (parse_entries): Fix (untriggered)
2213         bug with /*< skip >*/ and remove warning.
2214         
2215 Mon Jun 15 20:14:09 1998  Owen Taylor  <otaylor@gtk.org>
2216
2217         * gtk/Makefile.am: Made the gtkmarshal.* generation
2218         rules maintainer-only.
2219
2220 Mon Jun 15 16:29:45 1998  Owen Taylor  <otaylor@gtk.org>
2221
2222         * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h 
2223           gtk/Makefile.am gtk/makenums.pl 
2224
2225         Removed out the G_ENUM/FLAGS mechanism in favor
2226         of a perl script that parses the standard headers
2227         (with occasional /*< nick=foo >*/ style overrides)
2228         and extracts the enumerations.
2229
2230           gtk/maketypes.awk: Small improvments to the
2231           translation of names. (Avoid splitting gc into
2232           g_c_.)
2233         
2234 Mon Jun 15 16:25:44 1998  Owen Taylor  <otaylor@gtk.org>
2235
2236         * gtk/gtk.h gtk/gtkfontsel.[ch]: 
2237         Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
2238         
2239 Mon Jun 15 15:58:34 1998  Owen Taylor  <otaylor@gtk.org>
2240
2241         * gtk/gtkentry.c:
2242         - Restored gtk_entry_adjust_scroll to static 
2243         - Changed text positioning code so that we always
2244           display as large a portion of the text as possible.
2245
2246 Mon Jun 15 15:42:12 1998  Owen Taylor  <otaylor@gtk.org>
2247
2248         * gtk/gtktext.c (gtk_text_finalize): Free internal
2249         structures of text widget. Also, unreference pixmaps
2250         when unrealizing.
2251         
2252 Sat Jun 13 19:14:39 1998  Owen Taylor  <otaylor@gtk.org>
2253
2254         * gdk/gdkinputcommon.h (gdk_input_device_new): Change
2255         3.3.1 bug workaround to number keys starting at 1.
2256
2257 Sat Jun 13 11:56:57 1998  Owen Taylor  <otaylor@gtk.org>
2258
2259         * docs/gtk_tut.sgml: Fixed urls for complete example
2260         source for scribble+widget-writing examples.
2261
2262 Sat Jun 13 11:48:26 1998  Owen Taylor  <otaylor@gtk.org>
2263
2264         * gdk/gdkpixmap.c (gdk_pixmap_extract_color): 
2265         Patch from Tom Bech <tomb@ii.uib.no>, to handle color
2266         specs of the form c #abcdef [ more keys ] properly.
2267
2268 Sat Jun 13 10:51:56 1998  Stefan Jeske  <stefan@gtk.org>
2269
2270         * gtkspinbutton.h gtkspinbutton.c testgtk.c 
2271         (gtk_spin_button_set_shadow_type):
2272         New API to set the shadow type of the arrow panel.
2273
2274 Fri Jun 12 21:20:42 1998  Owen Taylor  <otaylor@gtk.org>
2275
2276         * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
2277         code for drawing the child in two places at once. Unfortunately,
2278         not only does it not work anymore (because reparenting has
2279         been fixed), but it also triggers reparent/expose loops
2280         in some cases.
2281
2282         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
2283         an unecessary unrealize.
2284
2285 Fri Jun 12 21:18:56 1998  Owen Taylor  <otaylor@gtk.org>
2286
2287         * gdk/gdkwindow.c (gdk_window_reparent): Update the
2288           old and new parents' child window lists properly.
2289
2290 Fri Jun 12 09:24:47 1998  Tim Janik  <timj@gtk.org>
2291
2292         * gtk/gtkpacker.h:
2293         * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
2294         and GtkSideType, to be consistent with the rest of Gtk's enum
2295         definitions. wrapped the enum definitions with the G_ eunm wrappers.
2296         spelled out the GTK_ANCHOR_* enum values, since single letters don't
2297         work out corectly as nick-names (left the old values as aliases).
2298         some signdness corrections (border-width, spacing), could stand more.
2299
2300 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2301
2302         * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am: 
2303           Added gtkpacker
2304
2305         * examples/packer/pack.c, examples/packer/Makefile: Added
2306           gtkpacker example
2307
2308 Thu Jun 11 13:09:00 1998  Owen Taylor  <otaylor@gtk.org>
2309
2310         * gtk/gtktext.c (remove_cache_line): Fixed broken
2311         list-removal code.
2312
2313         * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
2314         Check bounds before deleting.
2315
2316 Wed Jun 10 23:21:33 1998  Owen Taylor  <otaylor@gtk.org>
2317
2318         * autogen.sh: Support ACLOCAL_FLAGS
2319
2320 Wed Jun 10 20:54:37 1998  Owen Taylor  <otaylor@gtk.org>
2321
2322         * gtk-config.in: Added missing quotes.
2323
2324 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
2325
2326         * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
2327
2328 1998-06-10  Raja R Harinath  <harinath@cs.umn.edu>
2329
2330         * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
2331         G_COMPILED_WITH_DEBUGGING.
2332
2333         * configure.in (fd_set): Explain check better.
2334
2335         * acinclude.m4: New file.  Contains `libtool.m4' from libtool-1.2,
2336         the version from which gtk+'s libtool forked.  Needed for people
2337         who use post-1.2 alphas of libtool.
2338
2339 Wed Jun 10 19:36:35 1998  Owen Taylor  <otaylor@gtk.org>
2340
2341         * glib/* Moved to glib module
2342
2343         * INSTALL Makefile.am acconfig.h autogen.sh configure.in
2344           gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
2345
2346           configuration changes for the above:
2347          
2348           - Use AM_PATH_GLIB by default to find glib; also accept
2349             a --with-glib option for using an uninstalled glib.
2350          
2351           - Put --enable-debug information into config.h so
2352             that we rebuild when it changes. (was in glibconfig.h)
2353
2354 Wed Jun 10 22:23:27 1998  Lars Hamann  <lars@gtk.org>
2355
2356         * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
2357
2358         * gtk/gtknotebook.h (struct _GtkNotebookClass):
2359         * gtk/gtknotebook.c (gtk_real_notebook_switch_page): 
2360         added missing argument (according to Joseph Coleman's bug report)
2361
2362         * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
2363         function to fix notebook focus handling
2364         
2365 Wed Jun 10 12:57:03 1998  Owen Taylor  <otaylor@gtk.org>
2366
2367         * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
2368           glib/gutils.c glib/testglib.c glib/gdataset.c
2369           gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
2370           gtk/gtktext.c gtk/gtkbindings.c:
2371
2372          renamed g_const_pointer => gconstpointer
2373
2374 Wed Jun 10 06:25:17 1998  Tim Janik  <timj@gtk.org>
2375
2376         * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
2377         invoked with (NULL, NULL); (this worked sometime ago).
2378
2379         * gtk/gtktypeutils.h: 
2380         * gtk/gtktypeutils.c: enum and flags type creation can now be done
2381         through gtk_type_register_enum() and gtk_type_register_flags(),
2382         which allow to specify the enum value arrays directly.
2383         the NULL terminated value arrays can be retrived through
2384         gtk_type_enum_get_values() and gtk_type_flags_get_values();
2385         (gtk_type_children_types): new function to query derived types.
2386
2387 1998-06-09  Raja R Harinath  <harinath@cs.umn.edu>
2388
2389         * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
2390         environment to genmarshal.pl.
2391         (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
2392         rule), and removed it where not needed (in the dependencies).
2393
2394         * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
2395
2396 Tue Jun  9 18:44:57 1998  Owen Taylor  <otaylor@gtk.org>
2397
2398         * gtk/gtkobject.c: Removed g_object_pointer_hash, which
2399         was just g_direct_hash.
2400
2401 Mon May 25 19:54:20 1998  Owen Taylor  <otaylor@gtk.org>
2402
2403         * configure.in: x_libs=, not $x_libs=. Enough said.
2404           (Case only hit for --disable-xshm)
2405         
2406 Mon May 25 12:08:14 1998  Owen Taylor  <otaylor@gtk.org>
2407
2408         * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
2409           when testing for X libraries, don't replace them. Because
2410           the user might have specified the path to the X libraries
2411           themself before running configure.
2412
2413         * examples/**.c: Changed all gpointer * to gpointer
2414         
2415 1998-06-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2416
2417         * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
2418         fleur_cursor field.  Now the cursor is created/destroyed on demand
2419         by the routines that need it.
2420
2421         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): 
2422         (gtk_handle_box_motion): The fleur cursor is created and destroyed
2423         only when needed.
2424
2425 Tue Jun  9 09:57:09 1998  Tim Janik  <timj@gtk.org>
2426
2427         * gtk/gtktypeutils.h: 
2428         * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
2429         gtk_enum_set_values to gtk_type_enum_get_values and
2430         gtk_type_enum_set_values respectively, since they are actually type
2431         system features.
2432
2433         * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
2434         my last commit. ;)
2435
2436 Tue Jun  9 01:57:23 1998  Tim Janik  <timj@gtk.org>
2437
2438         * gtk/gtkselection.h: 
2439         * gtk/gtkselection.c: new functions gtk_selection_data_copy and
2440         gtk_selection_data_free.
2441
2442         * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
2443         for "selection_received", which was completely bogus.
2444         * other fixups to gtk_signal_new() calls all over the place.
2445
2446         * gtk/gtktypebuiltins.h: types as variables (formerly macros).
2447         * gtk/gtktypebuiltins_vars.c: type variable implementations.
2448         * gtk/gtktypebuiltins_ids.c: array entries for builtin type
2449         declarations.
2450         * gtk/gtktypebuiltins_evals.c: enum value arrays.
2451         * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
2452         gtk.defs.
2453         * gtk/gtk.defs: generated file with scheme syntax for type definitions
2454         of gtk and gdk structures and enums.
2455         * gtk/gtktypeutils.h: 
2456         * gtk/gtktypeutils.c: reworked type ids, so they are variables not
2457         macros anymore (this fixes binary incompatibility with new enum
2458         definitions).
2459
2460         * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
2461         key bindings for this widget.
2462         * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
2463         handler.
2464
2465         * gtk/gtkobject.h:
2466         * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
2467         again. new functions gtk_object_class_user_signal_new () and
2468         gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
2469         flag on the signal creation.
2470
2471 Mon Jun  8 20:52:21 1998  Tim Janik  <timj@gtk.org>
2472
2473         * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
2474
2475 Mon Jun  8 02:52:37 1998  Tim Janik  <timj@gtk.org>
2476
2477         * gdk/gdkprivate.h: 
2478         * gdk/gdktypes.h: 
2479         * gtk/gtkprivate.h: 
2480         * gtk/gtkwidget.h: 
2481         * gtk/gtkobject.h: wrapped enum definitions with glib macros.
2482
2483         * reworked enum value array generation code. gtk.defs is a generated
2484         file now.
2485
2486 Sun Jun  7 14:34:31 1998  Tim Janik  <timj@gtk.org>
2487
2488         * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
2489         check menu items in the compatibility code (this required me to remove
2490         the "<check>" part from the menu item name, grrr).
2491
2492 1998-06-07  Marius Vollmer  <mvo@zagadka.ping.de>
2493
2494         * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
2495         * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
2496         
2497 Sun Jun  7 10:53:02 1998  Tim Janik  <timj@gtk.org>
2498
2499         * gtk/gtkitemfactory.h: 
2500         * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
2501         additions to the dumping code to feature GtkPatternSpec.
2502         even found a bug to fix in the original code ;)
2503         
2504 Sun Jun  7 09:36:04 1998  Tim Janik  <timj@gtk.org>
2505
2506         * gtk/gtkitemfactory.c: support different types of callbacks, to
2507         maintain existing code.
2508
2509 Sat Jun  6 06:01:24 1998  Tim Janik  <timj@gtk.org>
2510
2511         * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
2512
2513         * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
2514         this should eventually be done by gentypeinfo.el somewhen.
2515         * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
2516
2517         * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
2518         enum values of an enum type.
2519
2520         * gtk/gtk.defs:
2521         * gtk/gtkcurve.h: 
2522         * gtk/gtkobject.h: 
2523         * gtk/gtkprivate.h: 
2524         * gtk/gtkwidget.h:
2525         * gtk/gtkenums.h: 
2526         brought enum/flags definitions in sync, added a few more enum
2527         definitions for bindings and pattern matching.
2528
2529         * some more macro and GtkType fixups in various places.
2530
2531         * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
2532         as a key-release modifier for the binding system.
2533
2534 Fri Jun  5 06:06:06 1998  Tim Janik  <timj@gtk.org>
2535
2536         * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
2537         was a stale list pointer that is already present in GtkMenuShell.
2538
2539         * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
2540         GtkMenuShell::selection_done which is emitted after the menu shell
2541         poped down again and all possible menu items have been activated.
2542
2543 Thu Jun  4 02:20:42 1998  Tim Janik  <timj@gtk.org>
2544
2545         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
2546         before activation of the menuitem, so the menu is actually taken off the
2547         screen prior to any menu item activation.
2548
2549         * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
2550         for NULL nodes.
2551
2552         * gtk/gtkwidget.h:
2553         * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
2554         the emission of the "add-accelerator" signal on a widget. this is
2555         usefull to prevent accelerator installation on certain widgets.
2556
2557         * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
2558         labels left justified, by setting their alignment. stop accelerator
2559         installation for the menu items, since we use dynamic menus.
2560
2561 Wed Jun  3 06:41:22 1998  Tim Janik  <timj@gtk.org>
2562
2563         * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
2564         should *really* use GtkItemFactory. this is only for preserving source
2565         compatibility where possible, use of GtkMenuFactory is deprecated as of
2566         now.
2567
2568         * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
2569         to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
2570         missed this possibility when i added gtk_object_class_add_user_signal
2571         in late january.
2572
2573         * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
2574
2575 Sun May 31 07:31:09 1998  Tim Janik  <timj@gtk.org>
2576
2577         * gtk/gtkaccelgroup.h: 
2578         * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
2579
2580         * gtk/gtkaccellabel.h: 
2581         * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
2582         display of the accelerators associated with a certain widget.
2583
2584         * gtk/gtkitemfactory.h: 
2585         * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
2586         parsing and accelerator handling.
2587
2588         * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
2589         positioning a menu.
2590         (gtk_menu_map): removed the allocation code.
2591         (gtk_menu_size_allocate): care for redrawing of children and resize
2592         our widget->window correctly.
2593         (gtk_menu_key_press): feature the new accelerator groups.
2594
2595         * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
2596         submenu if neccessary.
2597
2598         * gtk/gtkmenuitem.c:
2599         * gtk/gtkcheckmenuitem.c:
2600         * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
2601         function variants.
2602
2603         * gdk/gdk.c:
2604         (gdk_keyval_from_name): 
2605         (gdk_keyval_name): new functions for keyval<->key-name associations.
2606         (gdk_keyval_to_upper): 
2607         (gdk_keyval_to_lower): 
2608         (gdk_keyval_is_upper): 
2609         (gdk_keyval_is_lower): new functions to check/translate keyvalues with
2610         regards to their cases.
2611
2612 Wed May 27 00:48:10 1998  Tim Janik  <timj@gtk.org>
2613
2614         * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
2615         widget's class path.
2616         (gtk_widget_path): new function to calculate a widget's name path.
2617
2618         * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
2619         pattern matching, features reversed pattern matches.
2620
2621 Thu Jun  4 12:12:11 BST 1998  Tony Gale  <gale@gtk.org>
2622
2623         * examples/extract.sh, examples/extract.awk:
2624           New files to automagically extract code examples from the
2625           tutorial.
2626
2627 Tue Jun  2 20:04:45 1998  Lars Hamann  <lars@gtk.org>
2628
2629         * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
2630         * gtk/gtkcontainer.c (gtk_container_focus_move):
2631         reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
2632
2633 Tue Jun  2 13:04:06 BST 1998  Tony Gale  <gale@gtk.org>
2634
2635         * docs/gtk_tut.sgml: minor changes to support auto
2636           extraction of example code
2637
2638 Mon Jun  1 12:47:56 BST 1998  Tony Gale  <gale@gtk.org>
2639
2640         * docs/gtk_tut_it.sgml: Update of Italian Tutorial
2641           to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
2642
2643 Fri May 29 13:53:57 BST 1998  Tony Gale  <gale@gtk.org>
2644
2645         * docs/gtk_tut.sgml:
2646           - new section on Events
2647           - change all delete_event callbacks to include
2648             a GdkEvent parameter
2649           - clean up the formatting
2650
2651         * examples - helloworld.c, helloworld2.c, notebook.c,
2652           packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
2653           rulers.c, table.c, wheelbarrow.c: change all delete_event
2654            callbacks to include a GdkEvent parameter.
2655
2656 1998-05-26  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2657
2658         * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
2659         field of crossing events.
2660         (struct _GdkEventCrossing): Added the following fields: time, x,
2661         y, x_root, y_root, mode, focus, state.
2662
2663         * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
2664         crossing event structure.
2665
2666         * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
2667         changes to the crossing event structure.
2668
2669 Tue May 26 15:51:28 1998  Radek Doulik  <gis@academy.cas.cz>
2670
2671         * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
2672
2673 Sun May 24 12:11:38 BST 1998  Tony Gale  <gale@gtk.org>
2674
2675         * docs/gtk_tut.sgml:
2676            - GtkTooltips, update to current API
2677            - change all 'gpointer *data' to 'gpointer data'
2678            - other minor changes
2679
2680 Sat May 23 21:54:05 1998  Owen Taylor  <otaylor@gtk.org>
2681
2682         * configure.in (LDFLAGS): Bomb out with a moderately
2683           helpful message if detection of X libraries fails.
2684
2685 Sat May 23 18:57:06 1998  Owen Taylor  <otaylor@gtk.org>
2686
2687   [ Combination of:
2688      gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
2689      gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
2690
2691         * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
2692           gtk/gtksignal.c gtk/gtktext.c: 
2693
2694           Fixups for warnings from adding const to type of GHashFunc,
2695           GCompareFunc
2696         
2697         * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
2698           ansi-warnings fixups.
2699
2700 Sat May 23 17:48:58 1998  Owen Taylor  <otaylor@gtk.org>
2701
2702         * gtk/gtkeventbox.c (gtk_event_box_size_allocate): 
2703         Locate child at (border_width,border_width), not
2704         (2*border_width,2*border_width). [ The border is _outside_
2705         widget->window ]
2706         
2707         * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
2708           functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
2709
2710 1998-05-22  Miguel de Icaza  <miguel@nuclecu.unam.mx>
2711
2712         * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
2713         used in gnome-libs
2714
2715 1998-05-22    <sopwith@redhat.com>
2716
2717         * gtk/gtkeventbox.c: Pass size_allocate on to the child
2718         regardless of whether it is visible or not. Also
2719         locate child at (border_width,border_width), not (0,0)
2720
2721 Fri May 22 03:02:40 1998  Owen Taylor  <otaylor@gtk.org>
2722
2723         * gtk/gtkhandlebox.c: Added style_set handler.
2724
2725 Fri May 22 02:55:57 1998  Owen Taylor  <otaylor@gtk.org>
2726  [ From: Chris Lahey  <clahey@umich.edu> ]
2727         
2728         * gtk/gtkeditable.c, gtk/gtkeditable.h,
2729           gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
2730           and set_position functions to get and set the cursor position.
2731
2732         * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
2733           signal status. Make GtkText do user-controlled insertion
2734           and deletion through the Editable widget so that these
2735           signals are properly emitted.
2736
2737         * gtk/gtkentry.c: Changed gtk_entry_set_visibility to 
2738           display asterisks instead of empty space when visible = FALSE)
2739
2740 Fri May 22 08:51:10 CEST 1998  Paolo Molaro <lupus@debian.org>
2741
2742         * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
2743         signal.
2744
2745 1998-05-21    <sopwith@redhat.com>
2746
2747         * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
2748         custom routine for loading images specified in gtkrc's.
2749
2750 Tue May 19 23:41:04 1998  Owen Taylor  <otaylor@gtk.org>
2751
2752         * configure.in: Use pthread_attr_init() as a test function,
2753         since most of the rest of -lpthread is macros on DU4.
2754
2755 Tue, 19 May 1998 09:03:03 +0200  Paolo Molaro <lupus@debian.org>
2756
2757         * gtk/gtkcombo.c: implemented completion in the entry.
2758
2759 1998-05-18    <sopwith@moebuis.labs.redhat.com>
2760
2761         * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
2762
2763 Mon May 18 04:01:41 1998  Tim Janik  <timj@gtk.org>
2764
2765         * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
2766         "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
2767         to be of runtype GTK_RUN_LAST.
2768
2769         * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
2770         "need-resize".
2771
2772         * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
2773         "widget-selected".
2774
2775 Sat May 16 09:04:32 1998  Tim Janik  <timj@gtk.org>
2776
2777         * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
2778         text retrived from GtkEntry. only intercept the Tab key if there
2779         was some text to complete.
2780
2781 Fri May 15 21:16:54 1998  Owen Taylor  <otaylor@gtk.org>
2782
2783         Basic thread-awareness:
2784
2785         * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
2786
2787         * gdk/Makefile.am gdk/gdkthreads.c: Added new functions 
2788         gdk_threads_[init/enter/leave] for applications, plus
2789         gdk_threads_wake to wake the mainloop thread out of
2790         the select().
2791
2792         * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
2793
2794 Fri May 15 12:08:48 1998  Owen Taylor  <otaylor@gtk.org>
2795
2796         * gtk/testgtk.c (list_clear): Account for the fact
2797         that gtk_list_clear_items is not inclusive. (Clears
2798         [start, end))
2799
2800 Fri May 15 12:31:27 1998  rodo  <doulik@karlin.mff.cuni.cz>
2801
2802         * gdk/gdk.c: include gdkkeysyms.h always
2803         
2804
2805 Fri May 15 09:44:10 1998  Tim Janik  <timj@gtk.org>
2806
2807         * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
2808         the visibility_notify_event method and changed method order.
2809
2810 1998-05-14    <sopwith@moebuis.labs.redhat.com>
2811
2812         * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
2813
2814 Thu May 14 03:04:43 1998  Tim Janik  <timj@gtk.org>
2815
2816         * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
2817         from Olli Helenius <ollhel@batman.jytol.fi>.
2818
2819         * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
2820         freeing types.
2821         (gtk_type_set_chunk_alloc): new function to allow allocation of new
2822         types from a mem_chunk of certain size (n_chunks==0 indicates allocation
2823         thorugh g_malloc).
2824
2825         * gtk/gtkobject.c (gtk_object_finalize): free an object through
2826         gtk_type_free().
2827
2828         * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
2829         GtkButtons to 16.
2830         * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
2831         * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
2832
2833 Wed May 13 00:53:52 1998  Owen Taylor  <otaylor@gtk.org>
2834
2835         * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more 
2836           GPOINTER_TO_UINT fixes.
2837
2838         * gtk/gtksignal.c: Include <string.h> for memset.
2839
2840 Tue May 12 23:10:53 1998  Owen Taylor  <otaylor@gtk.org>
2841         (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
2842
2843         * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h: 
2844         Cleanups, comments and the ability to have rulers with 
2845         a reversed direction.
2846
2847 Tue May 12 19:37:55 1998  Owen Taylor  <otaylor@gtk.org>
2848
2849         * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
2850         that Sopwith missed when changing stat => lstat.
2851
2852 Tue May 12 19:19:29 1998  Owen Taylor  <otaylor@gtk.org>
2853
2854         * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
2855           gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
2856         GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
2857
2858         * gdk/gdk.c: Print sizeof() results
2859         as g_print("%ld", (glong)sizeof(foo)), to deal with
2860         sizeof() being long on Alpha's.
2861
2862         * gtk/testgtk.c: include <string.h> for strlen
2863
2864 Tue May 12 16:56:35 1998  Owen Taylor  <otaylor@gtk.org>
2865         (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
2866         
2867         * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
2868         Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
2869
2870         * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
2871
2872 Tue May 12 15:16:10 1998  Owen Taylor  <otaylor@gtk.org>
2873         (From: Christopher James Lahey <clahey@umich.edu>)
2874         
2875         * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
2876           gtk/testgtk.c:
2877
2878         Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
2879         (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
2880         state. Added gtk_toolbar_{set,get}_button_relief, which set/get
2881         the default relief for the toolbars buttons. Added an
2882         toggle for the toolbar test in testgtk.c.
2883
2884 Tue May 12 00:24:59 1998  Owen Taylor  <otaylor@gtk.org>
2885
2886         * docs/gtk-config.1: Rewritten and hopefully improved.
2887
2888 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
2889
2890         * docs/Makefile.am
2891         * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
2892
2893 1998-05-11  Federico Mena Quintero  <federico@nuclecu.unam.mx>
2894
2895         * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
2896         GtkPreview's visual and colormap, otherwise things can BadMatch.
2897
2898         * gtk/testgtk.c (create_color_preview): 
2899         (create_gray_preview): Removed pushing/popping of visual/colormap
2900         now that GtkPreview does things correctly.
2901
2902         * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame): 
2903         (gtk_color_selection_draw_wheel): Pick the style from the correct
2904         place (the colorsel->wheel_area widget) so that the GCs will match
2905         with where we are going to paint to.
2906
2907         * gtk/testgtk.c (create_color_selection): Removed pushing/popping
2908         of visual/colormap now that GtkColorSelection does things the
2909         right way.
2910
2911 Mon May 11 21:04:51 1998  Owen Taylor  <otaylor@gtk.org>
2912
2913         * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
2914         previously unused window->need_resize flag to mark if a window's
2915         descendents changed size while the window was not visible. In this
2916         case, when the window becomes visible, we reallocate everything,
2917         since we didn't keep track of what actually changed.
2918
2919         (Fixes bug where changing the popdown strings of a
2920         combo to something of the same length caused them to
2921         blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
2922
2923 Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>
2924
2925         [security audit by Alan Cox]
2926
2927         * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
2928         exceed maximum assumed size.
2929
2930         * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
2931         not exceed maximum assumed size.
2932         (gtk_menu_factory_remove): likewise.
2933         (gtk_menu_factory_find_recurse): likewise.
2934
2935 Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>
2936
2937         * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
2938         GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
2939         redrawn if that is still neccessary. don't allow queueing of already
2940         destructed objects.
2941         (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
2942         widgets which are in the queue can be destroyed safely, handle
2943         requeueing properly.
2944         (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
2945         widgets which are in the queue can be destroyed/unrealized safely.
2946
2947 Mon May 11 17:54:44 BST 1998 Tony Gale  <gale@gtk.org>
2948
2949         * gtkfaq.sgml: add question on multi-threading,
2950           minor URL cleanups.
2951
2952 Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>
2953
2954         * configure.in (cflags_set): preserve automake CFLAGS.
2955
2956         * Makefile.am: fully rename the created libraries to libgtk-1.1.la
2957         and libgdk-1.1.la. this means we need to change certain portions of
2958         the Makefile.am on major/minor version bumps.
2959
2960         * ltmain.sh: the -release option is not required anymore.
2961         
2962         * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
2963         of the first argument to be of type GtkObject. unconditionally compile
2964         this function. removed __GNUC__ dependancy of the gtk_object_ref and
2965         gtk_object_unref macro wrappers for this function.
2966
2967 Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>
2968
2969         * gtk/gtkobject.h:
2970         * gtk/gtkobject.c:
2971         (gtk_object_data_try_key):
2972         (gtk_object_data_force_id): these are now macros substituting the old
2973         functions. we just use the corresponding g_dataset_* functions for
2974         key->id associations. (this is to assure unique key<->id associations).
2975
2976 1998-05-10  Stefan Jeske  <stefan@gtk.org>
2977
2978         * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
2979         to gboolean.
2980
2981         * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
2982
2983 Sat May  9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
2984
2985         * configure.in (LIBS): Try to figure out if this
2986         is Digital Unix and we need -std1 to get the
2987         right prototypes.
2988
2989 Sat May  9 16:30:33 BST 1998 Tony Gale  <gale@gtk.org>
2990
2991         * docs/gtk_tut_it.sgml: update of Italian tutorial
2992           translation from Daniele Canazza <dcanazz@tin.it>
2993
2994 Sat May  9 02:34:41 1998  Tim Janik  <timj@gtk.org>
2995
2996         * gtk/gtkfeatures.h.in: new file used as template for
2997         * gtk/gtkfeatures.h: new file to define macros indicating newly
2998         introduced features, such as GTK_HAVE_SIGNAL_INIT.
2999
3000         * gtk/gtksignal.c:
3001         (gtk_signal_emitv_by_name):
3002         (gtk_signal_emitv):
3003         new functions to emit signals with an already provided parameter set.
3004         (provided by Kenneth Albanowski <kjahds@kjahds.com>).
3005         (gtk_signal_real_emit): prototype changes, so this functions always
3006         gets its parameters and signal structure as arguments.
3007         (gtk_signal_emit): provide the signal structure and parameter list for
3008         gtk_signal_real_emit.
3009         (gtk_signal_emit_by_name): likewise.
3010
3011 Sat May  9 00:03:12 1998  Tim Janik  <timj@gtk.org>
3012
3013         * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
3014         signal connections through unsetting GTK_CONNECTED.
3015         (gtk_signal_handler_insert): reflect the presence of signal connections
3016         through setting GTK_CONNECTED.
3017         (gtk_signal_real_emit): only check for handler emissions if the object
3018         has the GTK_CONNECTED flag set.
3019         (gtk_signal_handler_pending): don't check for pending handlers if the
3020         GTK_CONNECTED flag is not set for this object.
3021
3022         * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
3023         a GtkObject has signal handler connections.
3024
3025         * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
3026         set for this object call gtk_signal_handlers_destroy().
3027         
3028         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
3029         multiple processing of macro args.
3030
3031         * gtk/gtktypeutils.c:
3032         * gtk/gtkobject.c:
3033         * gtk/gtkwidget.c:
3034         * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
3035
3036 Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>
3037
3038         * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
3039         draw-queue when we are done. 
3040
3041         (gtk_widget_queue_draw/_queu_resize): Always return
3042         FALSE and avoid having two idles at the same time.
3043         
3044 Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>
3045
3046         * gtk/gtktext.c: Various fixes to make sure cache
3047         lines are freed if line_start_cache doesn't point to the
3048         beginning of the cache.
3049
3050 Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>
3051
3052         * style_set improvements for GtkText and GtkEntry
3053
3054 Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>
3055
3056         * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
3057         been initialized.
3058
3059 Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>
3060
3061         * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
3062         data chunks through a global object data structure list. unlink
3063         object data before invoking its destroy function.
3064         (gtk_object_finalize): slight modification to allow usage of object
3065         data during object finalization.
3066
3067 Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>
3068
3069         * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
3070         signal names, e.g. "signal-name" is now an alias for "signal_name".
3071         (gtk_signal_handler_new): allocate handlers through a global handler
3072         structure list, that's faster than memchunks.
3073         (gtk_emission_new): allocate emissions through a global emission
3074         structure list, that's faster than memchunks.
3075
3076 Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>
3077
3078         * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
3079
3080         * ltmain.sh: added a new commandline flag -postfix similar to -release,
3081         but will immediately change the library name.
3082
3083         * gdk/Makefile.am:
3084         * gtk/Makefile.am: specify -postfix and -version-info
3085
3086         * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
3087         GTK_BINARY_AGE. calculate LT_* variables for libtool.
3088
3089 1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3090
3091         * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
3092         background (fg_set -> bg_set confusion).
3093
3094 1998-05-06  Stefan Jeske  <stefan@gtk.org>
3095
3096         * gtk/testgtk.c (unselect_all): Removed code that caused an
3097         endless loop.
3098
3099 Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>
3100
3101         * gtk/gtksignal.c: reimplemented the signal storage system to use a
3102         linear array rather than a hash table.
3103         be carefull *not* to keep any GtkSignal pointers across invokations
3104         of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
3105         general code cleanups, made all allocations through memchunks.
3106         (gtk_signal_lookup): we now do the lookup of signals through a key_id
3107         for the signal names to avoid multiple hashing of the signal name on
3108         lookups for the several hirarchy levels of an object.
3109
3110 Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>
3111
3112         * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
3113         to speed things up and remove code duplication.
3114
3115         Reintegrated buffer overflow patches, and added
3116         some extra paranoia.
3117         
3118 Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>
3119
3120         * gdk/gdk.c (gdk_event_translate): A guint * was
3121         being passed where X expected a Keysym *, and
3122         keysyms are long's on Alpha Linux. This was causing
3123         segfaults in Xlib, apparently because of alignment.
3124         (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
3125         
3126 Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>
3127
3128         * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
3129         set GDK_EXPOSURE_MASK for DrawingAreas
3130
3131 Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>
3132
3133         * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
3134         (superceded by RC file reparsing capabilities)
3135
3136         * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
3137         events. (Shouldn't be sent to the InputOnly leader, which
3138         it is now by gdk_event_send_clientmessage_toall
3139
3140         * gtk/testgtk.c: Added extra button to rcfiles test
3141         to send out _GDK_READ_RCFILES events.
3142         
3143 Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>
3144
3145         * gtk/gtkselection.c (gtk_selection_clear): Fixed
3146         reversed conditionals that caused segfault on some
3147         platforms.
3148
3149 Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>
3150
3151         * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
3152         cast to GTK_OBJECT for gtk_object_ref.
3153
3154 Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>
3155
3156         * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
3157         checking for signal initialization in gtksignal.c.
3158
3159         * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
3160         a long debugging period ;)
3161
3162 1998-05-05  Stefan Jeske  <stefan@gtk.org>
3163
3164         * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
3165         New function to wrap XSetDashes; modified gtkctree.c to use it.
3166
3167 1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3168
3169         * configure.in: Added $x_libs in the other_libraries field in the
3170         check for XShapeCombineMask.
3171
3172 Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>
3173
3174         * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
3175         gtk_type_is_a().
3176         * gtk/gtktypeutils.c: reimplemented the type storage system to use a
3177         linear array rather than a hash table. it actually speeded up testgtk
3178         for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
3179         pointers across invokations of gtk_type_node_next_and_invalidate() and
3180         therefore gtk_type_unique()!
3181
3182         * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
3183         inheritance of a class pointer.
3184         (GTK_OBJECT): modifications for speedups.
3185         (GTK_IS_OBJECT): likewise.
3186         (GTK_OBJECT_CLASS): likewise.
3187         (suggested by owen).
3188
3189         * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
3190
3191         * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
3192
3193         * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
3194         since its derivation changed 4 month ago ;(. showed up with the unique
3195         type name checking code in gtk_type_unique().
3196
3197         * random guint->GtkType and macro fixups.
3198
3199 Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>
3200
3201         * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
3202         Configure events that would result in a negative
3203         size.
3204
3205 Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>
3206
3207         * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
3208         "glibconfig.h" and another about writing another IRC
3209         client.
3210
3211 Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>
3212
3213         * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
3214         parameters to log are doubles. Digital Unix apparently
3215         is missing the argument in its prototype.
3216
3217 Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>
3218
3219         * gtk/gtklabel.c (gtk_label_state_changed): Don't
3220         force a clear until the widget is actually on
3221         screen.
3222
3223 Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>
3224
3225         * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
3226         to make this consistent with the gtk-1-0 tree.
3227
3228 Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>
3229
3230         * configure.in acheader.h gdk/gdkwindow.c 
3231         Check for Shape extension both on the client and server
3232         side. (And, more importantly, check for the shape extension
3233         so we may include -lXext even when compiling with --disable-xshm)
3234
3235         Don't set override_redirect on all shaped windows. It isn't
3236         necessary.
3237
3238         * gdk/gdkwindow.c: Set ->colormap to NULL for root 
3239         and foreign windows. Use this to check if we
3240         need to get the colormap from X.
3241
3242 Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>
3243
3244         * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
3245         between the default and the button always in GTK_STATE_NORMAL.
3246
3247         * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
3248         callback.
3249
3250 Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>
3251
3252         * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
3253           Fix a buffer overflow on pixmaps that claim to have
3254           more than 31 characters per pixel.
3255
3256           (gdk_pixmap_read_string): Don't wrap around strings longer
3257           than half of address space ;-)
3258
3259         * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
3260         that were used for printing integers.
3261
3262         * */* (almost):
3263
3264         Style: All 
3265           int foo () { ... }
3266         changed to
3267           int foo (void) { ... }
3268
3269         Even where there were proper prototypes elsewhere.
3270
3271         * gdk/gxid.c (handle_claim_device): Some extra checks.
3272         It isn't safe against being fed bad X id's, but at
3273         least it should be safe against deleting all your
3274         files.
3275
3276 Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>
3277
3278         * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
3279         to set the adjustments value when there is no current emission.
3280         [ Removed by mutual agreement owt 5/3/1998 ]
3281
3282         * gtk/gtksignal.c: added new functions to retrive the number of
3283         existing emissions for a certain signal.
3284         (gtk_signal_n_emissions): new function.
3285         (gtk_signal_n_emissions_by_name): new function.
3286
3287 Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>
3288
3289         * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
3290         set the current focus_child of a container, does proper referencing and
3291         adjusts the vadjustment/hadjustment associated with the focus widget.
3292
3293         * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
3294         containers via gtk_container_set_focus_child.
3295
3296         * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
3297         where appropriate.
3298
3299         * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
3300         child since not every child removal goes through this function (this
3301         showed up after gtk_container_set_focus_child() started to reference the
3302         focus_child of a container).
3303
3304         * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
3305         of a container from gtk_container_remove into this place.
3306
3307 Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>
3308
3309         * gtk/gtksignal.c: added new functions to operate on intermediate
3310         function pointers. implemented incremental blocking.
3311         (gtk_signal_disconnect_by_func): new function.
3312         (gtk_signal_handler_block_by_func): new function.
3313         (gtk_signal_handler_unblock_by_func): new function
3314
3315 Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>
3316
3317         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
3318         Always show the scrollbars when the policy is
3319         GTK_POLICY_ALWAYS...
3320
3321 Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>
3322
3323         * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
3324         "value_changed" if we really passed a new value.
3325         (gtk_adjustment_changed): new function to emit the "changed" signal.
3326         (gtk_adjustment_set_value): new function to emit the "value_changed"
3327         signal.
3328
3329 Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>
3330
3331         * gtk/gtkcombo.c: Further changes to the way the window
3332         is popped up so that it will be compatible with 
3333         auto-scrolling in the future.
3334
3335 Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>
3336
3337         * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
3338         the combo-list is empty since that will cause the combo to operate
3339         on a non existing GtkList window.
3340         (gtk_combo_get_pos): provide the combo list with a usfull default
3341         height if empty.
3342         (gtk_combo_popup_button_press): grab the focus.
3343         (gtk_combo_activate): grab the focus.
3344
3345 Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>
3346
3347         * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
3348         function to reset the RC styles for a heirarchy
3349
3350         Clear the window background if necessary in
3351         gtk_window_style_set.
3352
3353         * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
3354         rereads all previously read RC files.
3355
3356         * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
3357         (Should it just be called gdk_get_toplevels?)
3358
3359         * gtk/testgtk.c: New test to reload RC files.
3360
3361 Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>
3362
3363         * gtk/gtkclist.h:
3364         * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
3365         clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
3366         GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
3367         the GTK_ prefix (this solution involved less changes in the
3368         gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
3369         the mem_chunk==NULL test in gtk_clist_construct. merged in changes
3370         from lars & stefan to support the derivation of GtkCtree.
3371
3372         * gtkctree.h:
3373         * gtkctree.c:
3374         initial import of a tree widget derived from gtkclist, courtesy
3375         of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
3376         it just damn rocks!
3377
3378 Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>
3379
3380         * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
3381         for us.
3382         (gtk_list_insert_items):
3383         (gtk_list_remove_items_internal): 
3384         (gtk_list_clear_items): 
3385         remove a possible pointer grab, we might get thrown into a loop
3386         otherwise.
3387         (gtk_list_button_press): grab the pointer *before* selecting the child,
3388         because selection of items may cause the lists children to change,
3389         resulting in a grab release.
3390         (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
3391         children.
3392         (gtk_list_shutdown): remove all children from the list.
3393         (gtk_real_list_unselect_child): 
3394         (gtk_real_list_select_child): *always* put our internal structures into
3395         sane state *before* signal emisions (i.e. list->selection updates prior
3396         to gtk_list_item_[de]select() calls).
3397
3398         * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
3399         focused child walks out of the window.
3400         removed CAN_FOCUS for the combo arrow's button since it doesn't react
3401         to keyboard events ("clicked" connection is missing).
3402
3403 Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>
3404
3405         * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
3406         getting colormap for FOREIGN windows to go along with
3407         Raster's fix for visuals.
3408
3409 Merges from gtk-1-0
3410 ===================
3411         
3412 Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>
3413
3414         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
3415         Check to catch the case when the viewport fits in either
3416         direction or both, instead of flip-flopping infinitely.
3417
3418         Only show/hide the scrollbars once at the end.
3419
3420 Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>
3421
3422         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
3423         Include the scrollbars in the foreach call.
3424         (gtk-fortier-980405-0.patch; 
3425          Patrice Fortier <Patrice.Fortier@aquarel.fr>). 
3426
3427         The notebook widget
3428         really should also include its tabs, but that might cause
3429         problems for programs if they
3430
3431 Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>
3432
3433         * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
3434         resize if the size actually changed. 
3435         (gtk-johannes-980414-0.patch ;  
3436          johannes@nada.kth.se (Johannes Keukelaar) )
3437
3438 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
3439
3440         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
3441           ltmain.sh ltconfig config.sub config.guess:
3442
3443         Reverted back to libtool-1.2 (plus minor patches) so as not to
3444         force the issue for everyone else.
3445
3446 Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>
3447
3448         * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
3449         Updated to libtool 1.2a.
3450
3451         * gtk/gtkclist.c: Draw the in-between lines with style->base
3452         instead of style->white.
3453         
3454 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
3455
3456         * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
3457         Cache the colormap and children of a window locally
3458         instead of fetching them from the server when needed.
3459         Huge performance difference for creating/destroying
3460         windows.
3461
3462         * gtk/gtkstyle.c: Find the depth from the cached
3463         visual, instead of asking the server.
3464
3465         * gtk.m4: Distribute the new version which tries to
3466         figure out what went wrong and give helpful error
3467         messages.
3468
3469         * ltmain.sh ltconfig config.sub config.sh: 
3470         Updated to libtool 1.2a
3471
3472         * gtk/gtktext.c: Fixed a bug where the drawn level
3473         was being messed up when the text was scrolled
3474         during a deletion.
3475         
3476 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
3477
3478         * gtk/gtkfilesel.c: don't die when naughty people remove parts of
3479         the filesystem under you (fix from Josh)
3480
3481 Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>
3482
3483         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
3484         if the viewport already exists before iterating over it, maybe we
3485         haven't been constructed yet.
3486
3487 Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>
3488
3489         * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
3490         the GtkBin widget already has a child.
3491
3492         * gtk/gtkbox.c (gtk_box_pack_{start|end}):
3493         check that child->parent == NULL;
3494
3495 Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>
3496
3497         * gtk/gtkselection.c (gtk_selection_clear): Only return
3498         FALSE when the clear event is been rejected, not when
3499         widget has already lost the selection. (Which should
3500         only happen when we are setting the selection to another
3501         widget ourself.)
3502         
3503 Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>
3504
3505         * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
3506
3507         Removed the "check visibility after gtk_widget_unparent" bug 
3508         in hopefully the last three places.
3509
3510 Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>
3511
3512         * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
3513         rc-files.
3514
3515 Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>
3516
3517         * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
3518         for CAN_FOCUS widgets.
3519
3520         * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
3521         adjustments for the table.
3522         (create_list): feature automatic adjustment of the scrolled window to
3523         always contain the focused child.
3524         (create_main_window): keep the focussed button always inside of the
3525         scrolled windoww.
3526
3527         * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
3528         adjustments, to contain the allocation of the currently focused child.
3529         (gtk_container_set_focus_hadjustment): new functin to set the
3530         horizontal focus adjustment.
3531         (gtk_container_set_focus_vadjustment): new functin to set the vertical
3532         focus adjustment.
3533
3534         * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
3535         clamp the currents adjustment page into a specific range.
3536
3537         * random GtkType fixups for gtk_*_get_type() functions.
3538
3539 Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>
3540
3541         * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
3542         Account for the fact that gtk_tree_item_remove_subtree
3543         will be called recursively. 
3544
3545         Handle removing a collapsed subtree.
3546
3547         (From Andy Dustman <adustman@comstar.net>)
3548         
3549         * gtk/gtktree.c (gtk_tree_remove_items): Look for the
3550         root tree when removing items from a non-previously
3551         mapped tree.
3552
3553         * gtk/testgtk.c: Added a remove_subtree button.
3554         
3555 Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>
3556
3557         * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
3558         before object removing data. This change fixes a bug where 
3559         removing the last weak references would cause it to be 
3560         triggered.
3561
3562 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
3563
3564         * gdk/Makefile.am: Removed mostly useless dependency that
3565         was causing problems for SGI's make, when used with
3566         the 'make dist' form of GTK+. (Dependency caused dependencies
3567         to be redone when BUILT_SOURCES changed)
3568
3569 Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>
3570
3571         * gtk/gtkcombo.[ch]: Allow the user to use the popup list
3572         like a menu.
3573         
3574         * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
3575         to gtkitem.c so dragging can also work in lists.
3576
3577         * gtk/gtklist.[ch]: Track child enter events and use
3578         those to allow dragging the selection. 
3579
3580 Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>
3581
3582         * gtk/gtktext.c: Try enabling background pixmaps for editable text
3583         widgets.  There is a bit of flashing, but not too bad. If you
3584         don't want the flashing, you can always not set a background
3585         pixmap.
3586
3587 Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>
3588
3589         * gtk/gtktext.c: Fixed a bug where the drawn level
3590         was being messed up when the text was scrolled
3591         during a deletion.
3592         
3593 1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>
3594
3595         * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
3596         bug:  There is no need to set the ExposureMask in the XGrabPointer
3597         (this caused DnD programs to crash).
3598
3599 Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>
3600
3601         * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
3602         field to be of type guint.
3603         * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
3604         ref_count>0;
3605         (gtk_accelerator_table_install): keep a per object list of accelerator
3606         tables that refer to this object.
3607         (gtk_accelerator_table_remove): remove the accelerator table from the
3608         per object list.
3609         (gtk_accelerator_table_clean): warn if there are any object references
3610         left in an accelerator table upon destruction.
3611         (gtk_accelerator_tables_delete): new function to delete object
3612         references from the accelerator tables associated with this object.
3613
3614         * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
3615         GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
3616         of an accelerator can be prevented by gtk_signal_emit_stop().
3617         (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
3618         so there are no stale pointers in accelerator tables left.
3619
3620 1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>
3621
3622         * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
3623         visible before we unparent it.
3624
3625 Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>
3626
3627         * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
3628         running_timeouts list with the tmp_list link itself, not with a new
3629         GList structure pointing to our link. that would fill up memory and
3630         causes the GList.data fields of the running_timeouts list to point to
3631         GList structures and not GtkTimeoutFunction structures which is a
3632         *really* bad thing.
3633         (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
3634         the above entry ;).
3635
3636 Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>
3637
3638         * gtk/gtkradiomenuitem.h: 
3639         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
3640         ala gtk_radio_button_set_group.
3641         (gtk_radio_menu_item_init): assure that we always have at least a group
3642         that points to self.
3643
3644         * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
3645         added g_return_if_fail() statements.
3646         (gtk_radio_button_init): assure that we always have at least a group
3647         that points to self.
3648
3649 Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>
3650
3651         * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
3652
3653 Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>
3654
3655         * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
3656         (Damon Chaplin), which i got wrong when applying Damon's patch the last
3657         time.
3658
3659 Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>
3660
3661         * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
3662         that when we are running with a non-installed colormap,
3663         in 8-bit pseudo-color, we actually are using the system
3664         visual. (Fixes *Bad Match* errors on Digital Unix machines
3665         with multiple 8-bit pseudo-color visuals)
3666
3667 1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>
3668
3669         * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
3670         by whoever thought that randomly changing ints to unsigned int
3671         without reviewing the code was a good idea.  It is, btw not
3672         mentioned in the ChangeLog as usual, but I know it was not Elliot
3673         the culprit this time. 
3674
3675 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3676
3677         * Released GTK+ 1.0.0