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