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