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