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