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