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