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