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