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