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