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