1 Sun Nov 29 06:12:01 1998 Tim Janik <timj@gtk.org>
3 * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
4 check, people must use gtk_type_init();
7 * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
8 for internal use by containers, that want to assign specific composite
9 names to their composite children.
10 added gtk_widget_get_composite_name() which will return a newly
11 allocated string, containing the composite name of a widget. valid
12 composite names can only be retrived from widgets that have a parent
13 assigned and are flagged as GTK_COMPOSITE_CHILD.
16 * gtk/gtkcontainer.c: added a new function
17 gtk_container_child_default_composite_name() which will return a
18 newly allocated string, holding the composite name of a containers
19 child. a default implementation is provided which will compose the
20 composite name out of the widgets type and its sequential children
21 id. this implementation can be overidden through a new class function
24 Sat Nov 28 10:57:59 1998 Owen Taylor <otaylor@redhat.com>
26 * gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
27 expose_event handler - we had two expose_event
30 Sat Nov 28 03:13:42 1998 Tim Janik <timj@gtk.org>
32 * gtk/gtkscrolledwindow.h:
33 * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
34 it inherits from GtkBin now.
36 * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
38 (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
39 added check so a child gets only drawn if it's visible.
42 * gtk/gtkwidget.c: removed gtk_widget_draw_children().
45 * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
48 * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
49 added internal function gtk_widget_reset_shapes() from gtkstyle.c.
52 * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
53 argument, changed callers.
55 * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
56 it will issue a warning now.
58 * gtk/gtkcompat.h: new file to #define aliases for historic
61 * changed 8 function names for consistency and provided aliases to keep
62 source compatibility in gtkcompat.h:
63 (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
64 (gtk_container_set_border_width): renamed from gtk_container_border_width
65 (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
66 (gtk_packer_configure): renamed from gtk_packer_set_child_packing
67 (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
68 (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
69 (gtk_scale_get_value_width): renamed from gtk_scale_value_width
70 (gtk_window_set_position): renamed from gtk_window_position
72 * renamed a few recently added funtions for consistency:
73 (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
74 (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
75 (gtk_progress_configure): renamed from gtk_progress_reconfigure.
77 Fri Nov 27 18:57:20 PST 1998 Manish Singh <yosh@gimp.org>
79 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
80 check for existing viewport first, and don't add one if there
83 Sat Nov 28 00:06:49 1998 Tim Janik <timj@gtk.org>
86 * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
87 gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
88 and gtk_widget_unlock_accelerators.
91 * gtk/gtklayout.c: implemented incremental freezing facility.
94 * gtk/gtktext.c: implemented incremental freezing facility.
97 * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
101 deprecated gtk_entry_adjust_scroll().
103 * random GtkType, macro and indentation fixes.
105 Fri Nov 27 22:50:15 1998 Tim Janik <timj@gtk.org>
108 * gtk/gtkclist.c: implemented incremental freezing facility, added
109 a new class member (*refresh)() which takes over the thaw
110 functionality. the clist FROZEN flag got removed on the way.
111 * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
112 and incremental freezing.
114 * gtk/gtkcalendar.c: implemented incremental freezing facility.
116 Fri Nov 27 11:41:27 1998 Raph Levien <raph@gimp.org>
118 * gdk/gdkinputcommon.h (gdk_input_common_init): Fixed it so that
119 it still includes the core pointer in gdk_input_devices even
120 if the XInput extension is not present in the X server.
122 Fri Nov 27 12:17:15 1998 Owen Taylor <otaylor@redhat.com>
124 * gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
125 get the source widget of a drag.
127 * gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
128 to restrict certain targets to the same widget or to
129 the same application.
131 * gtk/testdnd.c: Test gtk_drag_get_source_widget().
133 Thu Nov 26 19:11:46 1998 Lars Hamann <lars@gtk.org>
135 * gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
136 * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
137 instead of GTK_TYPE_POINTER in signal definitions.
138 (patch from James Henstridge <james@daa.com.au>)
140 Thu Nov 26 18:48:44 1998 Lars Hamann <lars@gtk.org>
142 * gtk/gtkclist.c (set_cell_contents)
143 * gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
144 if auto.resize == TRUE
146 * gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
147 don't draw tab, if show_tabs == FALSE
148 (bug reports from Alexis Mikhailov / Dave Cole)
149 (gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
150 the focus rectangle, not the hole tab.
152 Thu Nov 26 03:18:08 1998 Tim Janik <timj@gtk.org>
157 * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
158 Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
160 * gtk/maketypes.awk: changed underline substitution, so we get
161 GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
162 * gtk/makeenums.pl: likewise.
163 * gtk/gtkctree.c: adapted type names accordingly.
165 Tue Nov 24 11:31:06 1998 Owen Taylor <otaylor@redhat.com>
167 * docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
169 * gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
170 some code duplication.
172 * gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
173 and child widgets when scrolling greater than 32k pixels.
175 * testgtk.c: Modified layout test to test scrolling over
178 Tue Nov 24 11:11:05 1998 Owen Taylor <otaylor@redhat.com>
180 * gtk/gtklayout.[ch]: Fixed up copyright message.
182 * gdk/gdkrgb.c (DM): Make the dither matrix constant
185 * gtk/gtkdnd.c: Make cursor bitmaps const.
187 * gdk/gdk.h gdk/gdkpixmap.c: Added const to
188 gdk_pixmap/bitmap_create_from_data.
190 Tue Nov 24 07:46:09 1998 Tim Janik <timj@gtk.org>
192 * docs/Changes-1.2.txt: added a section on scrolled windows and
195 1998-11-24 Andrew T. Veliath <andrewtv@usa.net>
197 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
198 buttons when setting relief for button items.
199 (gtk_toolbar_set_button_relief): Same.
201 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
203 * gdk/Makefile.am, gtk/Makefile.am:
204 Removed DEFS "+=" mess that breaks recent automakes.
205 INCLUDES is the correct way to add to CFLAGS from Makefile.am.
207 * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
208 gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
209 gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
211 Include "config.h" instead of "../config.h".
212 Now that DEFS works again, automake will automatically pass us
213 the location of config.h in -I.
215 Mon Nov 23 22:10:09 1998 Owen Taylor <otaylor@redhat.com>
217 * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
218 gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
220 Added layout widget for scrolling arbitrarily big areas.
221 Added plug/socket widgets for interprocess embedding.
223 These widgets still, at some point, need to be
224 made more pure in their use of GDK, as opposed
227 * gtk/testgtk.c: Added test for layout widget.
229 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
231 * gtk/gtkclist.c: (gtk_clist_swap_rows): Bugfix from
232 Brandon Long <blong@fiction.net> - do the right thing with first
233 and last, which are the absolute values of row arguments row1
236 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
238 * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
239 default adjustment (from 0 to 100) instead. I'm not sure if this
240 is the correct level for the fix, but gtk_progress_bar_new()'s
241 original default behavior is restored.
243 1998-11-23 Martin Baulig <martin@home-of-linux.org>
245 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
246 we can check for latest GTK features.
248 1998-11-23 Havoc Pennington <hp@pobox.com>
250 * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
251 (gtk_toolbar_insert_element): When setting relief, also affect
254 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
256 * gtk/gtkobject.h: remove extraneous comma
258 Mon Nov 23 05:21:50 1998 Tim Janik <timj@gtk.org>
260 * gtk/gtkcontainer.c:
261 (gtk_container_add_with_args):
262 (gtk_container_addv):
263 (gtk_container_add): removed assertements for constructed containers
264 again, since this essentially breaks the "child" arg.
266 * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
267 reference count, we don't need to reference toplevels that already have
270 * gtk/gtkscrolledwindow.c: check for the composites existance in
271 _forall since we might not be already constructed.
273 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
275 * Released GTK+ 1.1.5
277 * configure.in: require GLib 1.1.5
279 Mon Nov 23 03:21:17 1998 Tim Janik <timj@gtk.org>
281 * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
283 (gtk_text_finalize): only unref the current_font if we have
286 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
293 docs/gtk-config.1: Version incremented to 1.1.5
295 Sun Nov 22 16:21:28 1998 Tim Janik <timj@gtk.org>
297 * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
298 ::text_yalign, ::activity_mode.
300 * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
301 ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
303 (gtk_progress_bar_new):
304 (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
305 (gtk_progress_bar_construct): deprecated.
307 * gtk/gtkvscrollbar.c:
308 (gtk_vscrollbar_draw_step_back):
309 (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
310 gtk_paint_arrow, to be consistent with hscrollbar.
313 added construct args ::hadjustment, ::vadjustment.
314 added args ::line_wrap, ::word_wrap.
315 (gtk_text_class_init): added scroll_adjustments signal.
316 (gtk_text_new): use gtk_widget_new.
317 (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
318 so we don't screw the reference counts and don't leave signals connected.
319 (gtk_text_destroy): disconnect adjustments signals.
320 (gtk_text_finalize): unref adjustments.
322 * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
323 added args ::indent, ::spacing, ::show_stub, ::reorderable,
324 ::use_drag_icons, ::line_style and ::expander_style.
325 (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
328 * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
330 removed ::vadjustment and ::hadjustment args, introduced
331 ::scroll_adjustments signal.
332 added ::shadow_type, ::selection_mode and ::row_height args.
333 added n_columns construct arg.
334 (gtk_clist_construct): call gtk_object_constructed().
335 (gtk_clist_set_row_height): if height is passed as 0,
336 revert to automatic height calculation.
337 (gtk_clist_destroy): before unrefing the adjustments, disconnect our
340 Fri Nov 21 22:34:58 1998 Tim Janik <timj@gtk.org>
342 * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
344 (gtk_widget_destroy): assert that we only destroy constructed widgets.
346 * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
347 to identify args that may only be used for construction.
348 GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
350 * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
351 at the end if the object is not fully constructed.
352 (gtk_object_newv): likewise.
353 (gtk_object_destroy): assert that we only destroy constructed objects.
354 (gtk_object_init): setup GTK_CONSTRUCTED from the
356 (gtk_object_default_construct): new function to complete default
357 construction of an object by applying missing construtor args with
358 default values of 0, 0.0 or NULL.
359 (gtk_object_constructed): new function to mark an object as being
360 constructed (used from within constructors).
362 * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
363 so it is immediatedly available for the caller.
365 * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
366 the object initilizer (GtkObjectInitFunc takes a second arg now, the
367 real klass), and asure that object initializers may temporarily alter
370 Fri Nov 20 08:00:30 1998 Tim Janik <timj@gtk.org>
372 * gtk/testgtk.c: change all occourances of gtk_container_add (
373 scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
374 for widget!=(clist, ctree, text, viewport).
377 (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
378 to add children to the scrolled window.
380 * gtk/gtkscrolledwindow.h:
381 * gtk/gtkscrolledwindow.c:
382 changed scrolled_window->viewport to scrolled_window->child, and use
383 gtk_widget_scroll_adjustements() to set the scroll adjustments for the
384 widget, we do not create an additional viewport anymore.
385 added ::hadjustment and ::vadjustment constructor args.
386 (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
387 (gtk_scrolled_window_set_hadjustment):
388 (gtk_scrolled_window_set_vadjustment): new functions that superceed
389 gtk_scrolled_window_construct.
390 (gtk_scrolled_window_construct): deprecated this function.
392 * gtk/gtkhscrollbar.c:
393 * gtk/gtkvscrollbar.c:
396 support a constructor arg "::adjustment", and use gtk_widget_new() for
399 * gtk/gtkrange.c: added ::update_policy arg.
400 (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
401 a default adjustment so this function can be used for derived widgets
402 that depend on the adjustment's existance.
403 (gtk_range_destroy): disconnect the adjustment signal, so we don't
404 get called after we got destroyed, we don't destroy the adjustment
405 in here, because it might have been provided from another widget.
407 * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
408 (gtk_viewport_destroy): same as gtk_range_destroy.
410 * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
413 * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
414 gboolean, indicating whether this widget supports activation.
415 added gtk_widget_scroll_adjustements() to set the scrolling
416 adjustments of a widget.
418 Wed Nov 19 01:22:42 1998 Tim Janik <timj@gtk.org>
420 * gtk/gtkoptionmenu.c:
421 (gtk_option_menu_remove_contents):
422 (gtk_option_menu_update_contents): removed
423 gtk_container_[un]block_resize() pairs.
426 * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
427 be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
430 * *.c: made deprecated functions issue a message:
431 gtk_clist_set_border, gtk_container_block_resize,
432 gtk_container_unblock_resize, gtk_container_need_resize,
433 gtk_object_class_add_user_signal, gtk_spin_button_construct,
434 gtk_scrolled_window_construct.
435 removed non-functional functions:
436 gtk_container_disable_resize, gtk_container_enable_resize,
437 gtk_clist_set_policy.
439 Wed Nov 18 22:54:36 1998 Tim Janik <timj@gtk.org>
441 * gtk/gtkbox.c (gtk_box_init):
442 * gtk/gtkdrawingarea.c (gtk_drawing_area_init):
443 * gtk/gtkeventbox.c (gtk_event_box_init):
444 * gtk/gtkfixed.c (gtk_fixed_init):
445 * gtk/gtkframe.c (gtk_frame_init):
446 * gtk/gtkhandlebox.c (gtk_handle_box_init):
447 * gtk/gtkpacker.c (gtk_packer_init):
448 * gtk/gtkmisc.c (gtk_misc_init):
449 * gtk/gtkpreview.c (gtk_preview_init):
450 * gtk/gtkprogress.c (gtk_progress_init):
451 * gtk/gtkprogressbar.c (gtk_progress_bar_init):
452 * gtk/gtkseparator.c (gtk_separator_init):
453 * gtk/gtktable.c (gtk_table_init):
454 * gtk/gtkviewport.c (gtk_viewport_init):
455 * gtk/gtkalignment.c (gtk_alignment_init):
456 removed setting of the GTK_BASIC flag.
460 removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
462 * miscellaneous GtkType and macro fixups.
464 Sat Nov 21 18:53:13 1998 Owen Taylor <otaylor@redhat.com>
466 * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin):
467 Fixed so it at least works with window managers other
468 than Enlightenment, though it probably needs to be
471 1998-11-21 Andrew T. Veliath <andrewtv@usa.net>
473 * gtk/gtkhandlebox.[ch]: Add shadow_type and
474 gtk_handle_box_set_shadow_type function (plus a
475 GtkHandleBox::shadow arg) to allow configuration of shadow in the
478 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
480 * gtk/gtkcalendar.c: Fix for marking days from
481 Dan Reish <dreish@izzy.net>.
483 Thu Nov 19 00:15:27 1998 Lars Hamann <lars@gtk.org>
485 * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
486 in row_list. (from Samuel Solon <ssolon@usa.net>)
488 * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
489 (gtk_clist_get_column_widget): return column widget
491 Wed Nov 18 11:54:57 1998 Owen Taylor <otaylor@redhat.com>
493 * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
494 that are sent to a toplevel but are not within the
497 * gdk/gdkdnd.c gdk/gdk.h: Added support for a
498 XdndProxy atom which proxies the drag to another window.
500 1998-11-17 Federico Mena Quintero <federico@nuclecu.unam.mx>
502 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
503 that it is not needed.
505 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
506 * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
507 function to correctly determine gdk window position relative to
508 its "root window" - contains check for an Enlightenment
510 * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
511 gdk_window_get_deskrelative_origin to get the origin of dragged
512 handleboxes correctly. Now it works correctly with E.
514 Tue Nov 17 1998 Tuomas Lukka <lukka@iki.fi>
516 * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
517 getting types even though we were not using real type names,
518 just the index. This caused random crashes when more than
519 256 types were defined.
521 1998-11-17 Martin Baulig <martin@home-of-linux.org>
523 * gtk/genmarshal.pl: Put output files in the current directory
524 and not in the $(srcdir) since the VPATH is ignored for built
527 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
530 * gtk/Makefile.am: check for unchanged autogenerated files, so
531 we don't rebuild everything just for adding a new function
533 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
536 gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
537 code thanks to GNOME stock by Eckehard Berns. New function
538 gtk_pixmap_set_build_insensitive to provide ability to turn
541 Tue Nov 17 00:06:29 1998 Lars Hamann <lars@gtk.org>
543 * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
544 new guints : tab_hborder, tab_vborder; marked tab_border deprecated
545 (struct _GtkNotebookPage): new flags : expand, fill, pack
547 * gtk/gtknotebook.h/c
548 (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
550 (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
551 (gtk_notebook_set_tab_hborder): new function. set tab_hborder
552 (gtk_notebook_set_tab_vborder): new function. set tab_vborder
553 (gtk_notebook_query_tab_label): new function. get tab_label widget.
554 (gtk_notebook_set_tab_label): new function. set tab_label widget.
555 (gtk_notebook_set_tab_label_text): new function. set tab_label text.
556 (gtk_notebook_query_menu_label): new function. get tab_label widget.
557 (gtk_notebook_set_menu_label): new function. set tab_label widget.
558 (gtk_notebook_set_menu_label_text): new function. set tab_label text.
559 (gtk_notebook_set_tab_label_packing): new function. set tab_label
560 fill, expand, fill_type
561 (gtk_notebook_query_tab_label_packing): new function. get tab_label
562 fill, expand, fill_type
564 (gtk_notebook_real_page_position): return logic page number
565 (gtk_notebook_search_page) search next/prev logic page
566 (gtk_notebook_update_labels): set logic page number.
567 (gtk_notebook_page_compare): renamed gtk_notebook_find_page
568 (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
569 CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
570 (gtk_notebook_button_press) (gtk_notebook_key_press)
571 (gtk_notebook_focus) (gtk_notebook_pages_allocate)
572 (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
573 use gtk_notebook_search_page
574 (gtk_notebook_page_allocate): fixed allocation bug
575 (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
576 (gtk_notebook_init): unset GTK_NO_WINDOW flag
577 (gtk_notebook_size_request): check whether page->child is visible.
578 changes due to tab h/vborder, homogeneous tabs
579 (gtk_notebook_paint): don't draw invisible tabs
580 (gtk_notebook_switch_page): calculate page_num if it's less than 0
581 (gtk_notebook_append_*) (gtk_notebook_prepend_*)
582 (gtk_notebook_insert_page): removed sanity checks
584 * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
586 Mon Nov 16 15:10:33 1998 Owen Taylor <otaylor@redhat.com>
588 * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
589 (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
591 * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was
592 broken. (GtkWidget's default unmap handler should work fine).
593 Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
595 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
597 * gtk/gtkmenubar.[ch]: added shadow_type setting and
598 gtk_menu_bar_set_shadow_type function to allow shadow
599 configurability for menubars
601 * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
604 Mon Nov 16 00:17:53 1998 Tim Janik <timj@gtk.org>
606 * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
607 class creation and parent class' object initializer.
609 1998-11-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
611 * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
612 have assigned it to the window -- there is no point in keeping it around.
613 (gtk_paned_unrealize): No need to destroy the cursor here.
615 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
618 Fri Nov 13 11:22:38 1998 Owen Taylor <otaylor@redhat.com>
620 * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
621 (gtk-blizzard-981005-0.
622 Christopher Blizzard <blizzard@applied-theory.com)
624 * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
625 gdk_pixmap_foreign_new to gdkx.h.
627 Fri Nov 13 16:06:48 1998 Owen Taylor <otaylor@redhat.com>
629 * gtk/Makefile.am: Added rules to generate an empty
630 GTK+ theme called "Default" upon installation.
632 * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
633 of fonts and fontsets.
634 (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
636 * gtk/gtkmain.c: Change test to detect glibc's
637 utf8 based mb* functions to be more specific.
639 * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation
642 Fri Nov 13 16:43:36 1998 Lars Hamann <lars@gtk.org>
644 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
646 (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
647 event_window if draw_indicator is set
648 (gtk_toggle_button_set_mode):
650 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
652 * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
653 ensure proper type (SunPro cc complains)
655 * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
657 * gtk/gtktogglebutton.c: use our own draw method so we get proper
658 redraws on active state
660 Thu Nov 12 00:26:13 1998 Lars Hamann <lars@gtk.org>
662 * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
665 * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
668 Wed Nov 11 19:54:58 1998 Lars Hamann <lars@gtk.org>
670 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
671 (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
672 added ARG_WINDOW_PLACEMENT
674 * gtk/gtkclist.c (size_allocate_columns): resize column if column
675 button > column width and auto_resize is set
676 (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
677 consider column button width of auto resized columns
678 (gtk_clist_parent_set): removed
680 * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
681 (auto_resize_columns): auto_resize all columns
682 (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
683 (column_auto_resize): respect column button width of auto resized
686 1998-11-10 Martin Baulig <baulig@merkur.uni-trier.de>
688 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
689 we can check for latest GTK features.
691 Mon Nov 9 00:39:20 1998 Lars Hamann <lars@gtk.org>
693 * gtk/gtkenums.h : new enum GtkCornerType
694 * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
696 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement):
697 new method to set window_placement.
698 (gtk_scrolled_window_viewport_allocate)
699 (gtk_scrolled_window_size_allocate): few changes due to
701 * gtk/testgtk.c (remove_selection): fixed while loop.
703 Sat Nov 7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
705 * gtk/gtkclist.c: check if column[i].button is valid before calling
706 gtk_widget_intersect on it in gtk_clist_draw
708 * gtk/gtkdnd.c: removed unused variable empty_bits
710 * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
712 * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
713 a boolean (thanks to Elrond for noticing this)
715 1998-11-07 Jay Cox <jaycox@earthlink.net>
717 * gtk/gtkwindow.c: forward declaration for gtk_window_paint
718 * gdk/gdkxid.c: declare xid_ht static
719 * examples/*/Makefile: get the link ordering right.
721 Sat Nov 7 16:31:56 1998 Stefan Jeske <stefan@gtk.org>
723 * gtk/gtkclist.c (gtk_clist_realize): Set background of
724 title button window to GTK_STATE_NORMAL instead of
725 GTK_STATE_SELECTED to avoid ugly flicker.
727 Fri Nov 6 23:29:40 1998 Lars Hamann <lars@gtk.org>
729 * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
730 if adjustments are NULL and list size has changed
731 (gtk_clist_size_request): return real list requsition,
732 if adjustments are NULL.
733 (size_allocate_columns): use button->requisition.with, if column
735 (list_requisition_width): new function. return full list width.
736 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
737 auto create adjustments.
738 (gtk_clist_motion) (move_vertical) (move_horizontal):
739 check adjustment != NULL.
741 Thu Nov 5 12:06:16 1998 Owen Taylor <otaylor@redhat.com>
743 * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
744 a clear/redraw, not just a redraw, so the focus
745 gets undrawn properly.
747 * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize):
748 Chain to gtk_widget_unrealize() instead of duplicating
751 Wed Nov 4 14:34:51 1998 Owen Taylor <otaylor@redhat.com>
753 * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
754 last vestiges of old DND.
756 Tue Nov 3 12:27:52 1998 Owen Taylor <otaylor@redhat.com>
758 * gtk/gtkentry.c: Restored inner border to entries,
759 erase cursors to background image.
761 Fri Oct 30 12:09:21 1998 Owen Taylor <otaylor@redhat.com>
763 * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
764 it was identical to paint_flat_box().
766 * gtk/gtkstyle.c: Coding style fixups.
768 * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
771 * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c:
772 Change 'side' for paint_[box/shadow]_gap and paint_extension
773 to be GtkPositionType instead of a random int.
775 * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use
776 "frame" as detail - an aspectframe should draw identical
779 Tue Oct 27 09:58:11 1998 Owen Taylor <otaylor@redhat.com>
781 * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
782 from combine_child_shapes().
784 * gdk/gdkwindow.c: Merge propagate_shapes() and
785 propagate_combine_shapes() to remove code duplication.
787 Thu Nov 5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
789 * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
790 gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
791 So allocate some mem if it's not already done.
793 * clist scrollbar merges from HEAD
795 Tue Nov 3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
797 * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
799 * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
800 of 0x80000000, so we stay within the bounds of a postive signed
801 int (it broke some compilers)
804 * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
805 when some of the menuitems are hidden
807 * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
810 * gtk/gtkwidget.c: add a dummy continue after the line label
811 next_rect, since some compilers don't like label: }
813 Sun Nov 1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
815 * Okay, so we need the X11R6 keysyms so programs don't have to
816 worry about them. They don't conflict anyway. Reverted the #ifdef
819 * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
820 special rule for them (X-derived-headers)
822 Sun Nov 1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
824 * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
825 and gdkkeysyms.h into sed scripts, since the awk scripts weren't
826 portable, and we really shouldn't be using awk anyway.
829 * makekeysyms.awk: bye bye
831 * gtk/gtkaccelgroup.c
834 * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
836 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
838 * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
839 and gdkkeysyms.h. Remove those files from CVS.
841 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
843 * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
844 of the USE_XIM #ifdef
846 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
847 even with --include-deps. Slightly different from timj's fix, to avoid
848 circular dependency with gtkmarshal.c
853 * gtk/gtkfontsel.[ch]
857 * gtk/testgtk.c: merges from HEAD
860 * gtk/gtkradiomenuitem.c
861 * gtk/gtktreeitem.c: cleanups
863 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
865 * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
867 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
869 * configure.in: AIX has libpthreads, to make sure you can have
870 more than one thread. Also add -D_THREAD_SAFE, and reorder
871 configure.in so CFLAGS doesn't get clobbered when we actually
874 * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
877 * gtk/testdnd.c: removed unused variable "buf"
879 Mon Oct 26 16:46:15 1998 Owen Taylor <otaylor@redhat.com>
881 * gtk/gtkcontainer.c (gtk_container_unregister_toplevel):
882 remove_link(), not remove()
884 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
886 * gdk/gdkrgb.c: use glib endian stuff
888 * configure.in: don't need to check for endianness anymore
890 * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
892 Wed Oct 21 17:44:27 1998 Owen Taylor <otaylor@redhat.com>
894 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
895 all toplevel widgets, not toplevel windows. (I.e.,
896 plugs should be reset)
898 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
899 _do_ need to notify the other toplevels - by the time
900 the get the client messages, the RC file dates will
903 * gtk/gtkcontainer.h: Added a function call to list
904 every toplevel widget.
906 * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse):
907 Don't send client messages to _every_ window on display!
909 Tue Oct 20 16:21:04 1998 Owen Taylor <otaylor@redhat.com>
911 * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags
912 when dragging across widgets, only in drags
915 Tue Oct 20 15:59:49 1998 Owen Taylor <otaylor@redhat.com>
917 * gtk/gtkdnd.c (gtk_drag_source_info_destroy):
918 Emit "drag_end" signal at end of drag.
920 Tue Oct 20 13:07:54 1998 Owen Taylor <otaylor@redhat.com>
922 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
923 for "gtk-embedded" data currently set by
924 GtkSocket, and use that to forward client message
925 on to embedded windows. Only reset our own toplevel -
926 the others will handle themselves. (Now that
927 GtkMenus live in GtkWindows)
929 Mon Oct 19 16:40:40 1998 Owen Taylor <otaylor@redhat.com>
931 * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
932 client window finding code so that it works with
933 WM's other than fvwm.
935 Sun Oct 18 22:48:27 1998 Owen Taylor <otaylor@redhat.com>
937 * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
938 the "GtkDrawWindow" class, which is a descendent
939 of the Window class which leaves its background alone.
940 Essentially, a toplevel drawing area, though it does
941 allow adding a child.
943 Sat Oct 17 00:40:51 1998 Owen Taylor <otaylor@redhat.com>
945 * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
946 merging RC styles. Report new share/themes path for
947 themes directory. Deref theme engines when appropriate.
949 * gtk/gtkclist.c: Set all backgrounds in _style_set().
950 Make sure that pixel for xor_gc is never 0.
952 * gtk/gtkctree.c: Choose colors for plus/minus more
953 carefully, in a hopefully style-independent fashion.
954 (Still needs a bit more work)
956 * gtk/gtkwidget.c: Don't send expose events to widgets
957 which are about to be resized and redrawn. (Needs a
960 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
961 drawing on tabs for newly allocated, un-sized
962 pages - we'll get the size wrong.
964 Thu Oct 1 17:38:07 1998 Owen Taylor <otaylor@redhat.com>
966 * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
967 up stupidities in last commit.
969 Thu Oct 1 14:25:43 1998 Owen Taylor <otaylor@redhat.com>
971 * gtk/gtkwidget.c: When handling queued resizes, account
972 for handleboxes, where the widget heirarchy is different
973 than the window heirarchy by just queueing a resize on
974 the entire handlebox if the detached child is changed.
976 - Remove widgets from the redraw queue when reparenting,
977 even if not unrealizing. We queue a resize/redraw in
980 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
981 * gtk/gtkstyle.c: added check to see if the widget has been shaped
982 byt the app via gtk_widget_shape_combine_mask and if it has does
983 not reset the shape on theme change.
985 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
987 * gtk/gtkfilesel.c: Keep a list of directories in which we never
988 want to stat the entries (like /afs), and assume everything in
989 those directories is a subdirectory.
991 - When following a path, try to open components even when
992 we don't find them in their parent's directory to
993 support automounters.
995 Fri Sep 11 15:36:33 1998 Owen Taylor <otaylor@redhat.com>
997 * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
998 now at least compiles again.
1000 * gdk/gdk.c (gdk_event_translate): Don't pass events
1001 on destroyed widgets to the gdk_input layer.
1003 Thu Sep 3 19:45:34 1998 Owen Taylor <otaylor@redhat.com>
1005 * gtk/gtkthemes.c: Use g_module instead of dlopen()
1007 Thu Sep 3 19:30:11 1998 Owen Taylor <otaylor@redhat.com>
1009 * gtk/gtktooltips.c (gtk_tooltips_expose): Check
1010 if we've changed widgets since the expose event
1013 Mon Aug 31 15:33:13 1998 Owen Taylor <otaylor@redhat.com>
1015 * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
1016 to restore approximate bin compatibility with the
1017 non-themes branch. (This does break bin compat
1018 within the themes branch.)
1020 Sun Aug 30 16:48:27 1998 Owen Taylor <otaylor@gtk.org>
1022 * gtk/gtklabel.c (gtk_label_set): Eliminate a
1023 gdk_window_clear_area() that snuck in with the
1024 menu underlines merge.
1026 Mon Aug 24 23:37:26 1998 Owen Taylor <otaylor@redhat.com>
1028 * gtk/gtktext.c: Fixed some remaining background drawing,
1029 merges from main branch, cleanups.
1031 Mon Aug 24 10:55:51 1998 Owen Taylor <otaylor@redhat.com>
1033 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
1034 dereference NULL focus tab.
1036 * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
1037 functions since we need to both show/hide and
1038 queue a redraw. (There's some duplication of drawing here,
1039 we probably should only be queuing a redraw on the
1040 "value" portion of the scale.)
1042 Fri Aug 21 19:02:30 1998 Owen Taylor <otaylor@redhat.com>
1044 * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
1045 into the theme-drawing framework. We do this by making them,
1046 like check/radio-buttons, no-window widgets with subwindows. We
1047 then move the value by calling gtk_widget_queue_clear() and only
1048 redraw the value in our draw() / expose() handler. A virtual
1049 function clear_background is added which queues a clear on the
1050 "background" portion of the widget.
1052 Fri Aug 21 13:04:27 1998 Owen Taylor <otaylor@redhat.com>
1054 * gtk/gtktext.c (mark_bg_gc): Make background colors work
1055 again. (We can't always paint the background with a
1056 paint() function - only do that for selected text)
1058 Mon Aug 17 20:31:01 1998 Owen Taylor <otaylor@redhat.com>
1060 * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
1061 gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
1063 * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
1064 the themes can't be built as part of the same build since
1065 they depend on gdk_imlib.
1067 Fri Aug 14 12:44:30 1998 Owen Taylor <otaylor@redhat.com>
1069 * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
1072 * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
1075 - Upgrade to libtool-1.2b + patch to add shared library dependencies
1076 for Linux. (Needs to be extended to other platforms where they
1079 - Check for -ldl so this branch should build on all platforms, though
1080 themes will work on all platforms they could work on.
1082 - Use -version and -release simultaneously: sonames stay as they are
1083 in the current scheme, but -lgtk-1.1 changes to -lgtk.
1085 - Added in extra -l flags to library LDFLAGS so we get shared library
1086 dependencies against X libs and -ldl. (But not libgtk against
1087 libgdk or libglib yet, since dependencies against uninstalled
1088 libraries aren't portable)
1090 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
1091 * gtkrc.c - added api calls to find module and theme paths from gtk.
1092 nuked gtk_install_prefix global.
1094 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
1095 * fixed gtk_install_prefix global.
1097 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
1098 * added gtk_install_prefix global const variabel to find where gtk is
1101 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
1102 * added ~/.gtk/lib/themes/engines/ to the default searchpath for
1105 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
1106 * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
1108 Mon Aug 10 23:03:55 1998 The Rasterman <raster@redhat.com>
1109 * Fixed minor problem in gtkhandlebox.c with drawing, and some
1110 notebook stuff. Also pixmap theme is now "clean" again.
1112 Mon Aug 10 23:03:55 1998 Owen Taylor <otaylor@redhat.com>
1113 * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up
1114 queued area resizing once more.
1116 Mon Aug 10 23:09:30 EDT 1998
1117 * Added a few drawing fixes for notebook and other widgets. finished
1118 pixmap theme up to the level that can be supported so far. (need to
1119 add path discovery 9ie where is the rc fiel from - add to pixmap
1120 path so we can get theimages from there too). then we can package
1121 themes. After that need to add to theme seartch path stuff in users
1124 Thu Aug 6 16:49:25 1998 Owen Taylor <otaylor@redhat.com>
1126 * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
1127 drawing area, draw in an expose handler.
1129 * gtk/gtknotebook.c (gtk_notebook_expose): Check for
1132 Wed Aug 5 16:13:15 1998 Owen Taylor <otaylor@redhat.com>
1134 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
1135 creation of GC's so that they will be set before
1136 they are used for map events (why are they used there?)
1138 * gtk/gtkwidget.c: Fixed mistake that caused widgets to
1139 be queued in multiple times in the queue.
1141 Wed Aug 5 14:23:52 1998 Owen Taylor <otaylor@redhat.com>
1143 * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
1144 clip rects (or do anything) for shadow_none.
1146 Wed Aug 5 13:14:57 1998 Owen Taylor <otaylor@redhat.com>
1148 * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
1149 Yes, it was needed. draw() and expose() are _not_
1152 Sat Aug 1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
1153 * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
1155 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
1156 * YES YES YES YES YES clist borders work again! YES! YES YES! gimme
1157 more baby oooh yeah more more MORE YES YES.
1159 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
1160 * hopefully fixed problem wiht togglebuttons acting like
1161 radiobuttons in gtktogglebutton.c
1163 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
1164 * fixed another drawing buglet in the frame drawing code (actually
1165 in the clearing code but anyway in gtkstyle.c)
1167 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
1168 * Fixed warning from colorsel widget...
1170 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
1171 * Fixed defautl drawing code to no longer clobber the original style
1172 pixmap bgs as it did and added a helper funciton og gtkstyle.c to
1175 Thu Jul 30 18:09:21 1998 Owen Taylor <otaylor@redhat.com>
1177 * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
1179 * gtk/gtktooltips.c: Pass a widget (the window) to the
1180 drawing function instead of the GtkTooltips.
1182 Thu Jul 30 17:27:10 1998 Owen Taylor <otaylor@redhat.com>
1184 * gdk/gdkwindow.c: Abstract out checking for shape
1185 extension into a function.
1187 * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
1188 Remove extra callls to gtk_window_draw().
1190 Thu Jul 30 11:18:43 1998 Owen Taylor <otaylor@redhat.com>
1192 * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
1194 * themes/th_main.c: Moved messages around so they are
1195 printed before destroying strings.
1197 Wed Jul 29 16:56:07 1998 Owen Taylor <otaylor@redhat.com>
1199 * gdk/gdk.c: Fairly simple implementation of expose compression.
1200 (No GraphicsExpose compression yet, always compress
1201 with the equivalent of XtCompressMultiple - no compression
1202 of Expose events across non-Expose events)
1204 * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
1205 Find rectangle bounding two rectangles.
1207 * gtk/gtkstyle.c: Set clip rects for a few extra GC's
1208 in gdk_default_draw_shadow()
1210 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
1211 * Fixed drawing functions to handle switching themes on the fly
1212 gracefully and look decent.
1214 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
1215 * Added all the theme drawing code to all widgets, fixed up minor
1216 nigglies in some widgets when it comes to themes, seem to be
1217 running into some funky behavior with clipping rects in GC's. Too
1218 many files to list here. (all files that now use gtk_paint_* are
1221 Tue Jul 28 22:49:16 1998 Owen Taylor <otaylor@redhat.com>
1223 * themes/th_main.c themes/th_draw.c gtk/testgtkrc:
1224 Set up the demo theme so it is loaded from the RC file.
1226 * themes/th_draw.c: Alleviate the hardcoded paths a wee
1227 bit. (use $HOME/themes/)
1229 * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in
1230 the RC file via dlopen()
1232 Tue Jul 28 20:30:56 1998 Owen Taylor <otaylor@redhat.com>
1234 Internal handling of styles and RC styles pretty much
1235 completely reworked for Theme work.
1238 - Added routines for virtualization of RcStyle and Style handling.
1239 - Temporary "sample" inline theme-engine. (Does nothing
1240 but print out a few messages.
1243 - Made GtkRcStyle public, added flags to tell if particular
1244 colors have been set.
1245 - RC Styles are "transparent", and the final style for
1246 a widget is the composition of all matching styles
1247 - Added pointer to GtkThemeEngine, and gpointer engine_data
1248 to RC style and style.
1249 - Parse "engine" keyword, load the appropriate theme engine
1250 and call the engine's parser.
1253 - Keep a GtkRcStyle * in styles created from Rc Styles.
1254 - Load up images from RC file at style attachment time.
1255 - Call ->engine->foo() at appropriate times.
1256 - Don't use a GCache. All incarnations for a style are
1257 just linked together in a list, depend on the RC style
1258 code to find the existing copy.
1260 Tue Jul 28 14:41:54 1998 Owen Taylor <otaylor@redhat.com>
1262 * gtk/gtkwidget.[ch]: Added the concept of queued redraws
1263 of partial areas. This can be done either relative
1264 to the existing windows (gtk_widget_queue_clear[_area]())
1265 or relative to the future allocation of the widget
1266 (gtk_widget_queue_draw[_area]).
1268 The initial implementation is pretty braindead, but
1271 * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
1272 in favor of gtk_widget_queue_clear().
1274 * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
1275 flags in favor of gtk_widget_queue_clear()
1277 Tue Aug 4 19:12:14 1998 Owen Taylor <otaylor@redhat.com>
1279 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
1280 handling of partially clipped areas.
1282 Thu Nov 5 18:52:35 1998 Lars Hamann <lars@gtk.org>
1284 * gtk/gtkclist.h (struct _GtkCListClass)
1285 * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
1287 Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org>
1289 * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
1290 vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
1292 * gtk/gtkclist.c (gtk_clist_class_init): added new args types
1293 "hadjustment" & "vadjustment"
1294 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
1295 set/get_arg functions
1296 (gtk_clist_construct): don't create/adjust scrollbars.
1297 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
1298 to set h/vadjustments
1299 (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
1300 to query h/vadjustments
1301 (create_scrollbars): removed.
1302 (create_adjustments): replacement for create_scrollbars
1303 (gtk_clist_new): call gtk_clist_new_with_titles
1304 (gtk_clist_new_with_titles): don't warn on titles == NULL
1305 (move_horizontal): use CLAMP instead
1306 (gtk_clist_set_policy): deprecated method.
1307 use gtk_scrolled_window_set_policy instead.
1308 (vadjustment_value_changed): use clist->vadj.
1309 (adjust_scrollbars): renamed to adjust_adjustments
1310 (adjust_adjustments): former adjust_scrollbars
1311 (gtk_clist_destroy): unref adjustments
1312 (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
1313 (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
1314 (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
1315 (gtk_clist_thaw) (real_insert_row) (real_remove_row)
1316 (gtk_clist_set_row_height) (real_resize_column):
1317 call adjust_adjustments
1318 (gtk_clist_moveto): return if clist has no adjustments yet.
1319 (gtk_clist_parent_set): new GtkWidget::parent_set function.
1320 Autogenerate h/vadjustments if needed.
1321 (move_horizontal) (move_vertical): some cleanups
1323 * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
1324 call only gtk_viewport_set_h/vadjustment and let these functions
1326 (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
1327 generate a new adjustment if needed
1329 * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
1330 use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
1332 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
1333 queue_resize if visibility of scrollbars changes
1334 (gtk_scrolled_window_remove): only call container_remove with
1335 scrolled_window->viewport automatically if viewport was autogenerated
1336 (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
1337 auto create a viewport only if widget does not take h/vadjustments.
1338 (gtk_scrolled_window_construct): don't generate a viewport
1340 (gtk_scrolled_window_forall): call callback with viewport in any case
1341 (gtk_scrolled_window_set_arg): call gtk_container_add in case of
1343 (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
1344 (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
1348 (create_ctree) (export_ctree) (create_clist): use a scrolled_window
1349 in conjunction with clists/ctrees
1351 * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
1352 in conjunction with clists
1354 * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
1355 in conjunction with clists
1357 Wed Nov 4 21:52:57 1998 Lars Hamann <lars@gtk.org>
1359 * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
1360 (gtk_ctree_remove_node): select focus_row if needed
1361 (cell_size_request): only get pixmap size if pixmap != NULL
1363 Wed Nov 4 04:30:37 1998 Tim Janik <timj@gtk.org>
1365 * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
1366 GTK_IS_WIDGET (widget):
1368 Wed Nov 4 02:02:07 1998 Lars Hamann <lars@gtk.org>
1370 * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
1371 focus_row after a remove_row call.
1373 Sun Nov 1 21:00:06 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
1375 * gtk/gtkoptionmenu.c
1376 * gtk/gtkmenushell.c: make option menus work when some of the
1377 menuitems are hidden - previously, option menu would popup too
1380 1998-10-31 Raja R Harinath <harinath@cs.umn.edu>
1382 * gtk/gtkfeatures.h.in: Remove `#pragma }'.
1384 * gdk/gdki18n.h: Update to use new `glib' widechar defines.
1386 * configure.in (CFLAGS): Don't use test -z "echo .. | grep". Use
1388 (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
1389 (GDK_WLIBS): New variable. Lists extra libraries needed to use
1391 * gtk-config.in (--libs): List $GDK_WLIBS, too.
1393 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1395 * Released GTK+ 1.1.3
1401 * docs/gtk-config.1: updated for v1.1.3
1405 * docs/Makefile.am: Includes new 'make release' as well as
1406 'make sanity'. Also handles html and text creation from html,
1407 and puts them into the distribution
1409 * docs/Makefile.sgml: removed, similar functionality is now in
1410 the Makefile.am file
1412 * docs/.cvsignore: ignore html and text directories
1413 * docs/glib.texi: removed (now in glib dist)
1415 Fri Oct 30 20:02:36 1998 Lars Hamann <lars@gtk.org>
1417 * gtk/gtklist.c (gtk_list_remove_items_internal):
1418 free undo_un/selection, unselect list_item before disconnect
1420 (gtk_list_destroy): removed. gtk_list_shutdown clears the list
1422 (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
1423 (gtk_list_signal_item_toggle) (gtk_list_signal_scroll_horizontal)
1424 (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
1425 (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
1426 (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
1427 (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
1428 (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
1429 new functions. These functions are signal connected to inserted
1430 list_items, to handle key bindings and GtkItem::de/select/toggle
1433 * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
1434 gtk_object_class_add_signals call.
1435 (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
1436 (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
1437 (gtk_list_item_start_selection) (gtk_list_item_end_selection)
1438 (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
1439 (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
1440 removed. These functions are handled via connected
1441 gtk_list_signal_* functions now
1443 Fri Oct 30 05:24:43 1998 Tim Janik <timj@gtk.org>
1445 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1446 even with --include-deps:
1447 $(libgtk_la_SOURCES): $(BUILT_SOURCES)
1449 Fri Oct 30 01:56:08 1998 Tim Janik <timj@gtk.org>
1451 * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
1452 gtk_object_data_set_destroy to fit the gtkobject.h API.
1454 * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
1457 Added support for an extra 'base' filter which an application can
1458 set to restrict the fonts available to the user (e.g. a terminal
1459 program only wants the user to be able to select fixed-width fonts).
1460 The type of font (bitmap/scalable/scaled bitmap) is now
1461 also a part of the filter, so that an application can
1462 request that only scalable fonts are shown.
1463 There are new functions to set the base & user filters.
1464 I've also stopped the up/down key press signals getting
1465 to the clists since the font selection widget handles
1466 them itself. It acted a bit strangely before.
1468 Sun Oct 25 20:27:02 1998 Tim Janik <timj@gtk.org>
1470 * gtk/gtkmain.c (gtk_init): support an environment variable
1471 GTK_MODULES= which takes a colon sperated list of module names
1472 automatically loaded at gtk_init() startup.
1474 Sun Oct 25 08:04:33 1998 Tim Janik <timj@gtk.org>
1476 * gtk/gtkwidget.c: added more g_return_if_fail() statements.
1478 Thu Oct 22 22:40:35 1998 Lars Hamann <lars@gtk.org>
1480 * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
1483 Thu Oct 22 16:22:55 1998 Lars Hamann <lars@gtk.org>
1485 * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
1488 Thu Oct 22 02:29:53 1998 Tim Janik <timj@gtk.org>
1490 * gtk/gtkfilesel.h: GtkType and macro fixups
1491 * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
1492 for the file selection widget to try a completion on (set the
1495 Wed Oct 14 14:34:04 1998 Tim Janik <timj@gtk.org>
1497 * gtk/gtkmain.c: implement idle functions via GHook. this gives a
1498 slight speed improvement and lessens code duplication.
1500 Tue Oct 20 14:53:28 1998 Owen Taylor <otaylor@redhat.com>
1502 * gtk/gtkdnd.c: Always send "drag_leave" to dests
1503 without GTK_DEST_DEFAULT_MOTION.
1505 Tue Oct 20 11:55:24 1998 Owen Taylor <otaylor@redhat.com>
1507 * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
1508 on destroyed windows so we clear the XID table properly.
1509 Finish up restructure of return value handling that
1510 was half-done before.
1512 Tue Oct 20 12:57:10 1998 Owen Taylor <otaylor@redhat.com>
1514 * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
1515 the window tree more comprehensively, so that we find
1516 client windows hidden under non-toplevels.
1518 Tue Oct 20 12:43:04 1998 Owen Taylor <otaylor@redhat.com>
1520 * gtk/gtkselection.c (gtk_selection_data_set):
1521 Maintain the null-termintation guarantee, even when
1522 data = NULL, length = 0. (Warn on data = NULL,
1525 Mon Oct 19 16:41:44 1998 Owen Taylor <otaylor@redhat.com>
1527 * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
1528 into function prototype for drag_data_received.
1530 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
1532 * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
1534 Mon Oct 19 23:44:41 1998 Lars Hamann <lars@gtk.org>
1536 * gtk/gtkclist.c: rearranged some functions
1537 (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
1539 (gtk_clist_set_column_resizeable): if resizeable disable auto_resize
1540 (gtk_clist_set_border): deprecated function, use
1541 gtk_clist_set_shadow_type instead.
1542 (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
1543 (adjust_scrollbars): some cleanups
1544 (select_row) (unselect_row): removed. replaced by equivalent
1545 gtk_signal_emit calls
1546 (add_style_data): removed, use gtk_clist_style_set instead
1547 (gtk_clist_style_set): fill in size data, after style was set.
1548 (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
1549 (gtk_clist_set_cell_style): auto_resize columns if needed
1550 (column_auto_resize): resize column if needed for auto_resize
1551 (real_clear): disable auto_resize while list destroy
1552 (resize_column): removed
1554 * gtk/gtkctree.c : (gtk_ctree_remove_node)
1555 (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
1556 (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
1557 (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
1558 (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
1559 (real_tree_collapse) (real_tree_expand) (column_auto_resize):
1560 auto_resize columns if needed
1561 (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
1562 (real_clear): disable auto_resize while processing the tree
1564 * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
1567 Mon Oct 19 08:31:36 1998 Owen Taylor <otaylor@redhat.com>
1569 * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
1570 typo - look for right atom on transfer failures.
1572 Sun Oct 18 20:52:22 1998 Owen Taylor <otaylor@gtk.org>
1574 * gtk/gtkwidget.c gtkmarshal.list: Change signal
1575 for drag_data_get to match the use that was being
1576 made of it everywhere else...
1578 Sun Oct 18 18:16:39 1998 Owen Taylor <otaylor@gtk.org>
1580 * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
1581 mechanism, that is used for the DND messages.
1583 Removed all the old DND code.
1585 * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
1586 get the visual of a given colormap.
1588 * gtk/gtkcolorsel.c: Conversion to new DND, drag
1591 * gdk/gdk.h gdk/gdkdnd.c: The low-level
1592 X oriented portions of drag and drop protocols.
1593 Sending and receiving client messages, and navigating
1596 * gdk/gdkimage.c: added a gdk_flush() when destroying
1597 SHM images to hopefully make it more likely that
1598 X will gracefully handle the segment being destroyed.
1600 * gdk/gdkprivate.h gtk/gtkdebug.h: Add new
1601 DND debugging flags.
1603 * gtk/gtkeditable.[ch]: Updates for the selection handling
1606 * gtk/gtkselection.[ch]: Added GtkTargetList, a
1607 refcounted data structure for keeping track of lists
1608 of GdkAtom + information. Removed selection_handler_add
1609 in favor of a "drag_data_get" signal.
1611 * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
1612 dependent) parts of the DND protocols, display of drag icons,
1613 drag-under highlighting, and the "default handlers".
1615 * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
1616 windows that are used for reliable pointer grabs and
1617 selection handling in the DND code.
1619 * gtk/testdnd.c: New test program for new DND. (Old
1620 DND tests in testgtk still need to be converted.)
1622 * gtk/testselection.c: Use the new selection API.
1624 * docs/dnd_internals: Start at describing how
1625 all the new code works inside.
1627 * docs/Changes-1.2.txt: New file describing source-incompatible
1628 changes in GTK+-1.2.
1630 Sat Oct 17 22:50:34 1998 Owen Taylor <otaylor@gtk.org>
1632 * gdk/gdkwindow.c (gdk_window_remove_filter): Free
1633 the right list node.
1635 * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
1636 to the XID table so we can receive events on it.
1638 Wed Oct 14 12:57:40 1998 Owen Taylor <otaylor@redhat.com>
1640 * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
1641 to get the timestamp from a generic event.
1643 Fri Oct 9 13:16:04 1998 Owen Taylor <otaylor@redhat.com>
1645 * gtk/gtkwidget.c (gtk_widget_add_events): Added function
1646 that safely adds additional events to a widget's event
1647 mask, even if the widget has previously been realized.
1648 (We can do this, but not remove events from the event
1651 Fri Oct 2 17:35:35 1998 Owen Taylor <otaylor@redhat.com>
1653 * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
1654 for AnyPropertyType.
1656 Fri Oct 2 10:32:21 1998 Owen Taylor <otaylor@redhat.com>
1658 * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
1661 Thu Sep 24 20:33:54 1998 Owen Taylor <otaylor@redhat.com>
1663 * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
1666 Thu Sep 17 14:23:03 1998 Owen Taylor <otaylor@redhat.com>
1668 * gdk/gdk.c (gdk_event_translate): Removed printing
1669 of unknown window lookup warnings. (Made it
1670 a GDK_NOTE) - they happen in many circumstances.
1672 Tue Sep 8 12:38:43 1998 Owen Taylor <otaylor@redhat.com>
1674 * Call XFilterEvent() on events we get for unknown
1675 windows, since it may be the window Xlib uses to
1676 communicate with the IM.
1677 (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
1679 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
1681 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
1684 Thu Aug 27 12:03:14 1998 Owen Taylor <otaylor@redhat.com>
1686 * gtk/gtksignal.c (gtk_signal_newv): Improve warning
1687 message for return_value + GTK_RUN_FIRST.
1689 1998-10-18 Martin Baulig <martin@home-of-linux.org>
1691 * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
1692 line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
1694 Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org>
1696 * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
1697 styles of inserted row
1698 (change_style): change style of focus_row
1700 * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
1701 (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
1702 to set/get row/cell styles.
1703 (gtk_clist_realize): attach row and cell style, allocate row colors.
1704 (gtk_clist_unrealize): detach row and cell styles.
1705 (get_cell_style): new function. get correct cell style.
1706 (draw_cell_pixmap): new function.
1707 (draw_row): draw cells with row or cell styles.
1708 (row_new): set cell and row styles to NULL.
1709 (row_delete): detach & unref cell and row styles.
1711 * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
1712 new functions to attach/detach styles and allocate colors.
1713 (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
1714 styles of invisible nodes.
1715 (draw_cell_pixmap): new function.
1716 (get_cell_style): new function. get correct cell style.
1717 (gtk_ctree_draw_expander): new function. draw tree expander.
1718 (gtk_ctree_draw_lines): new function.draw tree lines.
1719 (draw_row): draw cells with row or cell styles.
1720 (row_new): set cell and row styles to NULL.
1721 (row_delete): detach & unref cell and row styles.
1722 (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
1723 (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
1724 Analogons of GtkCList functions
1725 (gtk_ctree_set_spacing): new function. set spacing between
1726 tree expander and cell contents
1727 (gtk_ctree_set_expander_style): new function. set expander style
1729 (ctree_is_hot_spot): few changes due to draw_row modifications.
1731 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
1733 * gtk/gtkcombo.c: try completion on MOD1-TAB.
1734 Handle case when the combo->list is empty.
1736 Mon Oct 12 07:51:34 1998 Tim Janik <timj@gtk.org>
1738 * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
1739 handlers that have not yet been disconnected (finally managed to
1740 trigger the gtk_signal_handler_unref() paranoid warning).
1742 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1744 * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
1745 width and height which is -1 and not -2.
1747 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
1750 * autogen.sh: we need libtool 1.2b now
1752 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1754 * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
1755 and bottom attach arguments as mandatory and readjust the table size
1756 and opposing edge accordingly if required. this way the order in which
1757 the arguments are set doesn't matter.
1759 Thu Oct 8 15:53:59 1998 Owen Taylor <otaylor@redhat.com>
1761 * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
1762 message to print out parent class name correctly.
1764 Thu Oct 8 07:07:10 1998 Tim Janik <timj@gtk.org>
1768 removed functions gtk_object_set_data_destroy and
1769 gtk_object_set_data_destroy_by_id.
1770 added functions gtk_object_remove_no_notify and
1771 gtk_object_remove_no_notify_by_id which will remove a certain data
1772 portion without invokation of its destroy notifier, this should only
1773 be used in very controled circumstances.
1775 Wed Oct 7 23:59:37 1998 Lars Hamann <lars@gtk.org>
1777 * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
1778 size_allocate_title_buttons call
1779 (gtk_clist_realize): changed initial column.window position
1781 Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
1783 * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
1785 * gtk/gtkctree.c (create_xor_gc): removed
1786 (gtk_ctree_button_press): set correct line_attributes for
1787 clist->xor_gc on drag start
1788 (gtk_ctree_button_release): reset clist->xor_gc
1790 Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
1793 * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
1794 which were in place to fixup emacs' cc-mode indentation.
1795 putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
1796 proper way to achive this and doesn't produce problems for
1797 stupid pragma-related compiler bugs. ;)
1799 Wed Oct 7 00:59:46 1998 Lars Hamann <lars@gtk.org>
1801 * gtk/gtkclist.h: new signal GtkCList::resize_column.
1802 * gtk/gtkclist.c (draw_row): don't draw invisible columns
1803 (size_allocate_title_buttons) (size_allocate_columns):
1804 skip invisible columns
1805 (new_column_width): take min/max_width into account
1806 (gtk_clist_button_release) (gtk_clist_motion):
1807 changes due to changed new_column_width function
1808 (LIST_WIDTH): changed define to inline function.
1809 (real_resize_column): class function for resize_column signal
1810 (gtk_clist_motion): fixed autoscrolling for column resizes
1811 (gtk_clist_set_column_visibility): don't hide last visible column,
1812 changed visible arg to gboolean
1813 (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
1814 new functions : set min/max width of a column
1815 (gtk_clist_set_column_resizeable): new function : enable/disable
1816 column resize operations by mouse
1818 * gtk/gtkctree.c (draw_row): don't draw invisible columns
1819 (ctree_is_hot_spot): return FALSE if tree_column is invisible
1820 (draw_xor_line) (draw_xor_rect): draw full rectangle/line if
1821 tree_column is invisible
1822 (gtk_ctree_find_all_by_row_data)
1823 (gtk_ctree_find_all_by_row_data_custom): new function from
1824 Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
1825 GtkCTreeNodes with row->data == data.
1827 Tue Oct 6 14:05:00 1998 Tim Janik <timj@gtk.org>
1829 * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
1830 memory (Martin Pool <mbp@wistful.humbug.org.au>).
1832 Mon Oct 5 15:26:30 1998 Raph Levien <raph@gimp.org>
1834 * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
1835 should have been guint32. Thanks to Tristan Colgate for finding it.
1837 Sun Oct 4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1839 * gtk/gtkcalendar.h:
1840 gtk/gtkcalendar.c: More changes:
1841 - The day with focus is now seperated from the day selected
1842 - The day with focus has the xor's line around it
1843 - The selected day is now standard selected style
1844 - The week names and week numbers are now also drawn
1846 - Space now selects the day which has focus
1848 Sun Oct 4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1850 * gtk/gtkcalendar.h:
1851 gtk/gtkcalendar.c: Some significant changes, including:
1852 - No longer draw focus around entire widget, only around
1853 the day which has focus
1854 - Draw relief around entire widget like originally planned
1855 - Show header and day names by default
1856 - Move data private to the widget out of GtkCalendar struct
1857 and only point to it with a gpointer
1858 - Remove some old unused variables from GtkCalendar struct
1860 Sun Oct 4 17:45:43 BST 1998 Tony Gale <gale@gtk.org>
1862 * docs/gtk_tut.sgml: update I've had sat around:
1863 - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
1864 - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
1865 - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
1867 1998-10-01 Martin Baulig <martin@home-of-linux.org>
1869 * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
1871 * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
1872 Makes it possible to individually show and hide columns.
1873 (size_allocate_columns): Adapted to keep track of hidden columns.
1874 (size_allocate_title_buttons): Likewise.
1876 Sat Oct 3 17:54:48 1998 Tim Janik <timj@gtk.org>
1878 * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
1879 fundamental types, collect an argument of the type returned from
1880 gtk_type_get_varargs_type(). removed the first macro argument which
1881 was just the same as the fundamental type of the *arg passed to
1883 * gtk/gtkarg.c (gtk_args_collect):
1884 * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
1886 * gtk/gtktypeutils.h:
1887 * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
1888 gtk_type_get_varargs_type() to set and query the varargs collect
1889 type used for a fundamental type, registered outside of Gtk.
1891 * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
1892 GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
1895 * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
1896 GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
1899 Sat Oct 3 01:25:24 1998 Lars Hamann <lars@gtk.org>
1901 * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
1902 (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
1903 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
1905 (real_tree_expand) (real_tree_collapse):
1906 don't expand/collapse a leaf
1908 Fri Oct 2 16:10:36 1998 Tim Janik <timj@gtk.org>
1910 * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
1911 segfault when looking up a non-existant value name (reported by
1912 Pablo <pcj+gtk@primenet.com>).
1914 Thu Oct 1 10:40:20 1998 Tim Janik <timj@gtk.org>
1916 * gtk/gtkclist.h (gtk_clist_prepend):
1917 * gtk/gtkclist.c (gtk_clist_prepend): new function.
1918 (gtk_clist_insert): added g_return_val_if_fail()
1919 statements. accept a row parameter < 0 or > clist->rows to indicate
1921 (real_clear): first clean up all internal pointers and lists (e.g.
1922 clist->row_list or clist->rows), then delete the distinct rows. this
1923 is required because of destroy notifiers, we need to have all internal
1924 structures updated and be reentrant.
1926 * gtk/gtkcalendar.h:
1927 * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
1928 GtkCalendarClass signal methods.
1929 GtkType and macro fixups, put `void' into () prototypes, avoid C++
1930 style comments, indentation fixes, fixed some g_return_if_fail()
1932 (gtk_calendar_paint_header):
1933 (gtk_calendar_paint_day_names):
1934 (gtk_calendar_paint_week_numbers):
1935 (gtk_calendar_paint_main): made these static functions.
1936 (gtk_calendar_select_month):
1937 (gtk_calendar_select_day):
1938 (gtk_calendar_mark_day):
1939 (gtk_calendar_unmark_day):
1940 (gtk_calendar_get_date): signedness corrections, use guints
1942 (gtk_calendar_size_request): removed unused variables.
1944 Wed Sep 30 13:11:09 1998 Tim Janik <timj@gtk.org>
1946 * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
1947 widgets in the ->widgets_by_action list that have a callback
1948 defined (not only those with a callback_action!=0).
1950 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1952 * gtk/gtkcalendar.h:
1954 examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
1956 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1958 * gtk/gtkcalendar.h:
1960 examples/calendar: Added gtkcalendar widget and demo
1962 Sat Sep 26 06:15:34 1998 Tim Janik <timj@gtk.org>
1964 * gtk/gtkclist.c (gtk_clist_sort):
1966 (gtk_clist_unselect_all):
1967 (gtk_clist_select_all): adde g_return_if_fail() statements.
1969 Sat Sep 26 04:46:22 1998 Tim Janik <timj@gtk.org>
1971 * configure.in: set binary age and interface age to 0.
1973 * gtk/gtkspinbutton.h:
1974 * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
1975 gtk_spin_button_configure. gtk_spin_button_construct is still defined
1976 as an alias for gtk_spin_button_configure for source compatibility,
1977 but actuall use is deprecated.
1978 typeness corrections, i.e. gint->gboolean and gint->guint.
1979 added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
1980 GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
1981 GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
1982 GtkSpinButton::adjustment, GtkSpinButton::digits and
1983 GtkSpinButton::climb_rate.
1984 GtkType and macro fixups.
1986 Sat Sep 25 23:33:55 1998 Tim Janik <timj@gtk.org>
1988 * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
1989 the *real* geometry position of a window, taken possible window
1990 manager offsets into account.
1991 this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
1992 olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
1993 it does fail though for amiwm which adds windows to a pseudo root
1994 window, and for icewm by a small offset because it defines the
1995 geometry position whithin its border.
1997 * gtk/testgtk.c: added "saved position" test to figure how
1998 gdk_window_get_root_origin() interacts with window managers (repopup
1999 this window to figure ;).
2001 Wed Sep 23 06:09:19 1998 Tim Janik <timj@gtk.org>
2003 * configure.in: update to Gtk+ version 1.1.3, binary age 1,
2008 (gtk_object_unref): check for ->ref_count to be greater than 0 (the
2009 existing code was buggy in letting ->ref_count==0 pass through and
2010 then failing the living_objs_ht assertion).
2012 * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
2013 pixtext fields (Roman Pozlevich <roma@botik.ru>).
2015 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2017 * Released GTK+ 1.1.2
2019 Mon Sep 21 01:12:44 1998 Jay Cox (jaycox@earthlink.net)
2021 * gtk/Makefile.am: use $(PERL) instead of perl
2022 * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
2023 also much faster to render.
2025 Mon Sep 21 07:44:30 1998 Tim Janik <timj@gtk.org>
2027 * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
2028 the required memory block, rather than allocating it newly from
2029 scratch and doing a full-blown block copy on it.
2031 Mon Sep 21 02:30:06 1998 Tim Janik <timj@gtk.org>
2033 * NEWS file update for upcoming release of Gtk+ version 1.1.2,
2034 binary age 0, interface age 0.
2036 * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
2038 Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com>
2040 * ltmain.sh: Patch to libtool-1.2b to make --disable-static
2043 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
2045 * HACKING: indent other than GNU indent should be OK
2048 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
2049 instead of piping through indent. If indent wasn't
2050 found in ./configure don't bother indenting at
2053 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
2055 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
2057 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
2059 * gtk/Makefile.am: use $(AWK) instead of awk
2061 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
2063 * gtk/Makefile.am (gdk_headers):
2064 Remove references to $(top_srcdir).
2065 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
2066 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
2068 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
2070 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
2071 GData*object_data to cure compiler warnings.
2073 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
2077 * mkinstalldirs: updated to latest automake version
2079 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
2081 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
2082 (gtkinclude_HEADERS): ... here.
2083 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
2085 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
2087 * HACKING: added GNU indent, as it is now required to successfully
2088 build gtk+. Should this be detected in autoconf, possibly?
2090 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
2092 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
2093 change library versioning scheme to drop LT_RELEASE
2094 from the -l line, while keeping it in the soname.
2096 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
2098 * configure.in Makefile.in: define a MAINT-like variable REBUILD
2099 which is set if Perl and awk are found, and autogenerated sources
2100 can be rebuilt. Remove the auto-generated sources from
2103 Add dependencies so that the autogenerated sources are
2104 rebuilt if the files they depend on change.
2105 (This unfortunately currently results in the entire
2106 gtk/ directory being rebuilt when any header changes.
2107 Moving all enums to gtkenums.h would fix this.)
2109 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
2111 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
2112 gtk_object_set_data_destroy_by_id functions to set the destroy
2113 function pointer for an existing data portion.
2115 * gtk/gtkobject.c: removed the GtkObjectData implementation and
2116 made all gtk_object_*data* functions use the GLib equivalents.
2118 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
2120 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
2121 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
2122 (widget != NULL), otherwise radio button insertion will not work
2123 -- the widget argument is NULL for the first radio button in the
2126 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
2128 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
2129 of g_new to malloc(), added back in the one place where
2130 it actually mattered. #include <stdlib.h>.
2132 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
2134 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
2136 * gtk/gtkfilesel.c: Keep a list of directories in which we never
2137 want to stat the entries (like /afs), and assume everything in
2138 those directories is a subdirectory.
2140 - When following a path, try to open components even when
2141 we don't find them in their parent's directory to
2142 support automounters.
2144 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
2146 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
2147 a new size from the WM if we asked for the same size
2148 before and our request was rejected.
2150 * gtk/gtkwindow.c (gtk_window_configure_event): If
2151 in response to a request, we get a configure event
2152 with unchanged dimensions, send a synthetic expose
2153 since ForgetGravity won't expose our window.
2155 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
2157 * gtk/gtktext.c (adjust_adj): Change the way we
2158 set the adjustments on resize so that it tries to
2159 keep the beginning of the text in approximately
2162 Removed assertion that the above change made invalid.
2164 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
2166 * gtk/gtktext.c: - Save first_cut_pixels when switching
2167 sizes, so that if we switch to the _same_ size,
2168 we don't move lines around.
2170 - Make sure that the text area always has a size of at
2171 least 1x1, then do all computations when realized.
2173 - When fetching lines in recompute_geometry, make
2174 sure we fetch enough lines to cover the screen.
2176 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2178 * gdk/gdkimage.c: changed g_new()s to malloc()s and
2179 g_free()s to free()s to avoid mixing g_new()s with
2180 free()s. X itself uses free() on some of the
2183 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
2185 * gtkfilesel.c: Maintain a list of directories like
2186 /afs we know contain only directories, and avoid
2187 stat'ing files in those directories. (Because
2188 stat'ing all files in /afs is extremely expensive)
2190 To support automounters, try to open directories,
2191 even if we couldn't find them when reading their
2194 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
2196 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
2197 to allow the same gtk.m4 to work for 1.0.x and
2200 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
2202 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
2203 to set/unset the selectable flag of a single row.
2204 (gtk_clist_get_selectable): new function
2205 to get the state of the selectable flag
2207 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
2208 (gtk_ctree_node_get_selectable): clist analogons
2210 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
2212 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
2215 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
2216 bugs in the 4bit gray cases.
2218 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
2220 * configure.in: added -posix check for NeXTStep
2222 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
2223 a unique buffer for each thread.
2225 * docs/gtk-config.1: clarified copyright
2227 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
2229 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
2231 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
2233 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
2236 * ltconfig: use GLib's ltconfig which honours lcc.
2238 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
2240 * configure.in: comment the -std1 check and save LIBS properly
2242 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
2244 * gtk/testrgb.c: #include <stdlib.h>
2246 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
2248 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
2249 When the pointer is grabbed on an input window,
2250 either explicitely, or through press-grab, and
2251 then grabbed on a non-input window, ungrab the
2254 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
2256 * gtk/gtktypeutils.h: don't include any gdk headers.
2257 added structure definitions for GtkTypeObject and GtkTypeClass,
2258 which cover the very basic fields of GtkObject and GtkObjectClass,
2259 which are actually used by the type system.
2261 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
2262 we only refer to our own structures. improved class inheritance
2263 sanity checking a bit.
2265 * gtk/gtkobject.h: placed appropriate comments at the beginnings
2266 of the GtkObject and GtkObjectClass structures, which explain
2267 their relationship to GtkTypeObject and GtkTypeClass.
2269 * gtk/gtktypeutils.h:
2271 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
2272 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
2273 gtkobject.h to gtktypeutils.h.
2277 removed gtk_object_check_cast() and gtk_object_check_class_cast()
2278 functions. to keep source compatibility, we can provide macro aliases
2279 for the corresponding gtk_type_* functions. but then again, people
2280 shouldn't have been using these functions anyways since they were part
2281 of Gtk's internal API.
2283 * gtk/gtktypeutils.h:
2284 * gtk/gtktypeutils.c:
2285 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
2286 functions to check GtkTypeObject and GtkTypeClass types.
2288 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
2291 * gtk/gtkctree.c: `const' fixups.
2294 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
2296 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
2297 if it is passed as NULL.
2299 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
2301 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
2302 big-endian cases. Added a 4bpp packed gray mode (somewhat
2303 incorrectly hardwired to MSB), which should take care of
2306 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
2308 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
2309 GtkSIgnalQuery leak.
2311 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
2313 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
2314 GTK_MENU_DIR_CHILD: check for the existance of
2315 menu_shell->active_menu_item before accessing its child.
2317 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
2318 don't, make a default selection.
2320 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
2322 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
2323 the children with _forall for sensitivity changes and with
2324 _foreach on pure state changes. this fixes a lot of the
2325 old inclusions of internal widgets into _foreach calls.
2327 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
2328 do the work. don't walk the subtrees of first level children.
2330 * gtk/gtktreeitem.c: provide a _forall implementation,
2331 which walks the subtrees as well for include_internals.
2333 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
2334 the submenus as well for include_internals.
2336 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
2337 implemented gtk_scrolled_window_forall, which will iterate over
2338 the viewport and the scrollbars for gtk_container_forall or
2339 iterate over the viewports children for gtk_container_foreach.
2345 * gtk/gtkmenushell.c:
2351 * gtk/gtknotebook.c:
2352 removed the old gtk_*_foreach functions and provided gtk_*_forall.
2354 * gtk/gtknotebook.c:
2355 (gtk_notebook_real_switch_page): expose tabs.
2356 (gtk_notebook_page_num): new function to return the page number
2357 of a distinct child.
2358 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
2359 under some circumstances.
2361 * gtk/gtktreeitem.c:
2362 (gtk_real_tree_item_select):
2363 (gtk_real_tree_item_deselect): major fixes.
2364 some general fixups wrt queue_redraw, and tree items not being
2367 * gtk/gtklistitem.c:
2368 (gtk_real_list_item_select):
2369 (gtk_real_list_item_deselect):
2370 (gtk_real_list_item_toggle):
2371 removed unneccessary queue_redraw calls.
2373 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
2375 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
2376 automatically popup the menu on space bar.
2378 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
2380 * gtk/gtkcontainer.h:
2381 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
2382 method), which acts similar to gtk_container_foreach(), but iterates
2383 over internal children. the GtkContainer::foreach signal vanished in
2384 favour of a new class method ->forall() that optionally includes
2387 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
2388 but a _forall implementation, since all child widgets we have are
2390 (column_button_create): set the parent window prior
2391 to gtk_widget_set_parent().
2394 exchanged all calls to gtk_container_foreach() with
2395 gtk_container_forall().
2398 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
2399 the GtkWidget::composite_child argument. to have a widget created
2400 with the flag initially, two new functions got added to wrap a widgets
2402 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
2404 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
2406 * gtk/gtktooltips.h:
2407 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
2408 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
2409 prior to the first tip being set.
2410 don't put an extra reference on the window, since it is a toplevel,
2411 it wont get destroyed from anywhere else.
2413 * overall macro and GtkType fixups.
2415 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
2417 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
2418 constructs by more forgiving ones. (Does anyone else feel like
2419 the color selector need rewriting?).
2421 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
2423 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2426 * gtk/gtkmenu.c: Modified reference counting so
2427 that the reference count from the toplevel that
2428 the menu creates to the menu is invisible to the
2431 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
2433 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
2434 conversion selection logic, so Suns and other big-endian
2435 machines should get faster conv routines. This is also the
2436 point where 4bpp gray and 1bpp are checked in, although I
2437 wouldn't be surprised if 1bpp is a little buggy. This is
2438 synchronized with the 0.0.7 release of GdkRgb.
2441 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
2442 appropriate change to the Makefile.am
2444 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
2446 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
2447 which is good for images that scroll (makes the dither patterns
2450 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
2453 (gdk_colormap_new) (gdk_colormap_get_system):
2454 quell some warnings with g_hash_table_new
2456 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
2457 when we're done with it
2459 * gtk/itemfactory.c:
2460 (gtk_item_factory_from_path):
2461 (gtk_item_factory_create_item): free some strings
2464 (gtk_label_finalize): free label->pattern when done
2465 (gtk_label_parse_uline): null terminate pattern string, delete
2466 some duplicated code
2468 * gtk/testthreads.c: add #include <unistd.h> for sleep()
2470 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
2472 * gtk/gtktext.c (recompute_geometry): Make sure the
2473 mark we pass to line start is the beginning of a
2474 real line, not a wrapped one.
2476 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
2478 * gtk/gtktext.c: Reference count the fonts used in
2481 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
2482 freeing functions to be more consistent, and more
2483 convenient; leave the old names in for backwards compatibility.
2485 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
2486 allocations in pseudo-color colormaps to greatly reduce
2487 calls to XAllocColor. Keep a per-colormap hashtable to
2488 speed up finding if there is an already-allocated matching
2491 * gdk/gdkcolor.c: Don't just match read the system colormap
2492 when the colormap is created, but synchronize our copy
2493 with the system colormap periodically.
2495 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
2496 Change XIM constants names to match GDK conventions
2498 * gtk/testinput.c: Allow the drawing area to get the focus.
2500 * gtk/testgtk.c: Change around the Text test to demonstrates
2501 multiple fonts, use more colors.
2503 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
2504 so they work after a widget is unrealized.
2506 * gtk/gtktext.[ch]: Remove the requirement that the text
2507 widget be realized before adding text (!) Allocate colors
2508 ourself, instead of requiring the caller allocate them.
2509 Allow changing styles to work properly by keeping track
2510 of the values for a certain property are default or
2513 * gtk/gtkmenu.h: Added some comments.
2515 * gtk/gtkentry.c: Changes to match XIM constants.
2517 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
2518 for adding keyed data to drawables. (Uses g_dataset
2521 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
2522 when creating an XPM - store them as user data for the GdkPixmap,
2523 so we don't leak colors when we create pixmaps from XPM's.
2525 Allocate memory for color information in large blocks instead of
2526 as many little pieces.
2528 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
2530 * gdk/gdkrgb.c: removed some unused variables
2533 * gtk/gtkmain.c: #if 0'd out some unused code
2535 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
2537 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
2545 * gtk/gtkcontainer.h:
2546 * gtk/gtkcontainer.c:
2551 (gtk_container_add_with_args):
2552 (gtk_container_child_set):
2553 begin the parameter elipsis (...) after the first argument name. this
2554 change is source compatible, since it was always required, even as NULL.
2556 (gtk_object_args_collect):
2557 (gtk_container_child_args_collect):
2558 changed prototypes to pass first_arg_name, also, pass va_list variable
2559 by value (portability concerns). callers changed.
2561 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
2562 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
2563 can't pass va_list variables by reference for portability reasons.
2565 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
2567 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
2568 get_visual calls, so that it gets implicitly initialized.
2570 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
2571 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
2572 such as GtkCTree function name changes
2574 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
2577 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
2578 binary version check, returning a static string for error descriptions,
2581 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
2583 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
2584 computed our geometry yet, and if not, ignore the request.
2586 * gtk/gtktext.c (correct_cache_insert): Fiddled around
2587 some more. All the bug-test codes seem to work at once
2588 now. (fingers crossed...)
2590 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
2592 * gdk/gdkrgb.c: silly visual fixes
2594 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
2597 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
2599 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
2600 anything if the event's window is not the bin window.
2601 (gtk_handle_box_motion): Likewise.
2603 1998-08-19 Raph Levien <raph@gimp.org>
2605 * gtk/testgtk.c (create_color_preview): pushed the colormap and
2606 visual so it would work better with GdkRgb.
2608 1998-08-19 Raph Levien <raph@gimp.org>
2610 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
2611 4bpp static_color mode (for vga displays). Also fixed a '64' value
2612 in the dither matrix, which was causing one pixel out of 16k to be
2615 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
2616 most of the contents. This is an API change - any apps that relied
2617 on the internal structure of GtkPreview will need some change -
2618 most notably in the use of reserved colors. The Gimp needed
2619 changes in this regard.
2621 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
2623 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
2624 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
2625 --g-fatal-warnings), noticed by miguel.
2627 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
2629 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
2637 * gtk/gtkitemfactory.c:
2638 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
2640 * gtk/gtkselection.c:
2644 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
2646 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
2648 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
2650 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
2651 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
2652 in case of show_tabs == NULL
2654 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
2656 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
2657 to --g-fatal-warnings again. this option now causes log levels of
2658 WARNING and CRITICAL to abort().
2667 * gtk/gtktypeutils.c:
2673 * gtk/gtkselection.c:
2676 * gtk/gtktreeitem.c:
2677 did a global search&replace to substitute g_print() calls with
2678 g_message(). libraries shouldn't use printf(), g_print() or
2679 g_printerr() at all.
2680 a bunch of the replacements should probably be wrapped into the
2681 G{D|T}K_NOTE() macros, so they are special cased for debugging
2682 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
2685 * gdk/gdkdnd.c: added copyright notice.
2687 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
2689 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
2690 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
2691 running a PII 233. It's synced with the 0.0.5 release of
2694 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
2697 (struct _GtkCListClass): new class methods:
2698 (sort_list) (insert_row) (remove_row) (set_cell_contents)
2701 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2702 removed and replaced by (set_cell_contents)
2703 (set_cell_contents): function for class method set_cell_contents
2704 (real_insert_row): function for class method insert_row
2705 (real_remoce_row): function for class method remove_row
2706 (real_sort_list): function for class method sort_list
2707 (default_compare): fix to avoid problems with cell types != CELL_TEXT
2710 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
2711 (gtk_ctree_node_is_visible): new function to return visibility state
2713 (gtk_ctree_show_stub): new function to set visibility of root stub
2716 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
2717 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
2718 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
2719 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
2720 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
2721 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
2722 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
2723 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
2724 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
2725 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
2726 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
2727 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
2728 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
2729 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
2730 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
2731 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
2732 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
2733 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
2734 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
2737 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2738 removed and replaced by (set_cell_contents)
2739 (set_cell_contents): function for class method set_cell_contents
2740 (real_insert_row): function for class method insert_row
2741 (real_remoce_row): function for class method remove_row
2742 (real_sort_list): function for class method sort_list
2743 (default_compare): removed. CTree now also compares two GtkCTreeRows
2744 instead of two GtkCTreeNodes.
2745 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
2747 (real_tree_expand) (real_tree_collapse): fix for refcounting of
2749 (set_node_info): call gtk_ctree_node_set_pixtext instead of
2750 manipulating the row itself
2752 * gtk/testgtk.c: use renamed functions of GtkCTree.
2753 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
2756 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
2758 * gtk/gtkmain.c: removed gtk_input_add_interp.
2760 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
2762 (gtk_editable_get_event_time): fix default: case.
2764 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
2766 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
2769 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
2772 * various minor compilation cleanups, such as bogus commas in
2773 enums and similar things.
2775 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
2777 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
2780 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2782 * NEWS: updated for 1.1.2
2783 * gtk+.spec: version = 1.1.2
2785 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
2787 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
2788 times. changed --gtk-with-module to --gtk-module at owen's request.
2790 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
2792 * gtk/gtkmain.c (gtk_init): feature a new commandline option
2793 --gtk-with-module=<module> that allows additional loading and
2794 initialization of modules (e.g. GLE).
2796 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
2798 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
2799 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
2801 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
2802 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
2803 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
2804 different *-fatal-* arguments now. this needs to be revised and
2805 compressed to a reasonable amount of arguments.
2807 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
2809 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
2810 "--g-fatal-warnings" causes fatal warnings in GLib,
2811 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
2812 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
2814 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
2815 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
2819 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
2820 since automake doesn't support per target _CFLAGS yet.
2822 * configure.in: require GLib 1.1.3.
2824 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
2826 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
2827 to set a callback to test if a node in drag can be dropped onto
2828 it's currrent location.
2829 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
2830 to change the pointer when a drag destination is not allowed.
2832 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
2834 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
2835 speeds up the 565_d case by about 25% total. Thanks Ray!
2837 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
2839 * Changed GtkSignalFunc back to () from (void). (again!)
2841 * Added file README.cvs-commits
2843 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
2845 * docs/gtk_tut.sgml:
2846 - Tidy up of the menufactory example from
2847 Andy Kahn <kahn@zk3.dec.com>
2848 - New section on Range Widgets from
2849 David Huggins-Daines <bn711@freenet.carleton.ca>
2850 - Started a new section on 'Advanced Event and Signal
2851 Handling' - used an email from Owen.
2852 - New appendix on Gdk Event Types
2853 - Added the tictactoe full example code to the
2854 'Code Examples' appendix
2856 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
2858 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
2859 to calculate all the metrics at once of a string, including
2860 things which weren't calculated before.
2862 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
2863 MenuItem type, that when put as the first thing in a
2864 menu, makes the menu tearoff. Currently drawn as a
2867 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
2868 "hide_on_activate" to the MenuItem class structure to allow
2869 check and radio buttons to be changed with <Space> without
2872 * gtk/gtkitemfactory.c:
2873 - Create a AccelGroup for each MenuShell we create.
2874 - If an '_' appears before a character 'c' in the path,
2875 then make 'c' an accelerator in the menu's accel group,
2876 and if the menuitem is menubar <alt>C an accelerator
2877 in the itemfactory's accel group. Double '__' inserts
2880 * gtk/gtklabel.[ch]: Add support for a pattern arg -
2881 which is a string. If an '_' appears in this string,
2882 the corresponding position in the label is underlined.
2884 Add gtk_label_parse_uline() convenience function which
2885 takes a string with embedded underlines, sets the
2886 pattern and label, and returns the accelerator keyval.
2888 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
2889 Instead, they create a GtkWindow and add themselves
2890 to that. (When torn off, another new feature, they
2891 create another GtkWindow to hold the torn off menu)
2893 New function gtk_menu_set_tearoff_state()
2895 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
2896 Added action signals for keyboard navigation of menus.
2898 * gtk/gtkmenushell.c: Key press handler which activates
2899 bindings for navigation, and accelerators, for handling
2900 underline accelerators. Exported functions to select
2901 and activate menu items in a menushell.
2903 * gtk/testgtk.c: Added a new "Item Factory" test which
2904 tests GtkItemFactory and the new keyboard navigation
2907 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
2909 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
2910 external functions have been called. also relookup nodes after
2911 this function has been invoked.
2913 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
2915 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
2916 beginning of Text when creating the Text widget.
2918 * gtk/testgtk.c: Grab the focus on the text widget so
2919 as to test out the above.
2921 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
2923 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
2924 ::changed is a notification signal and should have no default
2925 handler. A complete redraw of the Text widget does _not_ need to
2926 be done on every text insertion.
2928 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
2929 (gtk-abilleira-072198-patch)
2931 * gtk/gtkwindow.[ch]:
2932 Add gtk_window_set_modal() which sets a flag; when
2933 set the window does a gtk_grab_add() when the window
2934 is shown, and a gtk_grab_remove() when the window
2937 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
2938 that case will run "Create Dir","Delete File" and "Rename File"
2939 dialogs as modal too.
2941 * gtk/testgtk.c: Added a button with an example of creating modal
2942 dialog boxes. Including file selection and color selection standard
2945 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
2947 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
2948 Removed CAN_FOCUS by default from scrollbars, button
2949 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
2950 (Scrollbar definitely good change, toolbar bit more questionable)
2952 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
2954 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
2957 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
2959 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
2960 added all logical operations to gc->function.
2962 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
2964 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
2965 gtk_widget_size_allocate instead of gtk_widget_queue_resize
2966 if the visibility state of a scrollbar changes.
2968 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
2970 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
2972 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
2974 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
2975 gtk_clist_merge and gtk_clist_mergesort. :)
2977 1998-08-06 Martin Baulig <martin@home-of-linux.org>
2979 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
2980 `mergesort' -> `my_mergesort'.
2982 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
2984 * gtk/gtkenums.h: new enum GtkSortType.
2988 Added sorting capabilities to GtkCList. New APIs :
2989 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
2990 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
2991 New internal functions : default_compare, merge, mergesort.
2993 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
2995 (gtk_clist_insert): Modified to handle gtk_clist_append and the
2996 auto sort flag. Changed the return value from void to gint to
2997 return the row number where the element was actually inserted.
2999 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
3003 Removed the auto_sort flag, replaced ctree->node_compare with
3004 clist->compare all over the place, modified default_compare to
3005 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
3006 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
3008 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
3009 sorting. The lists can be sorted by a column by clicking the
3010 corresponding title button.
3012 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3014 * Released GTK+ 1.1.1
3016 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
3020 (gtk_ctree_find): changed to return a gboolean
3021 (gtk_ctree_insert_gnode): new function for recursive insertion of a
3023 (gtk_ctree_real_select_recursive): fix for extended selection
3024 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
3025 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
3027 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
3029 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
3030 GLib version 1.1.1 is now required at minimum.
3032 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
3033 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
3035 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
3037 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
3038 cursor before (possibly) deleting the cursor's text
3041 * gtk/gtktext.c (correct_cache_delete): More attempts
3042 to clean the line-start cache up after inserting
3043 a property. Among other things, make sure to
3044 fix up text->current_line, since it is used to
3045 refetch the changed lines.
3047 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
3049 * gtk/gtktable.[ch]: Empty rows/columns of the table
3050 should not have been marked as being able to shrink.
3051 (Fixes problem with shrinking scrollbarless GIMP canvases)
3053 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
3055 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
3056 function to find a row by its data pointer using a custom
3057 comparison function.
3059 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
3061 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
3062 this fixes a bug when the whole widget is made non-sesitive
3063 the buttons weren't redrawn
3065 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
3067 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
3068 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
3069 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
3071 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
3073 * gdk/gdkwindow.c (gdk_window_reparent): Change
3074 window_private->parent pointer when reparenting.
3076 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
3078 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
3079 with the standalone release.
3081 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
3083 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
3084 (gtk_clist_button_release) (new_column_width): Few fixes for
3085 column resize. Store resize column in clist->drag_pos.
3087 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
3091 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
3092 to GtkCTreeNode *node.
3094 * gtk/gtklist.h : added extended selection mode and auto scrolling.
3095 (struct _GtkList): removed unneeded variables timer, button,
3096 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
3097 Added new variables undo_selection, undo_unselection, last_focus_child,
3098 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
3099 drag_selection, add_mode.
3102 (gtk_list_extend_selection), (gtk_list_start_selection),
3103 (gtk_list_end_selection), (gtk_list_select_all),
3104 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
3105 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
3106 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
3107 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
3110 (gtk_list_enter_notify): removed, because auto scrolling now works
3111 with gtk_list_motion_notify
3113 New functions, needed for auto scrolling :
3114 (gtk_list_motion_notify) (gtk_list_move_focus_child)
3116 New functions for extended selection support :
3117 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
3118 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
3119 (gtk_list_focus_lost)
3121 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
3122 function to support auto scrolling, and avoid out-of-sync errors in
3123 case auf GTK_SELECTION_BROWSE
3124 (gtk_list_focus): modified gtk_container_focus function to avoid out
3125 off sync errors in case auf GTK_SELECTION_EXTENDED
3128 * gtk/gtklistitem.c :
3129 New signal functions for key binding support :
3130 (toggle_focus_row), (select_all), (list_item), (unselect_all)
3131 (list_item), (undo_selection), (start_selection), (end_selection)
3132 (extend_selection), (scroll_horizontal), (scroll_vertical),
3134 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
3135 GDK_KEY_RELEASE_MASK
3136 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
3139 (gtk_combo_popup_button_press): grab pointer for combo->list
3140 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
3141 (gtk_combo_list_key_press): take care of which child HAS_GRAB
3142 (gtk_comb_init): don't connect combo->button with button_release_event
3144 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
3146 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
3148 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
3150 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
3151 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
3152 with horizontal and vertical autoscrolling.
3154 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3156 * gtk/docs/man: new directory
3157 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
3159 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
3161 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
3164 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
3166 * docs/gtk_tut.sgml: GtkTree section from
3167 David Huggins-Daines <bn711@freenet.carleton.ca>,
3168 add a GtkText widget example
3169 * examples/text/* example/tree/* : new examples for the
3170 GtkTree and GtkText widgets
3171 * docs/gtk_tut.sgml: added an appendix to hold complete code
3172 examples that aren't in a full form elsewhere in the
3173 tutorial (e.g. scribble)
3175 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3177 * Released GTK+ 1.1.0
3179 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
3181 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
3182 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
3184 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
3186 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
3187 values are looked up.
3189 * gtk/gtktypeutils.h:
3190 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
3191 gtk_type_enums_find_value to lookup enum values.
3194 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
3195 GtkCTreeExpansionType. fixed signal creations to pass the enum
3196 types not just the base type GTK_TYPE_ENUM.
3199 * gtk/gtkclist.c: fixed signal creations to pass the real enum
3200 types not just the base type GTK_TYPE_ENUM.
3202 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
3205 Began cleanup, e.g. use gtk_widget_show_all instead of many
3206 gtk_widget_show's. Completely rewrote the button box sample
3207 (only one window now). Removed "miscellaneous" button.
3209 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
3211 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
3212 Fixed wrong allocation for GTK_BUTTONBOX_END.
3213 (allocation->x => allocation->y)
3215 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
3217 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
3218 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
3220 * gtk/gtkctree.c (real_tree_select): added check to avoid double
3222 (gtk_ctree_button_press)
3223 (gtk_ctree_button_release): fix for pointer grab
3225 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
3227 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
3228 Fixed initialization problem - dirty memory could cause problems.
3229 Also checked that bitmapped fonts can be scaled when showing the
3232 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
3234 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
3235 (gtk_ctree_sort_recursive): test for node != NULL
3236 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
3237 (gtk_ctree_last) : added sanity checks
3238 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
3240 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
3242 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
3244 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
3246 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
3248 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
3250 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
3251 to check out binding priorities. someone should really write
3252 gtkrc-mode for emacs.
3254 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
3255 * gtk/testgtk.c (main): and move it here ;). this test says something
3256 on release of C-9. (this works only if the mouse pointer is on a
3257 spinbutton and there is no focus widget).
3261 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
3262 gtk_rc_parse_priority to parse path priority types.
3264 feature binding parsing.
3266 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
3268 * gtk/gtkbindings.h:
3269 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
3270 feature binding parsing in rc files.
3271 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
3272 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
3273 order the bindings with lowest priority first.
3275 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
3277 * gdk/gdkrgb.c: actually builds and runs properly on big
3278 endian machines now, because we #include config.h. Also
3279 fixed up a compile error in the WORDS_BIGENDIAN case in
3280 gdk_rgb_convert_565_gray. I made the fix by looking at
3281 patterns in the other code; Raph can you verify this?
3283 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
3286 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
3288 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
3289 (tree_toggle_expansion) (real_select/unselect_row)
3290 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
3292 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
3294 * gtk/gtktext.c (new_text_property): We free things from
3295 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
3297 * Fix up line start cache when splitting a property
3300 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
3302 * gtk/gtkwidget.c: restauration => restoration
3304 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
3306 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
3307 hasn't been created yet, don't do the lookup.
3309 1998-07-20 Raph Levien <raph@acm.org>
3311 * gdk/gdkrgb.c: More cleanups in the config process.
3313 1998-07-20 Raph Levien <raph@acm.org>
3315 * gdkrgb.c: Fixed minor config bug preventing big-endian
3316 architectures from working.
3318 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
3320 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
3321 activity indicator. It is settable now as a fraction of the
3322 total width/height using gtk_progress_bar_set_activity_blocks.
3323 Renamed gtk_progress_bar_set_number_of_blocks to
3324 gtk_progress_bar_set_discrete_blocks.
3326 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
3328 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
3329 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
3330 tree to specified depth
3331 (gtk_ctree_expand_to_depth): expand tree to specified depth
3332 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
3334 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
3336 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
3337 of GTK_CLIST_ADD_MOD
3338 * gtk/testgtk.c (add1000_clist): changed pixmap
3340 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
3343 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
3345 * gtk/gtktypeutils.h:
3346 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
3348 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
3350 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
3351 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
3352 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
3354 (gtk_notebook_reorder_child): new funktion to change position of a
3356 (gtk_notebook_draw_arrow): draw left/right arrow with
3357 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
3359 * gtk/gtkstyle.c (gtk_default_draw_arrow):
3360 added GTK_SHADOW_ETCHED_IN/OUT
3362 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
3364 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
3365 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
3366 Introduced generic GtkProgress widget. Derived GtkProgressBar from
3367 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
3369 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
3371 * gtk/gtktypeutils.h
3372 * gtk/gtkitemfactory.h: explicitly specify void in prototype
3374 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
3376 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
3379 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
3381 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
3382 sropped the approach of copying all signal specific data into a
3383 GtkHandlerInfo structure. we rather keep the signal data on the stack
3384 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
3385 avoids multiple lookups of the signal pointer and works savely together
3386 with destroy notifiers of handlers.
3388 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
3389 someone destroys the entry on the ::activate signal.
3391 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
3393 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
3394 instead of ypad (typo).
3395 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
3396 border around the allocation).
3397 (gtk_arrow_init): the static requisition needs to be setup in this
3398 function rather than gtk_widget_new(), so arrow creation works without
3399 the gtk_arrow_new() constructing.
3400 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
3402 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
3403 implementation for GtkWidget::size_request, so size requisition for
3404 simple statically sized widgets like GtkArrow works.
3406 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
3408 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
3409 prepend -I@libdir@/glib/include anymore, since glib-config handles
3410 it; --libs strips out redundant -L<path>'s properly (there was
3411 code in there to do it before, but it didn't work)
3413 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
3415 * gtk/gtknotebook.h:
3416 * gtk/gtknotebook.c: signdness corrections all ove the place.
3417 implementation of object arguments: GtkNotebook::enable_popup,
3418 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
3419 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
3420 begun implementation of child args, we have GtkNotebook::tab_label, but
3421 GtkNotebook::menu_label and GtkNotebook::position still lack the
3423 (gtk_notebook_remove_page):
3424 (gtk_notebook_current_page): allow negative indices (-1) as alias for
3428 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
3429 arguments GtkEntry::max_length and GtkEntry::visibility.
3430 (gtk_entry_adjust_scroll): queue a redraw.
3432 * gtk/gtkeditable.h:
3433 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
3434 object arguments GtkEditable::text_position and GtkEditable::editable.
3435 new (action) signal GtkEditable::set_editable.
3436 provide a default handler for GtkEditable::changed that queues a redraw.
3439 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
3442 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
3444 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
3445 case of drag_target == NULL
3446 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
3447 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
3448 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
3449 gtk_dir_selection_file_button): fix due to changes in clist's
3452 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
3455 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
3456 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
3457 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
3458 to be gint16s rather than guint16s, since that's what the code expected
3459 (for a long time actually).
3461 * gtk/gtkviewport.c:
3462 added support for object arguments: GtkViewport::shadow_type,
3463 GtkViewport::vadjustment and GtkViewport::hadjustment.
3464 (gtk_viewport_add): chain gtk_bin_add.
3466 * gtk/gtkscrolledwindow.c:
3467 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
3468 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
3470 * gtk/gtkadjustment.h:
3471 * gtk/gtkadjustment.c:
3476 * gtk/gtkscrolledwindow.h:
3477 * gtk/gtkscrolledwindow.c:
3478 * gtk/gtkviewport.h:
3479 * gtk/gtkviewport.c:
3480 GtkType and macro fixups.
3482 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
3486 Added focus handling, horizontal and vertical autoscrolling,
3487 extended Selection Mode, key bindings
3488 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
3489 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
3490 Removed gtk_ctree_clear.
3494 Added focus handling, horizontal and vertical autoscrolling,
3495 extended Selection Mode, key bindings
3497 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
3499 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
3500 source tree. For more information on GdkRgb, please see:
3501 http://www.levien.com/gdkrgb/
3503 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
3504 bothers me slightly that the feature is in gdk, and this file is
3505 in gtk, but it's probably ok.
3507 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
3510 * gdk/gdkrgb.h: Added this module.
3512 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
3514 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
3516 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
3518 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
3519 to this function. it needs to relookup the signal multiple times.
3520 this fixes spurious segfaults that could show up with signal intensive
3521 code, when classes are created during a pending emission (which is
3524 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
3526 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
3527 child if it isn't a label.
3529 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
3532 * gtk/gtkseparator.h:
3533 * gtk/gtkhseparator.h:
3534 * gtk/gtkvseparator.h: macro and GtkType fixups.
3536 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
3538 * gtk/testgtk.c (create_cursors): display the current cursor name.
3540 * gtk/gtktypeutils.h:
3541 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
3542 the fundamental type definition. the GtkArg union now only covers
3543 the required storage types for argument values. adapted the GTK_VALUE_*
3544 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
3546 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
3547 code, fixed int/float collection. fixed a bug in the sanity checking
3548 code for GtkObjects.
3550 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
3551 argument collection code.
3553 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
3554 macros when distinguishing the return type.
3556 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
3558 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
3559 is not NULL before trying to g_list_remove the child. A patch
3560 from Michael Lausch.
3562 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
3564 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
3565 collection (always casted to doubles upon argument passing).
3567 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
3569 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
3570 object_init_func for derived objects with the object's ->klass field
3571 still pointing to the corresponding base class, otherwise overridden
3572 class functions could get called with partly-initialized objects.
3573 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
3575 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
3579 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
3581 * gtk/gtkcontainer.h:
3582 * gtk/gtkcontainer.c:
3583 (gtk_container_child_arg_get_info): new function which wraps
3586 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
3588 * gtk/gtkcontainer.c:
3589 (gtk_container_arg_get):
3590 (gtk_container_arg_set):
3592 (gtk_object_arg_set):
3593 (gtk_object_arg_get):
3594 strictly check for the associated get/set arg functions. if an
3595 arg is readable or writable, the associated class functions *must*
3598 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
3600 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
3601 padding into account if there is an accelerator.
3603 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
3605 * gtk/gtkcontainer.c:
3606 (gtk_container_add_with_args): collect the arguments with
3607 gtk_container_child_args_collect, not through gtk_object_args_collect.
3608 (gtk_container_child_set): likewise.
3610 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
3612 * gtk/gtktypeutils.h:
3613 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
3614 which is derived from GTK_TYPE_STRING.
3616 * gtk/gtkbindings.c: reworked the argument type handling.
3618 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3620 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
3621 so that it seems to allow normal operation in those modes,
3622 although you will only see black (GIMP toolbar now pops up,
3623 just don't create a new image and GIMP now works in 4 bit.)
3625 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3627 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
3628 array, which was too low (?)
3630 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
3632 * gtk/gtkcontainer.h:
3633 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
3634 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
3635 we now export a new function gtk_container_child_args_collect().
3636 for consistency with the object arguments, a few functions got renamed:
3637 gtk_container_child_arg_get -> gtk_container_child_get,
3638 gtk_container_child_arg_set -> gtk_container_child_set,
3639 gtk_container_child_arg_getv -> gtk_container_child_getv,
3640 gtk_container_child_arg_setv -> gtk_container_child_setv,
3641 gtk_container_add_with_argv -> gtk_container_addv.
3642 note, gtk_container_add_with_args() remained, because its equivalent
3643 would be gtk_container_add(,, ...) which would break all existing code.
3644 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
3645 we expect the `arg_name' argument to be a const static string now.
3646 (gtk_container_get_child_arg_type): function removed.
3648 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
3650 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
3651 this is a static inline function that collects command line arguments
3652 from a va_list. this file can just be included in all places that
3653 need this functionality.
3656 * gtk/gtkarg.c: new files which implement most of the argument
3657 handling stuff from gtkobject.c. also collected a few more
3658 gtk_arg_* utility functions from else places.
3661 * gtk/gtkobject.c: moved most of the argument handling code into
3662 gtkarg.c. we now export gtk_object_args_collect() as a non-public
3663 method with a blind va_list pointer.
3664 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
3665 const static string now.
3666 (gtk_object_get_arg_type): function got removed.
3670 (gtk_widget_new): adaptions for gtk_object_args_collect().
3672 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
3673 fundamental type name so as to have a valid prefix, e.g. "bool"->
3674 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
3675 though that should probably be something like GtkNone since the
3676 type itself is called GTK_TYPE_NONE.
3677 even the internal type names need to avoid name clashes and must live
3678 in their own namespace, several code portions rely on that.
3679 we should relly have typedefs such as typedef gchar* GtkString; so the
3680 fundamental type names can be used for code dumpers just like with all
3683 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
3685 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
3686 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
3687 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
3689 (gtk_button_paint): set the background for prelighted buttons with
3690 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
3691 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
3692 the shadow type (otherwise we get strange shadows for coloured buttons).
3693 (gtk_button_set_relief): queue a redraw after changing
3695 (gtk_button_class_init):
3696 (gtk_button_set_arg):
3697 (gtk_button_get_arg): added object argument "GtkButton::relief".
3699 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
3701 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
3704 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
3705 GTK_BIN (button)->child to button->child to keep source compatibility.
3707 * gtk/gtkoptionmenu.c:
3709 * gtkcheckbutton.c: don't refer to button->child, but
3710 GTK_BIN (button)->child instead.
3712 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
3714 * docs/gtkfaq.sgml: update anon CVS info
3716 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
3718 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
3722 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
3725 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
3727 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
3728 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
3730 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
3732 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
3734 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
3737 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
3739 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
3740 error that prevented signal to entry addition for signals with
3743 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
3745 * ltconfig: fix for properly detecting shared lib support on
3746 SunPro cc (taken from libtool 1.2.a)
3748 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
3750 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
3752 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
3754 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
3755 rc set pattern is favoured, this is needed for overriding of style
3756 patterns with subsequently parsed rc files.
3758 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
3760 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
3763 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
3765 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
3767 (gtk_accelerator_name): add "<Release>" to the accelerator name if
3770 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
3773 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
3774 default handler for key-release events, which checks for activation
3775 of GDK_RELEASE_MASK key bindings.
3777 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
3779 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
3781 * gtk/gtkarrow.h: GtkType and macro fixups.
3782 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
3783 "GtkArrow::shadow_type".
3785 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
3787 * gtk/gtkalignment.h:
3788 * gtk/gtkbin.h: GtkType and macro fixups.
3790 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
3791 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
3792 GtkAlignment::xscale, GtkAlignment::yscale.
3794 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
3796 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
3797 fucntions from all parent types upon class initialization.
3799 * gtk/gtkcontainer.c:
3800 (gtk_container_get_type): announce gtk_container_base_class_init to
3802 (gtk_container_base_class_init): new function to feature base class
3804 (gtk_container_get_child_arg):
3805 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
3806 and set_child_arg methods of the class indicated through the argument
3810 (gtk_object_base_class_init): new function to feature base class
3812 (gtk_object_init_type): announce gtk_object_base_class_init to the type
3814 (gtk_object_class_init): setup the get_arg and set_arg pointers for
3817 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
3818 instead of bothering the type system with this.
3820 * gtk/gtkaccellabel.c:
3822 * gtk/gtkradiobutton.c:
3824 * gtk/gtktogglebutton.c:
3825 * gtk/gtktipsquery.c:
3832 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
3833 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
3834 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
3835 arg functions to take a GtkObject argument.
3837 gtk/gtkadjustment.c:
3840 gtk/gtkaspectframe.c:
3843 gtk/gtkcheckbutton.c:
3844 gtk/gtkcheckmenuitem.c:
3852 gtk/gtkdrawingarea.c:
3866 gtk/gtkhscrollbar.c:
3867 gtk/gtkhseparator.c:
3869 gtk/gtkinputdialog.c:
3871 gtk/gtkitemfactory.c:
3879 gtk/gtkoptionmenu.c:
3883 gtk/gtkprogressbar.c:
3884 gtk/gtkradiomenuitem.c:
3889 gtk/gtkscrolledwindow.c:
3891 gtk/gtkspinbutton.c:
3904 gtk/gtkvscrollbar.c:
3905 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
3906 match the modified GtkTypeInfo structure.
3908 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
3910 * gtk/testgtk.c: use rand() instead of random() for portability
3912 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
3916 * gdk/gdk.c: use native Xlib XConvertCase if it's available
3918 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
3920 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
3921 XConvertCase() functionality from X11R6 on X11R5 systems.
3923 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
3925 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
3926 gdk_string_height, gdk_char_height to retrieve the exact
3929 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
3931 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
3932 by Stefan Mars <mars@lysator.liu.se>
3933 * examples/clist/clist.c examples/clist/Makefile: example code
3934 for GtkCList widget from the Tutorial
3936 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
3938 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
3939 if the container is not visible, we might be a toplevel! this holds
3940 for all other base container implementations as well, that are
3941 candidates to derive toplevels from. in general the resizing code will
3942 care about visibility itself.
3943 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
3944 * gtk/gtkbox.c (gtk_box_remove): likewise.
3946 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
3947 gtk_window_set_hints(), since we haven't calculated the new position
3950 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
3951 *mask are alway initialized in a sane way, regardless of the return
3954 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
3956 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
3957 to gtk_container_child_arg_setv, but takes a variable argument list.
3958 new function gtk_container_get_child_arg_type, which is needed by
3959 gtk_object_collect_args.
3961 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
3962 take a function pointer to figure the argument type.
3963 adapted callers to pass gtk_object_get_arg_type.
3964 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
3965 gtk_object_get_arg_type..
3969 (gtk_packer_reorder_child): new function to change the packing order
3971 (gtk_packer_size_request):
3972 (gtk_packer_size_allocate): take container->border_width into acount.
3974 * gtk/gtkpacker.c: implemented widget arguments:
3975 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
3976 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
3977 implemented child arguments:
3978 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
3979 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
3980 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
3981 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
3983 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
3986 * gtk/gtkeventbox.h:
3987 * gtk/gtkeventbox.c: GtkType and macro fixups.
3989 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
3990 sensitivity of an entry.
3992 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
3993 for insensitive base and text.
3995 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
3996 widget state dependent.
3997 (gtk_entry_style_set): likewise.
3998 (gtk_entry_state_changed): set background color on state changes.
3999 (gtk_entry_draw_text): for non selected text, use state dependent
4002 * gtk/gtktogglebutton.c: support for widget arguments
4003 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
4005 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
4007 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
4008 code for 1.0.x-like parameters. Changed internal interface of
4009 gtk_spin_button_real_spin. Several fixes to avoid emission of
4010 "value_changed" where possible.
4012 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
4014 * gtk-boxed.defs: s/GkWidget/GtkWidget/
4016 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
4018 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
4019 to select the resize_mode for the idle-labels container.
4022 * gtk/gtkframe.c: GtkType and macro corrections.
4024 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
4025 support widget argument "GtkRadioButton::group".
4027 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
4029 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
4030 unconditionally if resize_mode has changed.
4032 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
4033 GTK_RESIZE_QUEUE on the scrolled window.
4034 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
4036 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
4038 * gtk/gtkcontainer.h:
4039 * gtk/gtkcontainer.c:
4040 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
4041 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
4042 (gtk_container_queue_resize): new function to queue a container for
4043 a *size* reallocation (doesn't affect its position, and thus its
4044 parent is left untouched usually).
4045 (gtk_container_get_resize_container): new function to retrive the next
4046 most resize container which is not itself queued for a resize.
4047 (gtk_container_idle_sizer): new function to carefully process the
4048 container_resize_queue since it can change during invokation of
4049 gtk_container_check_resize().
4050 (gtk_container_resize_children): total rework of this function to
4051 properly handle resize containers. makes a lot of assumptions whitch
4052 are stated in the comments.
4054 * gtk/gtkcontainer.c:
4055 (gtk_container_real_check_resize): only requeue ourselves if we are not
4057 (gtk_container_clear_resize_widgets): care for automatic deletion of our
4058 resize_widgets list on size_allocate through a handler connection.
4060 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
4061 focus and default widget of a window, so to take the burden from
4062 gtk_widget_unparent.
4064 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
4065 to be clever, but actually messed up the resize_children logic and
4066 caused unneccessary allocations on its whole branch. besides this,
4067 it messed up the display by not invoking a redraw after the allocation.
4069 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
4070 that it is the child again that is queued for a resize.
4071 (gtk_table_attach): likewise.
4072 (gtk_table_remove): likewise.
4074 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
4076 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
4077 gtk_entry_adjust_scroll. Required if you change the cursor
4078 position and want to sync it up with your code (Midnight Commander
4079 gtk front end needs this).
4081 * gtk/gtktable.c: Deal with tables that have size 0, 0.
4083 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
4085 * examples/README.1ST: new file to explain how the
4086 code examples should be extracted from the tutorial.
4088 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
4090 * gtk/gtkctree.c (draw_row): added new "line style"
4091 GTK_CTREE_LINES_TABBED
4092 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
4093 search the glist pointer of an GtkCTreeRow
4095 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
4097 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
4098 from, and clean up, the dependencies. Generate to intermediate
4099 files to prevent problems with Ctrl-C.
4101 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
4103 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
4105 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
4106 - Bug fix for precision problem causing occasional double emission
4107 of "value_changed" signal (hopefully works now).
4108 - API change (should be binary compatible) :
4109 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
4110 Modified cursor example appropriately.
4111 To spin by something other than step_/page_increment, use
4112 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
4113 - Made GTK_SHADOW_NONE the default. ;)
4114 - Fixed casting of GtkAdjustment* to GtkWidget* in
4115 gtk_spin_button_value_changed.
4117 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
4119 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
4120 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
4121 resize widget list before queuing the container for a new reize.
4122 (gtk_container_need_resize): changed return value to FALSE, since this
4123 used to indicate that no further resizes are needed.
4124 (gtk_container_set_arg):
4125 (gtk_container_get_arg):
4126 (gtk_container_class_init): implemented GtkContainer::resize_mode
4129 (gtk_container_resize_children): when we walk up the tree of a resize
4130 widget we need to stop if we are the current parent.
4132 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
4133 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
4134 (gtk_widget_hide_all): retrive the toplevel widget from via
4135 gtk_widget_get_resize_container().
4137 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
4139 * gtk/gtklist.c (gtk_list_button_press): Only respond
4140 to selection with button 1. This allows context-sensitive
4141 menus to work correctly.
4143 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
4145 * gtk/gtkaccelgroup.c:
4146 * gtk/gtkbindings.c:
4147 * gtk/gtkcontainer.c:
4148 * gtk/gtkitemfactory.c:
4151 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
4152 g_quark_from_static_string calls to save memory.
4154 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
4155 function _after_ the new data has been setup.
4156 minor changes to object data functions to feature the GQuark type.
4158 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
4160 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
4163 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
4165 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
4166 to be more readable perl, to spit out stuff that looks
4167 more like readable C, and to pipe output through indent
4168 so output looks a lot like readable C. No functional
4171 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
4173 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
4174 necessary when switching to a masked pixmap. (Based on a patch
4175 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
4177 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
4179 * gtk/gtkeditable.[ch]: Added action signals for keyboard
4180 bindings. (move_cursor, kill_word, etc, etc, etc).
4182 removed the time argument from
4183 gtk_editable_cut/copy/paste_clipboard (source but not
4184 binary incompatible...) Instead get time from
4185 gtk_get_current_event ().
4187 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
4190 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
4192 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
4194 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
4195 parent class to GtkNotebookClass when splitting the widget in
4196 two. Also updated some comments.
4198 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
4199 button without a font selected.
4201 Fixed bug in set_font_name - I hadn't updated the code to
4202 search for the style in the font_style clist - it was
4203 still assuming the style row was equal to its index,
4204 but it isn't any more.
4206 Changed 'Reset' button on filter page to 'Clear Filter'.
4207 Deleted old code relating to the old 'Filter Fonts' toggle
4208 Updated some comments.
4209 Cleared 'Actual Fontname' if no font is set.
4211 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
4212 destroying the GtkFontSelection instead of the
4213 GtkFontSelectionDialog.
4215 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
4217 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
4218 flag to make all warnings fatal errors.
4220 * gtk/testthreads.c: moved <pthreads.h> include inside
4223 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
4225 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
4226 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
4228 - Added new function gtk_container_set_resize_mode() for
4229 fine-grained control of where resize-queueing is done.
4231 - Removed GtkContainer::need_resize and GtkWindow::move_resize
4232 - Added GtkContainer::check_resize to replace need_resize.
4234 - Added function gtk_container_check_resize() to trigger
4235 queued resizes, and gtk_container_resize_children() to
4236 Figure which children need to be size-allocated. (logic
4237 moved from gtkwindow.c)
4239 - Reorganized code in gtkwindow.c
4241 - Set the resize-mode for viewports so that resizes within
4242 a viewport don't propagate out of it.
4244 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
4246 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
4248 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
4249 g_return_val_if_fail, because the function *does* return a value.
4251 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
4253 * gtk/gtkaccellabel.h:
4254 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
4255 request the size of the accelerator portion of an accel label.
4256 (gtk_accel_label_size_request): don't request for the accelerators size.
4257 (gtk_accel_label_expose_event): only draw the accelerator if we got
4260 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
4261 width from children.
4263 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
4264 object (after removal has been requested) check if there is still an
4265 accelerator remaining to avoid adding two accelerators on an object.
4266 this can happen for locked accelerators (or accelerator-frozen widgets).
4267 (gtk_menu_size_request): feature childrens accelerator width in size
4270 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
4271 gtk_widget_freeze_accelerators() for dynamically created menu items.
4274 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
4275 which will return a handler_id > 0 if the specified function is pending
4279 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
4280 a signal handler function to stop accelerator addition.
4281 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
4282 which will prevent (undo) any accelerators from being added to or
4283 removed from a widget.
4285 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
4287 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
4288 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
4289 acceleration, new API gtk_spin_button_set_snap_to_ticks.
4291 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
4294 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
4295 the current GdkWindow the pointer is on if there is any.
4297 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
4298 and one column, so we don't construction logic at all. changed a few
4299 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
4302 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
4303 portion, added an additional check for parent != widget.
4305 * more GtkType and macro fixups.
4307 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
4309 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
4310 "clip" parameter, which is the clipping rectangle to use. This
4311 eliminates the extremely annoying flicker when exposing parts of
4314 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
4316 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
4319 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
4321 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
4322 != 0 on the argument.
4325 * gtk/gtktable.c: new function gtk_table_resize() which allowes
4326 shrinking and expanding of tables. implementation of widget arguments
4327 and child arguments. many signedness corrections.
4329 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
4331 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
4332 not only the child, otherwise we might end up taking away other
4333 childrens space after the resize.
4335 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
4336 an unknown menu path from any source, that path must always be flagged
4337 as "modified", since we don't really know whether it has its default
4342 * gtk/gtknotebook.c:
4343 * gtk/gtkmenushell.c:
4347 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
4350 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
4351 arguments. implemented child arguments.
4353 * more GtkType and macro fixups.
4355 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
4357 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
4359 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
4360 and gtk_clist_get_hadjustment.
4362 * gtk/gtkcontainer.c:
4363 implementation of children arguments, new class member functions
4364 (child_type), (get_child_arg) and (set_child_arg) plus a new field
4366 (gtk_container_child_type): new function which returns the type of a
4367 child that the container expects for its next addition.
4368 (gtk_container_add_child_arg_type): new function to introduce a new
4369 child argument at class creation time.
4370 (gtk_container_query_child_args): new function to query all child
4371 arguments that are supported by a container class.
4372 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
4374 (gtk_container_child_arg_setv): new function to set a child argument for
4375 a certain container and child combination.
4376 (gtk_container_add_with_args):
4377 (gtk_container_add_with_argv): new functions to feature addition of a
4378 new child in combination with the setting of certain child arguments.
4380 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
4381 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
4382 this should really be done through class cretion hooks some day.
4384 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
4388 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
4389 follow the gtk convention for lower case variable names (important
4390 for language wrappers and widget arguments), and made them guint : 16.
4392 * examples/packer/pack.c: adaptions for the case converted GtkPacker
4395 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
4397 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
4398 change the character pair for single line comments.
4399 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
4400 GtkItemFactoryClass.
4401 (gtk_item_factory_parse_rc_string): likewise.
4403 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
4405 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
4406 lists from the klass structure to a static structure
4407 in gtkfontsel.c; cleans up global the namespace.
4409 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
4411 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
4412 bug with /*< skip >*/ and remove warning.
4414 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
4416 * gtk/Makefile.am: Made the gtkmarshal.* generation
4417 rules maintainer-only.
4419 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
4421 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
4422 gtk/Makefile.am gtk/makenums.pl
4424 Removed out the G_ENUM/FLAGS mechanism in favor
4425 of a perl script that parses the standard headers
4426 (with occasional /*< nick=foo >*/ style overrides)
4427 and extracts the enumerations.
4429 gtk/maketypes.awk: Small improvments to the
4430 translation of names. (Avoid splitting gc into
4433 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
4435 * gtk/gtk.h gtk/gtkfontsel.[ch]:
4436 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
4438 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
4441 - Restored gtk_entry_adjust_scroll to static
4442 - Changed text positioning code so that we always
4443 display as large a portion of the text as possible.
4445 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
4447 * gtk/gtktext.c (gtk_text_finalize): Free internal
4448 structures of text widget. Also, unreference pixmaps
4451 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
4453 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
4454 3.3.1 bug workaround to number keys starting at 1.
4456 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
4458 * docs/gtk_tut.sgml: Fixed urls for complete example
4459 source for scribble+widget-writing examples.
4461 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
4463 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
4464 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
4465 specs of the form c #abcdef [ more keys ] properly.
4467 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
4469 * gtkspinbutton.h gtkspinbutton.c testgtk.c
4470 (gtk_spin_button_set_shadow_type):
4471 New API to set the shadow type of the arrow panel.
4473 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
4475 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
4476 code for drawing the child in two places at once. Unfortunately,
4477 not only does it not work anymore (because reparenting has
4478 been fixed), but it also triggers reparent/expose loops
4481 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
4482 an unecessary unrealize.
4484 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
4486 * gdk/gdkwindow.c (gdk_window_reparent): Update the
4487 old and new parents' child window lists properly.
4489 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
4492 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
4493 and GtkSideType, to be consistent with the rest of Gtk's enum
4494 definitions. wrapped the enum definitions with the G_ eunm wrappers.
4495 spelled out the GTK_ANCHOR_* enum values, since single letters don't
4496 work out corectly as nick-names (left the old values as aliases).
4497 some signdness corrections (border-width, spacing), could stand more.
4499 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4501 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
4504 * examples/packer/pack.c, examples/packer/Makefile: Added
4507 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
4509 * gtk/gtktext.c (remove_cache_line): Fixed broken
4512 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
4513 Check bounds before deleting.
4515 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
4517 * autogen.sh: Support ACLOCAL_FLAGS
4519 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
4521 * gtk-config.in: Added missing quotes.
4523 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
4525 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
4527 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
4529 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
4530 G_COMPILED_WITH_DEBUGGING.
4532 * configure.in (fd_set): Explain check better.
4534 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
4535 the version from which gtk+'s libtool forked. Needed for people
4536 who use post-1.2 alphas of libtool.
4538 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
4540 * glib/* Moved to glib module
4542 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
4543 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
4545 configuration changes for the above:
4547 - Use AM_PATH_GLIB by default to find glib; also accept
4548 a --with-glib option for using an uninstalled glib.
4550 - Put --enable-debug information into config.h so
4551 that we rebuild when it changes. (was in glibconfig.h)
4553 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
4555 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
4557 * gtk/gtknotebook.h (struct _GtkNotebookClass):
4558 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
4559 added missing argument (according to Joseph Coleman's bug report)
4561 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
4562 function to fix notebook focus handling
4564 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
4566 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
4567 glib/gutils.c glib/testglib.c glib/gdataset.c
4568 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
4569 gtk/gtktext.c gtk/gtkbindings.c:
4571 renamed g_const_pointer => gconstpointer
4573 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
4575 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
4576 invoked with (NULL, NULL); (this worked sometime ago).
4578 * gtk/gtktypeutils.h:
4579 * gtk/gtktypeutils.c: enum and flags type creation can now be done
4580 through gtk_type_register_enum() and gtk_type_register_flags(),
4581 which allow to specify the enum value arrays directly.
4582 the NULL terminated value arrays can be retrived through
4583 gtk_type_enum_get_values() and gtk_type_flags_get_values();
4584 (gtk_type_children_types): new function to query derived types.
4586 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
4588 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
4589 environment to genmarshal.pl.
4590 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
4591 rule), and removed it where not needed (in the dependencies).
4593 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
4595 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
4597 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
4598 was just g_direct_hash.
4600 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
4602 * configure.in: x_libs=, not $x_libs=. Enough said.
4603 (Case only hit for --disable-xshm)
4605 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
4607 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
4608 when testing for X libraries, don't replace them. Because
4609 the user might have specified the path to the X libraries
4610 themself before running configure.
4612 * examples/**.c: Changed all gpointer * to gpointer
4614 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
4616 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
4617 fleur_cursor field. Now the cursor is created/destroyed on demand
4618 by the routines that need it.
4620 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
4621 (gtk_handle_box_motion): The fleur cursor is created and destroyed
4624 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
4626 * gtk/gtktypeutils.h:
4627 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
4628 gtk_enum_set_values to gtk_type_enum_get_values and
4629 gtk_type_enum_set_values respectively, since they are actually type
4632 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
4635 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
4637 * gtk/gtkselection.h:
4638 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
4639 gtk_selection_data_free.
4641 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
4642 for "selection_received", which was completely bogus.
4643 * other fixups to gtk_signal_new() calls all over the place.
4645 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
4646 * gtk/gtktypebuiltins_vars.c: type variable implementations.
4647 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
4649 * gtk/gtktypebuiltins_evals.c: enum value arrays.
4650 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
4652 * gtk/gtk.defs: generated file with scheme syntax for type definitions
4653 of gtk and gdk structures and enums.
4654 * gtk/gtktypeutils.h:
4655 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
4656 macros anymore (this fixes binary incompatibility with new enum
4659 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
4660 key bindings for this widget.
4661 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
4665 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
4666 again. new functions gtk_object_class_user_signal_new () and
4667 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
4668 flag on the signal creation.
4670 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
4672 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
4674 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
4680 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
4682 * reworked enum value array generation code. gtk.defs is a generated
4685 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
4687 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
4688 check menu items in the compatibility code (this required me to remove
4689 the "<check>" part from the menu item name, grrr).
4691 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
4693 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
4694 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
4696 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
4698 * gtk/gtkitemfactory.h:
4699 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
4700 additions to the dumping code to feature GtkPatternSpec.
4701 even found a bug to fix in the original code ;)
4703 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
4705 * gtk/gtkitemfactory.c: support different types of callbacks, to
4706 maintain existing code.
4708 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
4710 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
4712 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
4713 this should eventually be done by gentypeinfo.el somewhen.
4714 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
4716 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
4717 enum values of an enum type.
4725 brought enum/flags definitions in sync, added a few more enum
4726 definitions for bindings and pattern matching.
4728 * some more macro and GtkType fixups in various places.
4730 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
4731 as a key-release modifier for the binding system.
4733 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
4735 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
4736 was a stale list pointer that is already present in GtkMenuShell.
4738 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
4739 GtkMenuShell::selection_done which is emitted after the menu shell
4740 poped down again and all possible menu items have been activated.
4742 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
4744 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
4745 before activation of the menuitem, so the menu is actually taken off the
4746 screen prior to any menu item activation.
4748 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
4752 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
4753 the emission of the "add-accelerator" signal on a widget. this is
4754 usefull to prevent accelerator installation on certain widgets.
4756 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
4757 labels left justified, by setting their alignment. stop accelerator
4758 installation for the menu items, since we use dynamic menus.
4760 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
4762 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
4763 should *really* use GtkItemFactory. this is only for preserving source
4764 compatibility where possible, use of GtkMenuFactory is deprecated as of
4767 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
4768 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
4769 missed this possibility when i added gtk_object_class_add_user_signal
4772 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
4774 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
4776 * gtk/gtkaccelgroup.h:
4777 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
4779 * gtk/gtkaccellabel.h:
4780 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
4781 display of the accelerators associated with a certain widget.
4783 * gtk/gtkitemfactory.h:
4784 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
4785 parsing and accelerator handling.
4787 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
4789 (gtk_menu_map): removed the allocation code.
4790 (gtk_menu_size_allocate): care for redrawing of children and resize
4791 our widget->window correctly.
4792 (gtk_menu_key_press): feature the new accelerator groups.
4794 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
4795 submenu if neccessary.
4797 * gtk/gtkmenuitem.c:
4798 * gtk/gtkcheckmenuitem.c:
4799 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
4803 (gdk_keyval_from_name):
4804 (gdk_keyval_name): new functions for keyval<->key-name associations.
4805 (gdk_keyval_to_upper):
4806 (gdk_keyval_to_lower):
4807 (gdk_keyval_is_upper):
4808 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
4809 regards to their cases.
4811 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
4813 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
4814 widget's class path.
4815 (gtk_widget_path): new function to calculate a widget's name path.
4817 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
4818 pattern matching, features reversed pattern matches.
4820 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
4822 * examples/extract.sh, examples/extract.awk:
4823 New files to automagically extract code examples from the
4826 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
4828 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
4829 * gtk/gtkcontainer.c (gtk_container_focus_move):
4830 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
4832 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
4834 * docs/gtk_tut.sgml: minor changes to support auto
4835 extraction of example code
4837 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
4839 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
4840 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
4842 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
4844 * docs/gtk_tut.sgml:
4845 - new section on Events
4846 - change all delete_event callbacks to include
4847 a GdkEvent parameter
4848 - clean up the formatting
4850 * examples - helloworld.c, helloworld2.c, notebook.c,
4851 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
4852 rulers.c, table.c, wheelbarrow.c: change all delete_event
4853 callbacks to include a GdkEvent parameter.
4855 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
4857 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
4858 field of crossing events.
4859 (struct _GdkEventCrossing): Added the following fields: time, x,
4860 y, x_root, y_root, mode, focus, state.
4862 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
4863 crossing event structure.
4865 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
4866 changes to the crossing event structure.
4868 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
4870 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
4872 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
4874 * docs/gtk_tut.sgml:
4875 - GtkTooltips, update to current API
4876 - change all 'gpointer *data' to 'gpointer data'
4877 - other minor changes
4879 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
4881 * configure.in (LDFLAGS): Bomb out with a moderately
4882 helpful message if detection of X libraries fails.
4884 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
4887 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
4888 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
4890 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
4891 gtk/gtksignal.c gtk/gtktext.c:
4893 Fixups for warnings from adding const to type of GHashFunc,
4896 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
4897 ansi-warnings fixups.
4899 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
4901 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
4902 Locate child at (border_width,border_width), not
4903 (2*border_width,2*border_width). [ The border is _outside_
4906 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
4907 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
4909 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
4911 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
4914 1998-05-22 <sopwith@redhat.com>
4916 * gtk/gtkeventbox.c: Pass size_allocate on to the child
4917 regardless of whether it is visible or not. Also
4918 locate child at (border_width,border_width), not (0,0)
4920 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
4922 * gtk/gtkhandlebox.c: Added style_set handler.
4924 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
4925 [ From: Chris Lahey <clahey@umich.edu> ]
4927 * gtk/gtkeditable.c, gtk/gtkeditable.h,
4928 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
4929 and set_position functions to get and set the cursor position.
4931 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
4932 signal status. Make GtkText do user-controlled insertion
4933 and deletion through the Editable widget so that these
4934 signals are properly emitted.
4936 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
4937 display asterisks instead of empty space when visible = FALSE)
4939 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
4941 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
4944 1998-05-21 <sopwith@redhat.com>
4946 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
4947 custom routine for loading images specified in gtkrc's.
4949 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
4951 * configure.in: Use pthread_attr_init() as a test function,
4952 since most of the rest of -lpthread is macros on DU4.
4954 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
4956 * gtk/gtkcombo.c: implemented completion in the entry.
4958 1998-05-18 <sopwith@moebuis.labs.redhat.com>
4960 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
4962 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
4964 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
4965 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
4966 to be of runtype GTK_RUN_LAST.
4968 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
4971 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
4974 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
4976 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
4977 text retrived from GtkEntry. only intercept the Tab key if there
4978 was some text to complete.
4980 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
4982 Basic thread-awareness:
4984 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
4986 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
4987 gdk_threads_[init/enter/leave] for applications, plus
4988 gdk_threads_wake to wake the mainloop thread out of
4991 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
4993 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
4995 * gtk/testgtk.c (list_clear): Account for the fact
4996 that gtk_list_clear_items is not inclusive. (Clears
4999 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
5001 * gdk/gdk.c: include gdkkeysyms.h always
5004 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
5006 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
5007 the visibility_notify_event method and changed method order.
5009 1998-05-14 <sopwith@moebuis.labs.redhat.com>
5011 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
5013 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
5015 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
5016 from Olli Helenius <ollhel@batman.jytol.fi>.
5018 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
5020 (gtk_type_set_chunk_alloc): new function to allow allocation of new
5021 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
5024 * gtk/gtkobject.c (gtk_object_finalize): free an object through
5027 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
5029 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
5030 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
5032 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
5034 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
5035 GPOINTER_TO_UINT fixes.
5037 * gtk/gtksignal.c: Include <string.h> for memset.
5039 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
5040 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
5042 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
5043 Cleanups, comments and the ability to have rulers with
5044 a reversed direction.
5046 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
5048 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
5049 that Sopwith missed when changing stat => lstat.
5051 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
5053 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
5054 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
5055 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
5057 * gdk/gdk.c: Print sizeof() results
5058 as g_print("%ld", (glong)sizeof(foo)), to deal with
5059 sizeof() being long on Alpha's.
5061 * gtk/testgtk.c: include <string.h> for strlen
5063 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
5064 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
5066 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
5067 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
5069 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
5071 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
5072 (From: Christopher James Lahey <clahey@umich.edu>)
5074 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
5077 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
5078 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
5079 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
5080 the default relief for the toolbars buttons. Added an
5081 toggle for the toolbar test in testgtk.c.
5083 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
5085 * docs/gtk-config.1: Rewritten and hopefully improved.
5087 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
5090 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
5092 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
5094 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
5095 GtkPreview's visual and colormap, otherwise things can BadMatch.
5097 * gtk/testgtk.c (create_color_preview):
5098 (create_gray_preview): Removed pushing/popping of visual/colormap
5099 now that GtkPreview does things correctly.
5101 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
5102 (gtk_color_selection_draw_wheel): Pick the style from the correct
5103 place (the colorsel->wheel_area widget) so that the GCs will match
5104 with where we are going to paint to.
5106 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
5107 of visual/colormap now that GtkColorSelection does things the
5110 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
5112 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
5113 previously unused window->need_resize flag to mark if a window's
5114 descendents changed size while the window was not visible. In this
5115 case, when the window becomes visible, we reallocate everything,
5116 since we didn't keep track of what actually changed.
5118 (Fixes bug where changing the popdown strings of a
5119 combo to something of the same length caused them to
5120 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
5122 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
5124 [security audit by Alan Cox]
5126 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
5127 exceed maximum assumed size.
5129 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
5130 not exceed maximum assumed size.
5131 (gtk_menu_factory_remove): likewise.
5132 (gtk_menu_factory_find_recurse): likewise.
5134 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
5136 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
5137 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
5138 redrawn if that is still neccessary. don't allow queueing of already
5140 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
5141 widgets which are in the queue can be destroyed safely, handle
5142 requeueing properly.
5143 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
5144 widgets which are in the queue can be destroyed/unrealized safely.
5146 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
5148 * gtkfaq.sgml: add question on multi-threading,
5151 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
5153 * configure.in (cflags_set): preserve automake CFLAGS.
5155 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
5156 and libgdk-1.1.la. this means we need to change certain portions of
5157 the Makefile.am on major/minor version bumps.
5159 * ltmain.sh: the -release option is not required anymore.
5161 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
5162 of the first argument to be of type GtkObject. unconditionally compile
5163 this function. removed __GNUC__ dependancy of the gtk_object_ref and
5164 gtk_object_unref macro wrappers for this function.
5166 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
5170 (gtk_object_data_try_key):
5171 (gtk_object_data_force_id): these are now macros substituting the old
5172 functions. we just use the corresponding g_dataset_* functions for
5173 key->id associations. (this is to assure unique key<->id associations).
5175 1998-05-10 Stefan Jeske <stefan@gtk.org>
5177 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
5180 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
5182 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
5184 * configure.in (LIBS): Try to figure out if this
5185 is Digital Unix and we need -std1 to get the
5188 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
5190 * docs/gtk_tut_it.sgml: update of Italian tutorial
5191 translation from Daniele Canazza <dcanazz@tin.it>
5193 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
5195 * gtk/gtkfeatures.h.in: new file used as template for
5196 * gtk/gtkfeatures.h: new file to define macros indicating newly
5197 introduced features, such as GTK_HAVE_SIGNAL_INIT.
5200 (gtk_signal_emitv_by_name):
5202 new functions to emit signals with an already provided parameter set.
5203 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
5204 (gtk_signal_real_emit): prototype changes, so this functions always
5205 gets its parameters and signal structure as arguments.
5206 (gtk_signal_emit): provide the signal structure and parameter list for
5207 gtk_signal_real_emit.
5208 (gtk_signal_emit_by_name): likewise.
5210 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
5212 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
5213 signal connections through unsetting GTK_CONNECTED.
5214 (gtk_signal_handler_insert): reflect the presence of signal connections
5215 through setting GTK_CONNECTED.
5216 (gtk_signal_real_emit): only check for handler emissions if the object
5217 has the GTK_CONNECTED flag set.
5218 (gtk_signal_handler_pending): don't check for pending handlers if the
5219 GTK_CONNECTED flag is not set for this object.
5221 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
5222 a GtkObject has signal handler connections.
5224 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
5225 set for this object call gtk_signal_handlers_destroy().
5227 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
5228 multiple processing of macro args.
5230 * gtk/gtktypeutils.c:
5233 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
5235 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
5237 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
5238 draw-queue when we are done.
5240 (gtk_widget_queue_draw/_queu_resize): Always return
5241 FALSE and avoid having two idles at the same time.
5243 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
5245 * gtk/gtktext.c: Various fixes to make sure cache
5246 lines are freed if line_start_cache doesn't point to the
5247 beginning of the cache.
5249 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
5251 * style_set improvements for GtkText and GtkEntry
5253 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
5255 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
5258 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
5260 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
5261 data chunks through a global object data structure list. unlink
5262 object data before invoking its destroy function.
5263 (gtk_object_finalize): slight modification to allow usage of object
5264 data during object finalization.
5266 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
5268 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
5269 signal names, e.g. "signal-name" is now an alias for "signal_name".
5270 (gtk_signal_handler_new): allocate handlers through a global handler
5271 structure list, that's faster than memchunks.
5272 (gtk_emission_new): allocate emissions through a global emission
5273 structure list, that's faster than memchunks.
5275 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
5277 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
5279 * ltmain.sh: added a new commandline flag -postfix similar to -release,
5280 but will immediately change the library name.
5283 * gtk/Makefile.am: specify -postfix and -version-info
5285 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
5286 GTK_BINARY_AGE. calculate LT_* variables for libtool.
5288 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
5290 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
5291 background (fg_set -> bg_set confusion).
5293 1998-05-06 Stefan Jeske <stefan@gtk.org>
5295 * gtk/testgtk.c (unselect_all): Removed code that caused an
5298 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
5300 * gtk/gtksignal.c: reimplemented the signal storage system to use a
5301 linear array rather than a hash table.
5302 be carefull *not* to keep any GtkSignal pointers across invokations
5303 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
5304 general code cleanups, made all allocations through memchunks.
5305 (gtk_signal_lookup): we now do the lookup of signals through a key_id
5306 for the signal names to avoid multiple hashing of the signal name on
5307 lookups for the several hirarchy levels of an object.
5309 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
5311 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
5312 to speed things up and remove code duplication.
5314 Reintegrated buffer overflow patches, and added
5315 some extra paranoia.
5317 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
5319 * gdk/gdk.c (gdk_event_translate): A guint * was
5320 being passed where X expected a Keysym *, and
5321 keysyms are long's on Alpha Linux. This was causing
5322 segfaults in Xlib, apparently because of alignment.
5323 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
5325 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
5327 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
5328 set GDK_EXPOSURE_MASK for DrawingAreas
5330 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
5332 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
5333 (superceded by RC file reparsing capabilities)
5335 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
5336 events. (Shouldn't be sent to the InputOnly leader, which
5337 it is now by gdk_event_send_clientmessage_toall
5339 * gtk/testgtk.c: Added extra button to rcfiles test
5340 to send out _GDK_READ_RCFILES events.
5342 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
5344 * gtk/gtkselection.c (gtk_selection_clear): Fixed
5345 reversed conditionals that caused segfault on some
5348 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
5350 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
5351 cast to GTK_OBJECT for gtk_object_ref.
5353 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
5355 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
5356 checking for signal initialization in gtksignal.c.
5358 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
5359 a long debugging period ;)
5361 1998-05-05 Stefan Jeske <stefan@gtk.org>
5363 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
5364 New function to wrap XSetDashes; modified gtkctree.c to use it.
5366 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
5368 * configure.in: Added $x_libs in the other_libraries field in the
5369 check for XShapeCombineMask.
5371 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
5373 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
5375 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
5376 linear array rather than a hash table. it actually speeded up testgtk
5377 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
5378 pointers across invokations of gtk_type_node_next_and_invalidate() and
5379 therefore gtk_type_unique()!
5381 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
5382 inheritance of a class pointer.
5383 (GTK_OBJECT): modifications for speedups.
5384 (GTK_IS_OBJECT): likewise.
5385 (GTK_OBJECT_CLASS): likewise.
5386 (suggested by owen).
5388 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
5390 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
5392 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
5393 since its derivation changed 4 month ago ;(. showed up with the unique
5394 type name checking code in gtk_type_unique().
5396 * random guint->GtkType and macro fixups.
5398 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
5400 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
5401 Configure events that would result in a negative
5404 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
5406 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
5407 "glibconfig.h" and another about writing another IRC
5410 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
5412 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
5413 parameters to log are doubles. Digital Unix apparently
5414 is missing the argument in its prototype.
5416 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
5418 * gtk/gtklabel.c (gtk_label_state_changed): Don't
5419 force a clear until the widget is actually on
5422 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
5424 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
5425 to make this consistent with the gtk-1-0 tree.
5427 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
5429 * configure.in acheader.h gdk/gdkwindow.c
5430 Check for Shape extension both on the client and server
5431 side. (And, more importantly, check for the shape extension
5432 so we may include -lXext even when compiling with --disable-xshm)
5434 Don't set override_redirect on all shaped windows. It isn't
5437 * gdk/gdkwindow.c: Set ->colormap to NULL for root
5438 and foreign windows. Use this to check if we
5439 need to get the colormap from X.
5441 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
5443 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
5444 between the default and the button always in GTK_STATE_NORMAL.
5446 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
5449 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
5451 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
5452 Fix a buffer overflow on pixmaps that claim to have
5453 more than 31 characters per pixel.
5455 (gdk_pixmap_read_string): Don't wrap around strings longer
5456 than half of address space ;-)
5458 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
5459 that were used for printing integers.
5466 int foo (void) { ... }
5468 Even where there were proper prototypes elsewhere.
5470 * gdk/gxid.c (handle_claim_device): Some extra checks.
5471 It isn't safe against being fed bad X id's, but at
5472 least it should be safe against deleting all your
5475 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
5477 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
5478 to set the adjustments value when there is no current emission.
5479 [ Removed by mutual agreement owt 5/3/1998 ]
5481 * gtk/gtksignal.c: added new functions to retrive the number of
5482 existing emissions for a certain signal.
5483 (gtk_signal_n_emissions): new function.
5484 (gtk_signal_n_emissions_by_name): new function.
5486 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
5488 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
5489 set the current focus_child of a container, does proper referencing and
5490 adjusts the vadjustment/hadjustment associated with the focus widget.
5492 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
5493 containers via gtk_container_set_focus_child.
5495 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
5498 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
5499 child since not every child removal goes through this function (this
5500 showed up after gtk_container_set_focus_child() started to reference the
5501 focus_child of a container).
5503 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
5504 of a container from gtk_container_remove into this place.
5506 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
5508 * gtk/gtksignal.c: added new functions to operate on intermediate
5509 function pointers. implemented incremental blocking.
5510 (gtk_signal_disconnect_by_func): new function.
5511 (gtk_signal_handler_block_by_func): new function.
5512 (gtk_signal_handler_unblock_by_func): new function
5514 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
5516 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5517 Always show the scrollbars when the policy is
5518 GTK_POLICY_ALWAYS...
5520 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
5522 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
5523 "value_changed" if we really passed a new value.
5524 (gtk_adjustment_changed): new function to emit the "changed" signal.
5525 (gtk_adjustment_set_value): new function to emit the "value_changed"
5528 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
5530 * gtk/gtkcombo.c: Further changes to the way the window
5531 is popped up so that it will be compatible with
5532 auto-scrolling in the future.
5534 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
5536 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
5537 the combo-list is empty since that will cause the combo to operate
5538 on a non existing GtkList window.
5539 (gtk_combo_get_pos): provide the combo list with a usfull default
5541 (gtk_combo_popup_button_press): grab the focus.
5542 (gtk_combo_activate): grab the focus.
5544 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
5546 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
5547 function to reset the RC styles for a heirarchy
5549 Clear the window background if necessary in
5550 gtk_window_style_set.
5552 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
5553 rereads all previously read RC files.
5555 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
5556 (Should it just be called gdk_get_toplevels?)
5558 * gtk/testgtk.c: New test to reload RC files.
5560 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
5563 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
5564 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
5565 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
5566 the GTK_ prefix (this solution involved less changes in the
5567 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
5568 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
5569 from lars & stefan to support the derivation of GtkCtree.
5573 initial import of a tree widget derived from gtkclist, courtesy
5574 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
5577 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
5579 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
5581 (gtk_list_insert_items):
5582 (gtk_list_remove_items_internal):
5583 (gtk_list_clear_items):
5584 remove a possible pointer grab, we might get thrown into a loop
5586 (gtk_list_button_press): grab the pointer *before* selecting the child,
5587 because selection of items may cause the lists children to change,
5588 resulting in a grab release.
5589 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
5591 (gtk_list_shutdown): remove all children from the list.
5592 (gtk_real_list_unselect_child):
5593 (gtk_real_list_select_child): *always* put our internal structures into
5594 sane state *before* signal emisions (i.e. list->selection updates prior
5595 to gtk_list_item_[de]select() calls).
5597 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
5598 focused child walks out of the window.
5599 removed CAN_FOCUS for the combo arrow's button since it doesn't react
5600 to keyboard events ("clicked" connection is missing).
5602 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
5604 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
5605 getting colormap for FOREIGN windows to go along with
5606 Raster's fix for visuals.
5611 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
5613 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5614 Check to catch the case when the viewport fits in either
5615 direction or both, instead of flip-flopping infinitely.
5617 Only show/hide the scrollbars once at the end.
5619 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
5621 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
5622 Include the scrollbars in the foreach call.
5623 (gtk-fortier-980405-0.patch;
5624 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
5627 really should also include its tabs, but that might cause
5628 problems for programs if they
5630 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
5632 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
5633 resize if the size actually changed.
5634 (gtk-johannes-980414-0.patch ;
5635 johannes@nada.kth.se (Johannes Keukelaar) )
5637 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
5639 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5640 ltmain.sh ltconfig config.sub config.guess:
5642 Reverted back to libtool-1.2 (plus minor patches) so as not to
5643 force the issue for everyone else.
5645 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
5647 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5648 Updated to libtool 1.2a.
5650 * gtk/gtkclist.c: Draw the in-between lines with style->base
5651 instead of style->white.
5653 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
5655 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
5656 Cache the colormap and children of a window locally
5657 instead of fetching them from the server when needed.
5658 Huge performance difference for creating/destroying
5661 * gtk/gtkstyle.c: Find the depth from the cached
5662 visual, instead of asking the server.
5664 * gtk.m4: Distribute the new version which tries to
5665 figure out what went wrong and give helpful error
5668 * ltmain.sh ltconfig config.sub config.sh:
5669 Updated to libtool 1.2a
5671 * gtk/gtktext.c: Fixed a bug where the drawn level
5672 was being messed up when the text was scrolled
5675 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
5677 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
5678 the filesystem under you (fix from Josh)
5680 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
5682 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
5683 if the viewport already exists before iterating over it, maybe we
5684 haven't been constructed yet.
5686 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
5688 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
5689 the GtkBin widget already has a child.
5691 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
5692 check that child->parent == NULL;
5694 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
5696 * gtk/gtkselection.c (gtk_selection_clear): Only return
5697 FALSE when the clear event is been rejected, not when
5698 widget has already lost the selection. (Which should
5699 only happen when we are setting the selection to another
5702 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
5704 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
5706 Removed the "check visibility after gtk_widget_unparent" bug
5707 in hopefully the last three places.
5709 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
5711 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
5714 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
5716 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
5717 for CAN_FOCUS widgets.
5719 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
5720 adjustments for the table.
5721 (create_list): feature automatic adjustment of the scrolled window to
5722 always contain the focused child.
5723 (create_main_window): keep the focussed button always inside of the
5726 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
5727 adjustments, to contain the allocation of the currently focused child.
5728 (gtk_container_set_focus_hadjustment): new functin to set the
5729 horizontal focus adjustment.
5730 (gtk_container_set_focus_vadjustment): new functin to set the vertical
5733 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
5734 clamp the currents adjustment page into a specific range.
5736 * random GtkType fixups for gtk_*_get_type() functions.
5738 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
5740 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
5741 Account for the fact that gtk_tree_item_remove_subtree
5742 will be called recursively.
5744 Handle removing a collapsed subtree.
5746 (From Andy Dustman <adustman@comstar.net>)
5748 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
5749 root tree when removing items from a non-previously
5752 * gtk/testgtk.c: Added a remove_subtree button.
5754 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
5756 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
5757 before object removing data. This change fixes a bug where
5758 removing the last weak references would cause it to be
5761 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5763 * gdk/Makefile.am: Removed mostly useless dependency that
5764 was causing problems for SGI's make, when used with
5765 the 'make dist' form of GTK+. (Dependency caused dependencies
5766 to be redone when BUILT_SOURCES changed)
5768 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
5770 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
5773 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
5774 to gtkitem.c so dragging can also work in lists.
5776 * gtk/gtklist.[ch]: Track child enter events and use
5777 those to allow dragging the selection.
5779 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
5781 * gtk/gtktext.c: Try enabling background pixmaps for editable text
5782 widgets. There is a bit of flashing, but not too bad. If you
5783 don't want the flashing, you can always not set a background
5786 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
5788 * gtk/gtktext.c: Fixed a bug where the drawn level
5789 was being messed up when the text was scrolled
5792 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
5794 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
5795 bug: There is no need to set the ExposureMask in the XGrabPointer
5796 (this caused DnD programs to crash).
5798 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
5800 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
5801 field to be of type guint.
5802 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
5804 (gtk_accelerator_table_install): keep a per object list of accelerator
5805 tables that refer to this object.
5806 (gtk_accelerator_table_remove): remove the accelerator table from the
5808 (gtk_accelerator_table_clean): warn if there are any object references
5809 left in an accelerator table upon destruction.
5810 (gtk_accelerator_tables_delete): new function to delete object
5811 references from the accelerator tables associated with this object.
5813 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
5814 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
5815 of an accelerator can be prevented by gtk_signal_emit_stop().
5816 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
5817 so there are no stale pointers in accelerator tables left.
5819 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
5821 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
5822 visible before we unparent it.
5824 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
5826 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
5827 running_timeouts list with the tmp_list link itself, not with a new
5828 GList structure pointing to our link. that would fill up memory and
5829 causes the GList.data fields of the running_timeouts list to point to
5830 GList structures and not GtkTimeoutFunction structures which is a
5832 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
5835 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
5837 * gtk/gtkradiomenuitem.h:
5838 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
5839 ala gtk_radio_button_set_group.
5840 (gtk_radio_menu_item_init): assure that we always have at least a group
5841 that points to self.
5843 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
5844 added g_return_if_fail() statements.
5845 (gtk_radio_button_init): assure that we always have at least a group
5846 that points to self.
5848 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
5850 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
5852 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
5854 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
5855 (Damon Chaplin), which i got wrong when applying Damon's patch the last
5858 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5860 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
5861 that when we are running with a non-installed colormap,
5862 in 8-bit pseudo-color, we actually are using the system
5863 visual. (Fixes *Bad Match* errors on Digital Unix machines
5864 with multiple 8-bit pseudo-color visuals)
5866 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
5868 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
5869 by whoever thought that randomly changing ints to unsigned int
5870 without reviewing the code was a good idea. It is, btw not
5871 mentioned in the ChangeLog as usual, but I know it was not Elliot
5872 the culprit this time.
5874 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
5876 * Released GTK+ 1.0.0