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