1 Tue Nov 24 07:46:09 1998 Tim Janik <timj@gtk.org>
3 * docs/Changes-1.2.txt: added a section on scrolled windows and
6 1998-11-24 Andrew T. Veliath <andrewtv@usa.net>
8 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
9 buttons when setting relief for button items.
10 (gtk_toolbar_set_button_relief): Same.
12 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
14 * gdk/Makefile.am, gtk/Makefile.am:
15 Removed DEFS "+=" mess that breaks recent automakes.
16 INCLUDES is the correct way to add to CFLAGS from Makefile.am.
18 * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
19 gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
20 gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
22 Include "config.h" instead of "../config.h".
23 Now that DEFS works again, automake will automatically pass us
24 the location of config.h in -I.
26 Mon Nov 23 22:10:09 1998 Owen Taylor <otaylor@redhat.com>
28 * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
29 gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
31 Added layout widget for scrolling arbitrarily big areas.
32 Added plug/socket widgets for interprocess embedding.
34 These widgets still, at some point, need to be
35 made more pure in their use of GDK, as opposed
38 * gtk/testgtk.c: Added test for layout widget.
40 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
42 * gtk/gtkclist.c: (gtk_clist_swap_rows): Bugfix from
43 Brandon Long <blong@fiction.net> - do the right thing with first
44 and last, which are the absolute values of row arguments row1
47 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
49 * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
50 default adjustment (from 0 to 100) instead. I'm not sure if this
51 is the correct level for the fix, but gtk_progress_bar_new()'s
52 original default behavior is restored.
54 1998-11-23 Martin Baulig <martin@home-of-linux.org>
56 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
57 we can check for latest GTK features.
59 1998-11-23 Havoc Pennington <hp@pobox.com>
61 * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
62 (gtk_toolbar_insert_element): When setting relief, also affect
65 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
67 * gtk/gtkobject.h: remove extraneous comma
69 Mon Nov 23 05:21:50 1998 Tim Janik <timj@gtk.org>
72 (gtk_container_add_with_args):
74 (gtk_container_add): removed assertements for constructed containers
75 again, since this essentially breaks the "child" arg.
77 * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
78 reference count, we don't need to reference toplevels that already have
81 * gtk/gtkscrolledwindow.c: check for the composites existance in
82 _forall since we might not be already constructed.
84 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
88 * configure.in: require GLib 1.1.5
90 Mon Nov 23 03:21:17 1998 Tim Janik <timj@gtk.org>
92 * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
94 (gtk_text_finalize): only unref the current_font if we have
97 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
104 docs/gtk-config.1: Version incremented to 1.1.5
106 Sun Nov 22 16:21:28 1998 Tim Janik <timj@gtk.org>
108 * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
109 ::text_yalign, ::activity_mode.
111 * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
112 ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
114 (gtk_progress_bar_new):
115 (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
116 (gtk_progress_bar_construct): deprecated.
118 * gtk/gtkvscrollbar.c:
119 (gtk_vscrollbar_draw_step_back):
120 (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
121 gtk_paint_arrow, to be consistent with hscrollbar.
124 added construct args ::hadjustment, ::vadjustment.
125 added args ::line_wrap, ::word_wrap.
126 (gtk_text_class_init): added scroll_adjustments signal.
127 (gtk_text_new): use gtk_widget_new.
128 (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
129 so we don't screw the reference counts and don't leave signals connected.
130 (gtk_text_destroy): disconnect adjustments signals.
131 (gtk_text_finalize): unref adjustments.
133 * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
134 added args ::indent, ::spacing, ::show_stub, ::reorderable,
135 ::use_drag_icons, ::line_style and ::expander_style.
136 (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
139 * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
141 removed ::vadjustment and ::hadjustment args, introduced
142 ::scroll_adjustments signal.
143 added ::shadow_type, ::selection_mode and ::row_height args.
144 added n_columns construct arg.
145 (gtk_clist_construct): call gtk_object_constructed().
146 (gtk_clist_set_row_height): if height is passed as 0,
147 revert to automatic height calculation.
148 (gtk_clist_destroy): before unrefing the adjustments, disconnect our
151 Fri Nov 21 22:34:58 1998 Tim Janik <timj@gtk.org>
153 * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
155 (gtk_widget_destroy): assert that we only destroy constructed widgets.
157 * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
158 to identify args that may only be used for construction.
159 GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
161 * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
162 at the end if the object is not fully constructed.
163 (gtk_object_newv): likewise.
164 (gtk_object_destroy): assert that we only destroy constructed objects.
165 (gtk_object_init): setup GTK_CONSTRUCTED from the
167 (gtk_object_default_construct): new function to complete default
168 construction of an object by applying missing construtor args with
169 default values of 0, 0.0 or NULL.
170 (gtk_object_constructed): new function to mark an object as being
171 constructed (used from within constructors).
173 * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
174 so it is immediatedly available for the caller.
176 * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
177 the object initilizer (GtkObjectInitFunc takes a second arg now, the
178 real klass), and asure that object initializers may temporarily alter
181 Fri Nov 20 08:00:30 1998 Tim Janik <timj@gtk.org>
183 * gtk/testgtk.c: change all occourances of gtk_container_add (
184 scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
185 for widget!=(clist, ctree, text, viewport).
188 (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
189 to add children to the scrolled window.
191 * gtk/gtkscrolledwindow.h:
192 * gtk/gtkscrolledwindow.c:
193 changed scrolled_window->viewport to scrolled_window->child, and use
194 gtk_widget_scroll_adjustements() to set the scroll adjustments for the
195 widget, we do not create an additional viewport anymore.
196 added ::hadjustment and ::vadjustment constructor args.
197 (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
198 (gtk_scrolled_window_set_hadjustment):
199 (gtk_scrolled_window_set_vadjustment): new functions that superceed
200 gtk_scrolled_window_construct.
201 (gtk_scrolled_window_construct): deprecated this function.
203 * gtk/gtkhscrollbar.c:
204 * gtk/gtkvscrollbar.c:
207 support a constructor arg "::adjustment", and use gtk_widget_new() for
210 * gtk/gtkrange.c: added ::update_policy arg.
211 (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
212 a default adjustment so this function can be used for derived widgets
213 that depend on the adjustment's existance.
214 (gtk_range_destroy): disconnect the adjustment signal, so we don't
215 get called after we got destroyed, we don't destroy the adjustment
216 in here, because it might have been provided from another widget.
218 * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
219 (gtk_viewport_destroy): same as gtk_range_destroy.
221 * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
224 * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
225 gboolean, indicating whether this widget supports activation.
226 added gtk_widget_scroll_adjustements() to set the scrolling
227 adjustments of a widget.
229 Wed Nov 19 01:22:42 1998 Tim Janik <timj@gtk.org>
231 * gtk/gtkoptionmenu.c:
232 (gtk_option_menu_remove_contents):
233 (gtk_option_menu_update_contents): removed
234 gtk_container_[un]block_resize() pairs.
237 * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
238 be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
241 * *.c: made deprecated functions issue a message:
242 gtk_clist_set_border, gtk_container_block_resize,
243 gtk_container_unblock_resize, gtk_container_need_resize,
244 gtk_object_class_add_user_signal, gtk_spin_button_construct,
245 gtk_scrolled_window_construct.
246 removed non-functional functions:
247 gtk_container_disable_resize, gtk_container_enable_resize,
248 gtk_clist_set_policy.
250 Wed Nov 18 22:54:36 1998 Tim Janik <timj@gtk.org>
252 * gtk/gtkbox.c (gtk_box_init):
253 * gtk/gtkdrawingarea.c (gtk_drawing_area_init):
254 * gtk/gtkeventbox.c (gtk_event_box_init):
255 * gtk/gtkfixed.c (gtk_fixed_init):
256 * gtk/gtkframe.c (gtk_frame_init):
257 * gtk/gtkhandlebox.c (gtk_handle_box_init):
258 * gtk/gtkpacker.c (gtk_packer_init):
259 * gtk/gtkmisc.c (gtk_misc_init):
260 * gtk/gtkpreview.c (gtk_preview_init):
261 * gtk/gtkprogress.c (gtk_progress_init):
262 * gtk/gtkprogressbar.c (gtk_progress_bar_init):
263 * gtk/gtkseparator.c (gtk_separator_init):
264 * gtk/gtktable.c (gtk_table_init):
265 * gtk/gtkviewport.c (gtk_viewport_init):
266 * gtk/gtkalignment.c (gtk_alignment_init):
267 removed setting of the GTK_BASIC flag.
271 removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
273 * miscellaneous GtkType and macro fixups.
275 Sat Nov 21 18:53:13 1998 Owen Taylor <otaylor@redhat.com>
277 * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin):
278 Fixed so it at least works with window managers other
279 than Enlightenment, though it probably needs to be
282 1998-11-21 Andrew T. Veliath <andrewtv@usa.net>
284 * gtk/gtkhandlebox.[ch]: Add shadow_type and
285 gtk_handle_box_set_shadow_type function (plus a
286 GtkHandleBox::shadow arg) to allow configuration of shadow in the
289 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
291 * gtk/gtkcalendar.c: Fix for marking days from
292 Dan Reish <dreish@izzy.net>.
294 Thu Nov 19 00:15:27 1998 Lars Hamann <lars@gtk.org>
296 * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
297 in row_list. (from Samuel Solon <ssolon@usa.net>)
299 * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
300 (gtk_clist_get_column_widget): return column widget
302 Wed Nov 18 11:54:57 1998 Owen Taylor <otaylor@redhat.com>
304 * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
305 that are sent to a toplevel but are not within the
308 * gdk/gdkdnd.c gdk/gdk.h: Added support for a
309 XdndProxy atom which proxies the drag to another window.
311 1998-11-17 Federico Mena Quintero <federico@nuclecu.unam.mx>
313 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
314 that it is not needed.
316 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
317 * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
318 function to correctly determine gdk window position relative to
319 its "root window" - contains check for an Enlightenment
321 * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
322 gdk_window_get_deskrelative_origin to get the origin of dragged
323 handleboxes correctly. Now it works correctly with E.
325 Tue Nov 17 1998 Tuomas Lukka <lukka@iki.fi>
327 * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
328 getting types even though we were not using real type names,
329 just the index. This caused random crashes when more than
330 256 types were defined.
332 1998-11-17 Martin Baulig <martin@home-of-linux.org>
334 * gtk/genmarshal.pl: Put output files in the current directory
335 and not in the $(srcdir) since the VPATH is ignored for built
338 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
341 * gtk/Makefile.am: check for unchanged autogenerated files, so
342 we don't rebuild everything just for adding a new function
344 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
347 gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
348 code thanks to GNOME stock by Eckehard Berns. New function
349 gtk_pixmap_set_build_insensitive to provide ability to turn
352 Tue Nov 17 00:06:29 1998 Lars Hamann <lars@gtk.org>
354 * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
355 new guints : tab_hborder, tab_vborder; marked tab_border deprecated
356 (struct _GtkNotebookPage): new flags : expand, fill, pack
358 * gtk/gtknotebook.h/c
359 (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
361 (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
362 (gtk_notebook_set_tab_hborder): new function. set tab_hborder
363 (gtk_notebook_set_tab_vborder): new function. set tab_vborder
364 (gtk_notebook_query_tab_label): new function. get tab_label widget.
365 (gtk_notebook_set_tab_label): new function. set tab_label widget.
366 (gtk_notebook_set_tab_label_text): new function. set tab_label text.
367 (gtk_notebook_query_menu_label): new function. get tab_label widget.
368 (gtk_notebook_set_menu_label): new function. set tab_label widget.
369 (gtk_notebook_set_menu_label_text): new function. set tab_label text.
370 (gtk_notebook_set_tab_label_packing): new function. set tab_label
371 fill, expand, fill_type
372 (gtk_notebook_query_tab_label_packing): new function. get tab_label
373 fill, expand, fill_type
375 (gtk_notebook_real_page_position): return logic page number
376 (gtk_notebook_search_page) search next/prev logic page
377 (gtk_notebook_update_labels): set logic page number.
378 (gtk_notebook_page_compare): renamed gtk_notebook_find_page
379 (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
380 CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
381 (gtk_notebook_button_press) (gtk_notebook_key_press)
382 (gtk_notebook_focus) (gtk_notebook_pages_allocate)
383 (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
384 use gtk_notebook_search_page
385 (gtk_notebook_page_allocate): fixed allocation bug
386 (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
387 (gtk_notebook_init): unset GTK_NO_WINDOW flag
388 (gtk_notebook_size_request): check whether page->child is visible.
389 changes due to tab h/vborder, homogeneous tabs
390 (gtk_notebook_paint): don't draw invisible tabs
391 (gtk_notebook_switch_page): calculate page_num if it's less than 0
392 (gtk_notebook_append_*) (gtk_notebook_prepend_*)
393 (gtk_notebook_insert_page): removed sanity checks
395 * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
397 Mon Nov 16 15:10:33 1998 Owen Taylor <otaylor@redhat.com>
399 * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
400 (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
402 * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was
403 broken. (GtkWidget's default unmap handler should work fine).
404 Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
406 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
408 * gtk/gtkmenubar.[ch]: added shadow_type setting and
409 gtk_menu_bar_set_shadow_type function to allow shadow
410 configurability for menubars
412 * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
415 Mon Nov 16 00:17:53 1998 Tim Janik <timj@gtk.org>
417 * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
418 class creation and parent class' object initializer.
420 1998-11-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
422 * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
423 have assigned it to the window -- there is no point in keeping it around.
424 (gtk_paned_unrealize): No need to destroy the cursor here.
426 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
429 Fri Nov 13 11:22:38 1998 Owen Taylor <otaylor@redhat.com>
431 * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
432 (gtk-blizzard-981005-0.
433 Christopher Blizzard <blizzard@applied-theory.com)
435 * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
436 gdk_pixmap_foreign_new to gdkx.h.
438 Fri Nov 13 16:06:48 1998 Owen Taylor <otaylor@redhat.com>
440 * gtk/Makefile.am: Added rules to generate an empty
441 GTK+ theme called "Default" upon installation.
443 * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
444 of fonts and fontsets.
445 (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
447 * gtk/gtkmain.c: Change test to detect glibc's
448 utf8 based mb* functions to be more specific.
450 * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation
453 Fri Nov 13 16:43:36 1998 Lars Hamann <lars@gtk.org>
455 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
457 (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
458 event_window if draw_indicator is set
459 (gtk_toggle_button_set_mode):
461 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
463 * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
464 ensure proper type (SunPro cc complains)
466 * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
468 * gtk/gtktogglebutton.c: use our own draw method so we get proper
469 redraws on active state
471 Thu Nov 12 00:26:13 1998 Lars Hamann <lars@gtk.org>
473 * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
476 * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
479 Wed Nov 11 19:54:58 1998 Lars Hamann <lars@gtk.org>
481 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
482 (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
483 added ARG_WINDOW_PLACEMENT
485 * gtk/gtkclist.c (size_allocate_columns): resize column if column
486 button > column width and auto_resize is set
487 (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
488 consider column button width of auto resized columns
489 (gtk_clist_parent_set): removed
491 * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
492 (auto_resize_columns): auto_resize all columns
493 (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
494 (column_auto_resize): respect column button width of auto resized
497 1998-11-10 Martin Baulig <baulig@merkur.uni-trier.de>
499 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
500 we can check for latest GTK features.
502 Mon Nov 9 00:39:20 1998 Lars Hamann <lars@gtk.org>
504 * gtk/gtkenums.h : new enum GtkCornerType
505 * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
507 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement):
508 new method to set window_placement.
509 (gtk_scrolled_window_viewport_allocate)
510 (gtk_scrolled_window_size_allocate): few changes due to
512 * gtk/testgtk.c (remove_selection): fixed while loop.
514 Sat Nov 7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
516 * gtk/gtkclist.c: check if column[i].button is valid before calling
517 gtk_widget_intersect on it in gtk_clist_draw
519 * gtk/gtkdnd.c: removed unused variable empty_bits
521 * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
523 * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
524 a boolean (thanks to Elrond for noticing this)
526 1998-11-07 Jay Cox <jaycox@earthlink.net>
528 * gtk/gtkwindow.c: forward declaration for gtk_window_paint
529 * gdk/gdkxid.c: declare xid_ht static
530 * examples/*/Makefile: get the link ordering right.
532 Sat Nov 7 16:31:56 1998 Stefan Jeske <stefan@gtk.org>
534 * gtk/gtkclist.c (gtk_clist_realize): Set background of
535 title button window to GTK_STATE_NORMAL instead of
536 GTK_STATE_SELECTED to avoid ugly flicker.
538 Fri Nov 6 23:29:40 1998 Lars Hamann <lars@gtk.org>
540 * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
541 if adjustments are NULL and list size has changed
542 (gtk_clist_size_request): return real list requsition,
543 if adjustments are NULL.
544 (size_allocate_columns): use button->requisition.with, if column
546 (list_requisition_width): new function. return full list width.
547 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
548 auto create adjustments.
549 (gtk_clist_motion) (move_vertical) (move_horizontal):
550 check adjustment != NULL.
552 Thu Nov 5 12:06:16 1998 Owen Taylor <otaylor@redhat.com>
554 * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
555 a clear/redraw, not just a redraw, so the focus
556 gets undrawn properly.
558 * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize):
559 Chain to gtk_widget_unrealize() instead of duplicating
562 Wed Nov 4 14:34:51 1998 Owen Taylor <otaylor@redhat.com>
564 * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
565 last vestiges of old DND.
567 Tue Nov 3 12:27:52 1998 Owen Taylor <otaylor@redhat.com>
569 * gtk/gtkentry.c: Restored inner border to entries,
570 erase cursors to background image.
572 Fri Oct 30 12:09:21 1998 Owen Taylor <otaylor@redhat.com>
574 * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
575 it was identical to paint_flat_box().
577 * gtk/gtkstyle.c: Coding style fixups.
579 * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
582 * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c:
583 Change 'side' for paint_[box/shadow]_gap and paint_extension
584 to be GtkPositionType instead of a random int.
586 * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use
587 "frame" as detail - an aspectframe should draw identical
590 Tue Oct 27 09:58:11 1998 Owen Taylor <otaylor@redhat.com>
592 * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
593 from combine_child_shapes().
595 * gdk/gdkwindow.c: Merge propagate_shapes() and
596 propagate_combine_shapes() to remove code duplication.
598 Thu Nov 5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
600 * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
601 gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
602 So allocate some mem if it's not already done.
604 * clist scrollbar merges from HEAD
606 Tue Nov 3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
608 * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
610 * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
611 of 0x80000000, so we stay within the bounds of a postive signed
612 int (it broke some compilers)
615 * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
616 when some of the menuitems are hidden
618 * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
621 * gtk/gtkwidget.c: add a dummy continue after the line label
622 next_rect, since some compilers don't like label: }
624 Sun Nov 1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
626 * Okay, so we need the X11R6 keysyms so programs don't have to
627 worry about them. They don't conflict anyway. Reverted the #ifdef
630 * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
631 special rule for them (X-derived-headers)
633 Sun Nov 1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
635 * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
636 and gdkkeysyms.h into sed scripts, since the awk scripts weren't
637 portable, and we really shouldn't be using awk anyway.
640 * makekeysyms.awk: bye bye
642 * gtk/gtkaccelgroup.c
645 * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
647 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
649 * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
650 and gdkkeysyms.h. Remove those files from CVS.
652 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
654 * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
655 of the USE_XIM #ifdef
657 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
658 even with --include-deps. Slightly different from timj's fix, to avoid
659 circular dependency with gtkmarshal.c
664 * gtk/gtkfontsel.[ch]
668 * gtk/testgtk.c: merges from HEAD
671 * gtk/gtkradiomenuitem.c
672 * gtk/gtktreeitem.c: cleanups
674 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
676 * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
678 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
680 * configure.in: AIX has libpthreads, to make sure you can have
681 more than one thread. Also add -D_THREAD_SAFE, and reorder
682 configure.in so CFLAGS doesn't get clobbered when we actually
685 * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
688 * gtk/testdnd.c: removed unused variable "buf"
690 Mon Oct 26 16:46:15 1998 Owen Taylor <otaylor@redhat.com>
692 * gtk/gtkcontainer.c (gtk_container_unregister_toplevel):
693 remove_link(), not remove()
695 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
697 * gdk/gdkrgb.c: use glib endian stuff
699 * configure.in: don't need to check for endianness anymore
701 * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
703 Wed Oct 21 17:44:27 1998 Owen Taylor <otaylor@redhat.com>
705 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
706 all toplevel widgets, not toplevel windows. (I.e.,
707 plugs should be reset)
709 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
710 _do_ need to notify the other toplevels - by the time
711 the get the client messages, the RC file dates will
714 * gtk/gtkcontainer.h: Added a function call to list
715 every toplevel widget.
717 * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse):
718 Don't send client messages to _every_ window on display!
720 Tue Oct 20 16:21:04 1998 Owen Taylor <otaylor@redhat.com>
722 * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags
723 when dragging across widgets, only in drags
726 Tue Oct 20 15:59:49 1998 Owen Taylor <otaylor@redhat.com>
728 * gtk/gtkdnd.c (gtk_drag_source_info_destroy):
729 Emit "drag_end" signal at end of drag.
731 Tue Oct 20 13:07:54 1998 Owen Taylor <otaylor@redhat.com>
733 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
734 for "gtk-embedded" data currently set by
735 GtkSocket, and use that to forward client message
736 on to embedded windows. Only reset our own toplevel -
737 the others will handle themselves. (Now that
738 GtkMenus live in GtkWindows)
740 Mon Oct 19 16:40:40 1998 Owen Taylor <otaylor@redhat.com>
742 * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
743 client window finding code so that it works with
744 WM's other than fvwm.
746 Sun Oct 18 22:48:27 1998 Owen Taylor <otaylor@redhat.com>
748 * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
749 the "GtkDrawWindow" class, which is a descendent
750 of the Window class which leaves its background alone.
751 Essentially, a toplevel drawing area, though it does
752 allow adding a child.
754 Sat Oct 17 00:40:51 1998 Owen Taylor <otaylor@redhat.com>
756 * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
757 merging RC styles. Report new share/themes path for
758 themes directory. Deref theme engines when appropriate.
760 * gtk/gtkclist.c: Set all backgrounds in _style_set().
761 Make sure that pixel for xor_gc is never 0.
763 * gtk/gtkctree.c: Choose colors for plus/minus more
764 carefully, in a hopefully style-independent fashion.
765 (Still needs a bit more work)
767 * gtk/gtkwidget.c: Don't send expose events to widgets
768 which are about to be resized and redrawn. (Needs a
771 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
772 drawing on tabs for newly allocated, un-sized
773 pages - we'll get the size wrong.
775 Thu Oct 1 17:38:07 1998 Owen Taylor <otaylor@redhat.com>
777 * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
778 up stupidities in last commit.
780 Thu Oct 1 14:25:43 1998 Owen Taylor <otaylor@redhat.com>
782 * gtk/gtkwidget.c: When handling queued resizes, account
783 for handleboxes, where the widget heirarchy is different
784 than the window heirarchy by just queueing a resize on
785 the entire handlebox if the detached child is changed.
787 - Remove widgets from the redraw queue when reparenting,
788 even if not unrealizing. We queue a resize/redraw in
791 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
792 * gtk/gtkstyle.c: added check to see if the widget has been shaped
793 byt the app via gtk_widget_shape_combine_mask and if it has does
794 not reset the shape on theme change.
796 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
798 * gtk/gtkfilesel.c: Keep a list of directories in which we never
799 want to stat the entries (like /afs), and assume everything in
800 those directories is a subdirectory.
802 - When following a path, try to open components even when
803 we don't find them in their parent's directory to
804 support automounters.
806 Fri Sep 11 15:36:33 1998 Owen Taylor <otaylor@redhat.com>
808 * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
809 now at least compiles again.
811 * gdk/gdk.c (gdk_event_translate): Don't pass events
812 on destroyed widgets to the gdk_input layer.
814 Thu Sep 3 19:45:34 1998 Owen Taylor <otaylor@redhat.com>
816 * gtk/gtkthemes.c: Use g_module instead of dlopen()
818 Thu Sep 3 19:30:11 1998 Owen Taylor <otaylor@redhat.com>
820 * gtk/gtktooltips.c (gtk_tooltips_expose): Check
821 if we've changed widgets since the expose event
824 Mon Aug 31 15:33:13 1998 Owen Taylor <otaylor@redhat.com>
826 * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
827 to restore approximate bin compatibility with the
828 non-themes branch. (This does break bin compat
829 within the themes branch.)
831 Sun Aug 30 16:48:27 1998 Owen Taylor <otaylor@gtk.org>
833 * gtk/gtklabel.c (gtk_label_set): Eliminate a
834 gdk_window_clear_area() that snuck in with the
835 menu underlines merge.
837 Mon Aug 24 23:37:26 1998 Owen Taylor <otaylor@redhat.com>
839 * gtk/gtktext.c: Fixed some remaining background drawing,
840 merges from main branch, cleanups.
842 Mon Aug 24 10:55:51 1998 Owen Taylor <otaylor@redhat.com>
844 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
845 dereference NULL focus tab.
847 * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
848 functions since we need to both show/hide and
849 queue a redraw. (There's some duplication of drawing here,
850 we probably should only be queuing a redraw on the
851 "value" portion of the scale.)
853 Fri Aug 21 19:02:30 1998 Owen Taylor <otaylor@redhat.com>
855 * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
856 into the theme-drawing framework. We do this by making them,
857 like check/radio-buttons, no-window widgets with subwindows. We
858 then move the value by calling gtk_widget_queue_clear() and only
859 redraw the value in our draw() / expose() handler. A virtual
860 function clear_background is added which queues a clear on the
861 "background" portion of the widget.
863 Fri Aug 21 13:04:27 1998 Owen Taylor <otaylor@redhat.com>
865 * gtk/gtktext.c (mark_bg_gc): Make background colors work
866 again. (We can't always paint the background with a
867 paint() function - only do that for selected text)
869 Mon Aug 17 20:31:01 1998 Owen Taylor <otaylor@redhat.com>
871 * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
872 gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
874 * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
875 the themes can't be built as part of the same build since
876 they depend on gdk_imlib.
878 Fri Aug 14 12:44:30 1998 Owen Taylor <otaylor@redhat.com>
880 * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
883 * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
886 - Upgrade to libtool-1.2b + patch to add shared library dependencies
887 for Linux. (Needs to be extended to other platforms where they
890 - Check for -ldl so this branch should build on all platforms, though
891 themes will work on all platforms they could work on.
893 - Use -version and -release simultaneously: sonames stay as they are
894 in the current scheme, but -lgtk-1.1 changes to -lgtk.
896 - Added in extra -l flags to library LDFLAGS so we get shared library
897 dependencies against X libs and -ldl. (But not libgtk against
898 libgdk or libglib yet, since dependencies against uninstalled
899 libraries aren't portable)
901 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
902 * gtkrc.c - added api calls to find module and theme paths from gtk.
903 nuked gtk_install_prefix global.
905 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
906 * fixed gtk_install_prefix global.
908 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
909 * added gtk_install_prefix global const variabel to find where gtk is
912 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
913 * added ~/.gtk/lib/themes/engines/ to the default searchpath for
916 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
917 * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
919 Mon Aug 10 23:03:55 1998 The Rasterman <raster@redhat.com>
920 * Fixed minor problem in gtkhandlebox.c with drawing, and some
921 notebook stuff. Also pixmap theme is now "clean" again.
923 Mon Aug 10 23:03:55 1998 Owen Taylor <otaylor@redhat.com>
924 * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up
925 queued area resizing once more.
927 Mon Aug 10 23:09:30 EDT 1998
928 * Added a few drawing fixes for notebook and other widgets. finished
929 pixmap theme up to the level that can be supported so far. (need to
930 add path discovery 9ie where is the rc fiel from - add to pixmap
931 path so we can get theimages from there too). then we can package
932 themes. After that need to add to theme seartch path stuff in users
935 Thu Aug 6 16:49:25 1998 Owen Taylor <otaylor@redhat.com>
937 * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
938 drawing area, draw in an expose handler.
940 * gtk/gtknotebook.c (gtk_notebook_expose): Check for
943 Wed Aug 5 16:13:15 1998 Owen Taylor <otaylor@redhat.com>
945 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
946 creation of GC's so that they will be set before
947 they are used for map events (why are they used there?)
949 * gtk/gtkwidget.c: Fixed mistake that caused widgets to
950 be queued in multiple times in the queue.
952 Wed Aug 5 14:23:52 1998 Owen Taylor <otaylor@redhat.com>
954 * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
955 clip rects (or do anything) for shadow_none.
957 Wed Aug 5 13:14:57 1998 Owen Taylor <otaylor@redhat.com>
959 * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
960 Yes, it was needed. draw() and expose() are _not_
963 Sat Aug 1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
964 * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
966 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
967 * YES YES YES YES YES clist borders work again! YES! YES YES! gimme
968 more baby oooh yeah more more MORE YES YES.
970 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
971 * hopefully fixed problem wiht togglebuttons acting like
972 radiobuttons in gtktogglebutton.c
974 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
975 * fixed another drawing buglet in the frame drawing code (actually
976 in the clearing code but anyway in gtkstyle.c)
978 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
979 * Fixed warning from colorsel widget...
981 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
982 * Fixed defautl drawing code to no longer clobber the original style
983 pixmap bgs as it did and added a helper funciton og gtkstyle.c to
986 Thu Jul 30 18:09:21 1998 Owen Taylor <otaylor@redhat.com>
988 * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
990 * gtk/gtktooltips.c: Pass a widget (the window) to the
991 drawing function instead of the GtkTooltips.
993 Thu Jul 30 17:27:10 1998 Owen Taylor <otaylor@redhat.com>
995 * gdk/gdkwindow.c: Abstract out checking for shape
996 extension into a function.
998 * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
999 Remove extra callls to gtk_window_draw().
1001 Thu Jul 30 11:18:43 1998 Owen Taylor <otaylor@redhat.com>
1003 * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
1005 * themes/th_main.c: Moved messages around so they are
1006 printed before destroying strings.
1008 Wed Jul 29 16:56:07 1998 Owen Taylor <otaylor@redhat.com>
1010 * gdk/gdk.c: Fairly simple implementation of expose compression.
1011 (No GraphicsExpose compression yet, always compress
1012 with the equivalent of XtCompressMultiple - no compression
1013 of Expose events across non-Expose events)
1015 * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
1016 Find rectangle bounding two rectangles.
1018 * gtk/gtkstyle.c: Set clip rects for a few extra GC's
1019 in gdk_default_draw_shadow()
1021 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
1022 * Fixed drawing functions to handle switching themes on the fly
1023 gracefully and look decent.
1025 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
1026 * Added all the theme drawing code to all widgets, fixed up minor
1027 nigglies in some widgets when it comes to themes, seem to be
1028 running into some funky behavior with clipping rects in GC's. Too
1029 many files to list here. (all files that now use gtk_paint_* are
1032 Tue Jul 28 22:49:16 1998 Owen Taylor <otaylor@redhat.com>
1034 * themes/th_main.c themes/th_draw.c gtk/testgtkrc:
1035 Set up the demo theme so it is loaded from the RC file.
1037 * themes/th_draw.c: Alleviate the hardcoded paths a wee
1038 bit. (use $HOME/themes/)
1040 * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in
1041 the RC file via dlopen()
1043 Tue Jul 28 20:30:56 1998 Owen Taylor <otaylor@redhat.com>
1045 Internal handling of styles and RC styles pretty much
1046 completely reworked for Theme work.
1049 - Added routines for virtualization of RcStyle and Style handling.
1050 - Temporary "sample" inline theme-engine. (Does nothing
1051 but print out a few messages.
1054 - Made GtkRcStyle public, added flags to tell if particular
1055 colors have been set.
1056 - RC Styles are "transparent", and the final style for
1057 a widget is the composition of all matching styles
1058 - Added pointer to GtkThemeEngine, and gpointer engine_data
1059 to RC style and style.
1060 - Parse "engine" keyword, load the appropriate theme engine
1061 and call the engine's parser.
1064 - Keep a GtkRcStyle * in styles created from Rc Styles.
1065 - Load up images from RC file at style attachment time.
1066 - Call ->engine->foo() at appropriate times.
1067 - Don't use a GCache. All incarnations for a style are
1068 just linked together in a list, depend on the RC style
1069 code to find the existing copy.
1071 Tue Jul 28 14:41:54 1998 Owen Taylor <otaylor@redhat.com>
1073 * gtk/gtkwidget.[ch]: Added the concept of queued redraws
1074 of partial areas. This can be done either relative
1075 to the existing windows (gtk_widget_queue_clear[_area]())
1076 or relative to the future allocation of the widget
1077 (gtk_widget_queue_draw[_area]).
1079 The initial implementation is pretty braindead, but
1082 * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
1083 in favor of gtk_widget_queue_clear().
1085 * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
1086 flags in favor of gtk_widget_queue_clear()
1088 Tue Aug 4 19:12:14 1998 Owen Taylor <otaylor@redhat.com>
1090 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
1091 handling of partially clipped areas.
1093 Thu Nov 5 18:52:35 1998 Lars Hamann <lars@gtk.org>
1095 * gtk/gtkclist.h (struct _GtkCListClass)
1096 * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
1098 Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org>
1100 * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
1101 vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
1103 * gtk/gtkclist.c (gtk_clist_class_init): added new args types
1104 "hadjustment" & "vadjustment"
1105 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
1106 set/get_arg functions
1107 (gtk_clist_construct): don't create/adjust scrollbars.
1108 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
1109 to set h/vadjustments
1110 (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
1111 to query h/vadjustments
1112 (create_scrollbars): removed.
1113 (create_adjustments): replacement for create_scrollbars
1114 (gtk_clist_new): call gtk_clist_new_with_titles
1115 (gtk_clist_new_with_titles): don't warn on titles == NULL
1116 (move_horizontal): use CLAMP instead
1117 (gtk_clist_set_policy): deprecated method.
1118 use gtk_scrolled_window_set_policy instead.
1119 (vadjustment_value_changed): use clist->vadj.
1120 (adjust_scrollbars): renamed to adjust_adjustments
1121 (adjust_adjustments): former adjust_scrollbars
1122 (gtk_clist_destroy): unref adjustments
1123 (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
1124 (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
1125 (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
1126 (gtk_clist_thaw) (real_insert_row) (real_remove_row)
1127 (gtk_clist_set_row_height) (real_resize_column):
1128 call adjust_adjustments
1129 (gtk_clist_moveto): return if clist has no adjustments yet.
1130 (gtk_clist_parent_set): new GtkWidget::parent_set function.
1131 Autogenerate h/vadjustments if needed.
1132 (move_horizontal) (move_vertical): some cleanups
1134 * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
1135 call only gtk_viewport_set_h/vadjustment and let these functions
1137 (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
1138 generate a new adjustment if needed
1140 * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
1141 use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
1143 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
1144 queue_resize if visibility of scrollbars changes
1145 (gtk_scrolled_window_remove): only call container_remove with
1146 scrolled_window->viewport automatically if viewport was autogenerated
1147 (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
1148 auto create a viewport only if widget does not take h/vadjustments.
1149 (gtk_scrolled_window_construct): don't generate a viewport
1151 (gtk_scrolled_window_forall): call callback with viewport in any case
1152 (gtk_scrolled_window_set_arg): call gtk_container_add in case of
1154 (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
1155 (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
1159 (create_ctree) (export_ctree) (create_clist): use a scrolled_window
1160 in conjunction with clists/ctrees
1162 * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
1163 in conjunction with clists
1165 * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
1166 in conjunction with clists
1168 Wed Nov 4 21:52:57 1998 Lars Hamann <lars@gtk.org>
1170 * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
1171 (gtk_ctree_remove_node): select focus_row if needed
1172 (cell_size_request): only get pixmap size if pixmap != NULL
1174 Wed Nov 4 04:30:37 1998 Tim Janik <timj@gtk.org>
1176 * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
1177 GTK_IS_WIDGET (widget):
1179 Wed Nov 4 02:02:07 1998 Lars Hamann <lars@gtk.org>
1181 * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
1182 focus_row after a remove_row call.
1184 Sun Nov 1 21:00:06 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
1186 * gtk/gtkoptionmenu.c
1187 * gtk/gtkmenushell.c: make option menus work when some of the
1188 menuitems are hidden - previously, option menu would popup too
1191 1998-10-31 Raja R Harinath <harinath@cs.umn.edu>
1193 * gtk/gtkfeatures.h.in: Remove `#pragma }'.
1195 * gdk/gdki18n.h: Update to use new `glib' widechar defines.
1197 * configure.in (CFLAGS): Don't use test -z "echo .. | grep". Use
1199 (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
1200 (GDK_WLIBS): New variable. Lists extra libraries needed to use
1202 * gtk-config.in (--libs): List $GDK_WLIBS, too.
1204 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1206 * Released GTK+ 1.1.3
1212 * docs/gtk-config.1: updated for v1.1.3
1216 * docs/Makefile.am: Includes new 'make release' as well as
1217 'make sanity'. Also handles html and text creation from html,
1218 and puts them into the distribution
1220 * docs/Makefile.sgml: removed, similar functionality is now in
1221 the Makefile.am file
1223 * docs/.cvsignore: ignore html and text directories
1224 * docs/glib.texi: removed (now in glib dist)
1226 Fri Oct 30 20:02:36 1998 Lars Hamann <lars@gtk.org>
1228 * gtk/gtklist.c (gtk_list_remove_items_internal):
1229 free undo_un/selection, unselect list_item before disconnect
1231 (gtk_list_destroy): removed. gtk_list_shutdown clears the list
1233 (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
1234 (gtk_list_signal_item_toggle) (gtk_list_signal_scroll_horizontal)
1235 (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
1236 (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
1237 (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
1238 (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
1239 (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
1240 new functions. These functions are signal connected to inserted
1241 list_items, to handle key bindings and GtkItem::de/select/toggle
1244 * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
1245 gtk_object_class_add_signals call.
1246 (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
1247 (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
1248 (gtk_list_item_start_selection) (gtk_list_item_end_selection)
1249 (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
1250 (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
1251 removed. These functions are handled via connected
1252 gtk_list_signal_* functions now
1254 Fri Oct 30 05:24:43 1998 Tim Janik <timj@gtk.org>
1256 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1257 even with --include-deps:
1258 $(libgtk_la_SOURCES): $(BUILT_SOURCES)
1260 Fri Oct 30 01:56:08 1998 Tim Janik <timj@gtk.org>
1262 * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
1263 gtk_object_data_set_destroy to fit the gtkobject.h API.
1265 * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
1268 Added support for an extra 'base' filter which an application can
1269 set to restrict the fonts available to the user (e.g. a terminal
1270 program only wants the user to be able to select fixed-width fonts).
1271 The type of font (bitmap/scalable/scaled bitmap) is now
1272 also a part of the filter, so that an application can
1273 request that only scalable fonts are shown.
1274 There are new functions to set the base & user filters.
1275 I've also stopped the up/down key press signals getting
1276 to the clists since the font selection widget handles
1277 them itself. It acted a bit strangely before.
1279 Sun Oct 25 20:27:02 1998 Tim Janik <timj@gtk.org>
1281 * gtk/gtkmain.c (gtk_init): support an environment variable
1282 GTK_MODULES= which takes a colon sperated list of module names
1283 automatically loaded at gtk_init() startup.
1285 Sun Oct 25 08:04:33 1998 Tim Janik <timj@gtk.org>
1287 * gtk/gtkwidget.c: added more g_return_if_fail() statements.
1289 Thu Oct 22 22:40:35 1998 Lars Hamann <lars@gtk.org>
1291 * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
1294 Thu Oct 22 16:22:55 1998 Lars Hamann <lars@gtk.org>
1296 * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
1299 Thu Oct 22 02:29:53 1998 Tim Janik <timj@gtk.org>
1301 * gtk/gtkfilesel.h: GtkType and macro fixups
1302 * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
1303 for the file selection widget to try a completion on (set the
1306 Wed Oct 14 14:34:04 1998 Tim Janik <timj@gtk.org>
1308 * gtk/gtkmain.c: implement idle functions via GHook. this gives a
1309 slight speed improvement and lessens code duplication.
1311 Tue Oct 20 14:53:28 1998 Owen Taylor <otaylor@redhat.com>
1313 * gtk/gtkdnd.c: Always send "drag_leave" to dests
1314 without GTK_DEST_DEFAULT_MOTION.
1316 Tue Oct 20 11:55:24 1998 Owen Taylor <otaylor@redhat.com>
1318 * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
1319 on destroyed windows so we clear the XID table properly.
1320 Finish up restructure of return value handling that
1321 was half-done before.
1323 Tue Oct 20 12:57:10 1998 Owen Taylor <otaylor@redhat.com>
1325 * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
1326 the window tree more comprehensively, so that we find
1327 client windows hidden under non-toplevels.
1329 Tue Oct 20 12:43:04 1998 Owen Taylor <otaylor@redhat.com>
1331 * gtk/gtkselection.c (gtk_selection_data_set):
1332 Maintain the null-termintation guarantee, even when
1333 data = NULL, length = 0. (Warn on data = NULL,
1336 Mon Oct 19 16:41:44 1998 Owen Taylor <otaylor@redhat.com>
1338 * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
1339 into function prototype for drag_data_received.
1341 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
1343 * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
1345 Mon Oct 19 23:44:41 1998 Lars Hamann <lars@gtk.org>
1347 * gtk/gtkclist.c: rearranged some functions
1348 (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
1350 (gtk_clist_set_column_resizeable): if resizeable disable auto_resize
1351 (gtk_clist_set_border): deprecated function, use
1352 gtk_clist_set_shadow_type instead.
1353 (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
1354 (adjust_scrollbars): some cleanups
1355 (select_row) (unselect_row): removed. replaced by equivalent
1356 gtk_signal_emit calls
1357 (add_style_data): removed, use gtk_clist_style_set instead
1358 (gtk_clist_style_set): fill in size data, after style was set.
1359 (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
1360 (gtk_clist_set_cell_style): auto_resize columns if needed
1361 (column_auto_resize): resize column if needed for auto_resize
1362 (real_clear): disable auto_resize while list destroy
1363 (resize_column): removed
1365 * gtk/gtkctree.c : (gtk_ctree_remove_node)
1366 (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
1367 (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
1368 (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
1369 (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
1370 (real_tree_collapse) (real_tree_expand) (column_auto_resize):
1371 auto_resize columns if needed
1372 (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
1373 (real_clear): disable auto_resize while processing the tree
1375 * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
1378 Mon Oct 19 08:31:36 1998 Owen Taylor <otaylor@redhat.com>
1380 * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
1381 typo - look for right atom on transfer failures.
1383 Sun Oct 18 20:52:22 1998 Owen Taylor <otaylor@gtk.org>
1385 * gtk/gtkwidget.c gtkmarshal.list: Change signal
1386 for drag_data_get to match the use that was being
1387 made of it everywhere else...
1389 Sun Oct 18 18:16:39 1998 Owen Taylor <otaylor@gtk.org>
1391 * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
1392 mechanism, that is used for the DND messages.
1394 Removed all the old DND code.
1396 * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
1397 get the visual of a given colormap.
1399 * gtk/gtkcolorsel.c: Conversion to new DND, drag
1402 * gdk/gdk.h gdk/gdkdnd.c: The low-level
1403 X oriented portions of drag and drop protocols.
1404 Sending and receiving client messages, and navigating
1407 * gdk/gdkimage.c: added a gdk_flush() when destroying
1408 SHM images to hopefully make it more likely that
1409 X will gracefully handle the segment being destroyed.
1411 * gdk/gdkprivate.h gtk/gtkdebug.h: Add new
1412 DND debugging flags.
1414 * gtk/gtkeditable.[ch]: Updates for the selection handling
1417 * gtk/gtkselection.[ch]: Added GtkTargetList, a
1418 refcounted data structure for keeping track of lists
1419 of GdkAtom + information. Removed selection_handler_add
1420 in favor of a "drag_data_get" signal.
1422 * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
1423 dependent) parts of the DND protocols, display of drag icons,
1424 drag-under highlighting, and the "default handlers".
1426 * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
1427 windows that are used for reliable pointer grabs and
1428 selection handling in the DND code.
1430 * gtk/testdnd.c: New test program for new DND. (Old
1431 DND tests in testgtk still need to be converted.)
1433 * gtk/testselection.c: Use the new selection API.
1435 * docs/dnd_internals: Start at describing how
1436 all the new code works inside.
1438 * docs/Changes-1.2.txt: New file describing source-incompatible
1439 changes in GTK+-1.2.
1441 Sat Oct 17 22:50:34 1998 Owen Taylor <otaylor@gtk.org>
1443 * gdk/gdkwindow.c (gdk_window_remove_filter): Free
1444 the right list node.
1446 * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
1447 to the XID table so we can receive events on it.
1449 Wed Oct 14 12:57:40 1998 Owen Taylor <otaylor@redhat.com>
1451 * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
1452 to get the timestamp from a generic event.
1454 Fri Oct 9 13:16:04 1998 Owen Taylor <otaylor@redhat.com>
1456 * gtk/gtkwidget.c (gtk_widget_add_events): Added function
1457 that safely adds additional events to a widget's event
1458 mask, even if the widget has previously been realized.
1459 (We can do this, but not remove events from the event
1462 Fri Oct 2 17:35:35 1998 Owen Taylor <otaylor@redhat.com>
1464 * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
1465 for AnyPropertyType.
1467 Fri Oct 2 10:32:21 1998 Owen Taylor <otaylor@redhat.com>
1469 * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
1472 Thu Sep 24 20:33:54 1998 Owen Taylor <otaylor@redhat.com>
1474 * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
1477 Thu Sep 17 14:23:03 1998 Owen Taylor <otaylor@redhat.com>
1479 * gdk/gdk.c (gdk_event_translate): Removed printing
1480 of unknown window lookup warnings. (Made it
1481 a GDK_NOTE) - they happen in many circumstances.
1483 Tue Sep 8 12:38:43 1998 Owen Taylor <otaylor@redhat.com>
1485 * Call XFilterEvent() on events we get for unknown
1486 windows, since it may be the window Xlib uses to
1487 communicate with the IM.
1488 (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
1490 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
1492 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
1495 Thu Aug 27 12:03:14 1998 Owen Taylor <otaylor@redhat.com>
1497 * gtk/gtksignal.c (gtk_signal_newv): Improve warning
1498 message for return_value + GTK_RUN_FIRST.
1500 1998-10-18 Martin Baulig <martin@home-of-linux.org>
1502 * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
1503 line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
1505 Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org>
1507 * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
1508 styles of inserted row
1509 (change_style): change style of focus_row
1511 * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
1512 (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
1513 to set/get row/cell styles.
1514 (gtk_clist_realize): attach row and cell style, allocate row colors.
1515 (gtk_clist_unrealize): detach row and cell styles.
1516 (get_cell_style): new function. get correct cell style.
1517 (draw_cell_pixmap): new function.
1518 (draw_row): draw cells with row or cell styles.
1519 (row_new): set cell and row styles to NULL.
1520 (row_delete): detach & unref cell and row styles.
1522 * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
1523 new functions to attach/detach styles and allocate colors.
1524 (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
1525 styles of invisible nodes.
1526 (draw_cell_pixmap): new function.
1527 (get_cell_style): new function. get correct cell style.
1528 (gtk_ctree_draw_expander): new function. draw tree expander.
1529 (gtk_ctree_draw_lines): new function.draw tree lines.
1530 (draw_row): draw cells with row or cell styles.
1531 (row_new): set cell and row styles to NULL.
1532 (row_delete): detach & unref cell and row styles.
1533 (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
1534 (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
1535 Analogons of GtkCList functions
1536 (gtk_ctree_set_spacing): new function. set spacing between
1537 tree expander and cell contents
1538 (gtk_ctree_set_expander_style): new function. set expander style
1540 (ctree_is_hot_spot): few changes due to draw_row modifications.
1542 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
1544 * gtk/gtkcombo.c: try completion on MOD1-TAB.
1545 Handle case when the combo->list is empty.
1547 Mon Oct 12 07:51:34 1998 Tim Janik <timj@gtk.org>
1549 * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
1550 handlers that have not yet been disconnected (finally managed to
1551 trigger the gtk_signal_handler_unref() paranoid warning).
1553 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1555 * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
1556 width and height which is -1 and not -2.
1558 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
1561 * autogen.sh: we need libtool 1.2b now
1563 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1565 * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
1566 and bottom attach arguments as mandatory and readjust the table size
1567 and opposing edge accordingly if required. this way the order in which
1568 the arguments are set doesn't matter.
1570 Thu Oct 8 15:53:59 1998 Owen Taylor <otaylor@redhat.com>
1572 * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
1573 message to print out parent class name correctly.
1575 Thu Oct 8 07:07:10 1998 Tim Janik <timj@gtk.org>
1579 removed functions gtk_object_set_data_destroy and
1580 gtk_object_set_data_destroy_by_id.
1581 added functions gtk_object_remove_no_notify and
1582 gtk_object_remove_no_notify_by_id which will remove a certain data
1583 portion without invokation of its destroy notifier, this should only
1584 be used in very controled circumstances.
1586 Wed Oct 7 23:59:37 1998 Lars Hamann <lars@gtk.org>
1588 * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
1589 size_allocate_title_buttons call
1590 (gtk_clist_realize): changed initial column.window position
1592 Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
1594 * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
1596 * gtk/gtkctree.c (create_xor_gc): removed
1597 (gtk_ctree_button_press): set correct line_attributes for
1598 clist->xor_gc on drag start
1599 (gtk_ctree_button_release): reset clist->xor_gc
1601 Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
1604 * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
1605 which were in place to fixup emacs' cc-mode indentation.
1606 putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
1607 proper way to achive this and doesn't produce problems for
1608 stupid pragma-related compiler bugs. ;)
1610 Wed Oct 7 00:59:46 1998 Lars Hamann <lars@gtk.org>
1612 * gtk/gtkclist.h: new signal GtkCList::resize_column.
1613 * gtk/gtkclist.c (draw_row): don't draw invisible columns
1614 (size_allocate_title_buttons) (size_allocate_columns):
1615 skip invisible columns
1616 (new_column_width): take min/max_width into account
1617 (gtk_clist_button_release) (gtk_clist_motion):
1618 changes due to changed new_column_width function
1619 (LIST_WIDTH): changed define to inline function.
1620 (real_resize_column): class function for resize_column signal
1621 (gtk_clist_motion): fixed autoscrolling for column resizes
1622 (gtk_clist_set_column_visibility): don't hide last visible column,
1623 changed visible arg to gboolean
1624 (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
1625 new functions : set min/max width of a column
1626 (gtk_clist_set_column_resizeable): new function : enable/disable
1627 column resize operations by mouse
1629 * gtk/gtkctree.c (draw_row): don't draw invisible columns
1630 (ctree_is_hot_spot): return FALSE if tree_column is invisible
1631 (draw_xor_line) (draw_xor_rect): draw full rectangle/line if
1632 tree_column is invisible
1633 (gtk_ctree_find_all_by_row_data)
1634 (gtk_ctree_find_all_by_row_data_custom): new function from
1635 Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
1636 GtkCTreeNodes with row->data == data.
1638 Tue Oct 6 14:05:00 1998 Tim Janik <timj@gtk.org>
1640 * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
1641 memory (Martin Pool <mbp@wistful.humbug.org.au>).
1643 Mon Oct 5 15:26:30 1998 Raph Levien <raph@gimp.org>
1645 * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
1646 should have been guint32. Thanks to Tristan Colgate for finding it.
1648 Sun Oct 4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1650 * gtk/gtkcalendar.h:
1651 gtk/gtkcalendar.c: More changes:
1652 - The day with focus is now seperated from the day selected
1653 - The day with focus has the xor's line around it
1654 - The selected day is now standard selected style
1655 - The week names and week numbers are now also drawn
1657 - Space now selects the day which has focus
1659 Sun Oct 4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1661 * gtk/gtkcalendar.h:
1662 gtk/gtkcalendar.c: Some significant changes, including:
1663 - No longer draw focus around entire widget, only around
1664 the day which has focus
1665 - Draw relief around entire widget like originally planned
1666 - Show header and day names by default
1667 - Move data private to the widget out of GtkCalendar struct
1668 and only point to it with a gpointer
1669 - Remove some old unused variables from GtkCalendar struct
1671 Sun Oct 4 17:45:43 BST 1998 Tony Gale <gale@gtk.org>
1673 * docs/gtk_tut.sgml: update I've had sat around:
1674 - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
1675 - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
1676 - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
1678 1998-10-01 Martin Baulig <martin@home-of-linux.org>
1680 * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
1682 * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
1683 Makes it possible to individually show and hide columns.
1684 (size_allocate_columns): Adapted to keep track of hidden columns.
1685 (size_allocate_title_buttons): Likewise.
1687 Sat Oct 3 17:54:48 1998 Tim Janik <timj@gtk.org>
1689 * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
1690 fundamental types, collect an argument of the type returned from
1691 gtk_type_get_varargs_type(). removed the first macro argument which
1692 was just the same as the fundamental type of the *arg passed to
1694 * gtk/gtkarg.c (gtk_args_collect):
1695 * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
1697 * gtk/gtktypeutils.h:
1698 * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
1699 gtk_type_get_varargs_type() to set and query the varargs collect
1700 type used for a fundamental type, registered outside of Gtk.
1702 * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
1703 GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
1706 * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
1707 GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
1710 Sat Oct 3 01:25:24 1998 Lars Hamann <lars@gtk.org>
1712 * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
1713 (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
1714 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
1716 (real_tree_expand) (real_tree_collapse):
1717 don't expand/collapse a leaf
1719 Fri Oct 2 16:10:36 1998 Tim Janik <timj@gtk.org>
1721 * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
1722 segfault when looking up a non-existant value name (reported by
1723 Pablo <pcj+gtk@primenet.com>).
1725 Thu Oct 1 10:40:20 1998 Tim Janik <timj@gtk.org>
1727 * gtk/gtkclist.h (gtk_clist_prepend):
1728 * gtk/gtkclist.c (gtk_clist_prepend): new function.
1729 (gtk_clist_insert): added g_return_val_if_fail()
1730 statements. accept a row parameter < 0 or > clist->rows to indicate
1732 (real_clear): first clean up all internal pointers and lists (e.g.
1733 clist->row_list or clist->rows), then delete the distinct rows. this
1734 is required because of destroy notifiers, we need to have all internal
1735 structures updated and be reentrant.
1737 * gtk/gtkcalendar.h:
1738 * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
1739 GtkCalendarClass signal methods.
1740 GtkType and macro fixups, put `void' into () prototypes, avoid C++
1741 style comments, indentation fixes, fixed some g_return_if_fail()
1743 (gtk_calendar_paint_header):
1744 (gtk_calendar_paint_day_names):
1745 (gtk_calendar_paint_week_numbers):
1746 (gtk_calendar_paint_main): made these static functions.
1747 (gtk_calendar_select_month):
1748 (gtk_calendar_select_day):
1749 (gtk_calendar_mark_day):
1750 (gtk_calendar_unmark_day):
1751 (gtk_calendar_get_date): signedness corrections, use guints
1753 (gtk_calendar_size_request): removed unused variables.
1755 Wed Sep 30 13:11:09 1998 Tim Janik <timj@gtk.org>
1757 * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
1758 widgets in the ->widgets_by_action list that have a callback
1759 defined (not only those with a callback_action!=0).
1761 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1763 * gtk/gtkcalendar.h:
1765 examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
1767 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1769 * gtk/gtkcalendar.h:
1771 examples/calendar: Added gtkcalendar widget and demo
1773 Sat Sep 26 06:15:34 1998 Tim Janik <timj@gtk.org>
1775 * gtk/gtkclist.c (gtk_clist_sort):
1777 (gtk_clist_unselect_all):
1778 (gtk_clist_select_all): adde g_return_if_fail() statements.
1780 Sat Sep 26 04:46:22 1998 Tim Janik <timj@gtk.org>
1782 * configure.in: set binary age and interface age to 0.
1784 * gtk/gtkspinbutton.h:
1785 * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
1786 gtk_spin_button_configure. gtk_spin_button_construct is still defined
1787 as an alias for gtk_spin_button_configure for source compatibility,
1788 but actuall use is deprecated.
1789 typeness corrections, i.e. gint->gboolean and gint->guint.
1790 added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
1791 GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
1792 GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
1793 GtkSpinButton::adjustment, GtkSpinButton::digits and
1794 GtkSpinButton::climb_rate.
1795 GtkType and macro fixups.
1797 Sat Sep 25 23:33:55 1998 Tim Janik <timj@gtk.org>
1799 * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
1800 the *real* geometry position of a window, taken possible window
1801 manager offsets into account.
1802 this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
1803 olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
1804 it does fail though for amiwm which adds windows to a pseudo root
1805 window, and for icewm by a small offset because it defines the
1806 geometry position whithin its border.
1808 * gtk/testgtk.c: added "saved position" test to figure how
1809 gdk_window_get_root_origin() interacts with window managers (repopup
1810 this window to figure ;).
1812 Wed Sep 23 06:09:19 1998 Tim Janik <timj@gtk.org>
1814 * configure.in: update to Gtk+ version 1.1.3, binary age 1,
1819 (gtk_object_unref): check for ->ref_count to be greater than 0 (the
1820 existing code was buggy in letting ->ref_count==0 pass through and
1821 then failing the living_objs_ht assertion).
1823 * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
1824 pixtext fields (Roman Pozlevich <roma@botik.ru>).
1826 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1828 * Released GTK+ 1.1.2
1830 Mon Sep 21 01:12:44 1998 Jay Cox (jaycox@earthlink.net)
1832 * gtk/Makefile.am: use $(PERL) instead of perl
1833 * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
1834 also much faster to render.
1836 Mon Sep 21 07:44:30 1998 Tim Janik <timj@gtk.org>
1838 * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
1839 the required memory block, rather than allocating it newly from
1840 scratch and doing a full-blown block copy on it.
1842 Mon Sep 21 02:30:06 1998 Tim Janik <timj@gtk.org>
1844 * NEWS file update for upcoming release of Gtk+ version 1.1.2,
1845 binary age 0, interface age 0.
1847 * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
1849 Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com>
1851 * ltmain.sh: Patch to libtool-1.2b to make --disable-static
1854 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
1856 * HACKING: indent other than GNU indent should be OK
1859 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
1860 instead of piping through indent. If indent wasn't
1861 found in ./configure don't bother indenting at
1864 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
1866 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
1868 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
1870 * gtk/Makefile.am: use $(AWK) instead of awk
1872 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
1874 * gtk/Makefile.am (gdk_headers):
1875 Remove references to $(top_srcdir).
1876 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
1877 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
1879 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
1881 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
1882 GData*object_data to cure compiler warnings.
1884 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
1888 * mkinstalldirs: updated to latest automake version
1890 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
1892 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
1893 (gtkinclude_HEADERS): ... here.
1894 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
1896 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
1898 * HACKING: added GNU indent, as it is now required to successfully
1899 build gtk+. Should this be detected in autoconf, possibly?
1901 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
1903 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
1904 change library versioning scheme to drop LT_RELEASE
1905 from the -l line, while keeping it in the soname.
1907 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
1909 * configure.in Makefile.in: define a MAINT-like variable REBUILD
1910 which is set if Perl and awk are found, and autogenerated sources
1911 can be rebuilt. Remove the auto-generated sources from
1914 Add dependencies so that the autogenerated sources are
1915 rebuilt if the files they depend on change.
1916 (This unfortunately currently results in the entire
1917 gtk/ directory being rebuilt when any header changes.
1918 Moving all enums to gtkenums.h would fix this.)
1920 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
1922 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
1923 gtk_object_set_data_destroy_by_id functions to set the destroy
1924 function pointer for an existing data portion.
1926 * gtk/gtkobject.c: removed the GtkObjectData implementation and
1927 made all gtk_object_*data* functions use the GLib equivalents.
1929 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
1931 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
1932 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
1933 (widget != NULL), otherwise radio button insertion will not work
1934 -- the widget argument is NULL for the first radio button in the
1937 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
1939 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
1940 of g_new to malloc(), added back in the one place where
1941 it actually mattered. #include <stdlib.h>.
1943 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
1945 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
1947 * gtk/gtkfilesel.c: Keep a list of directories in which we never
1948 want to stat the entries (like /afs), and assume everything in
1949 those directories is a subdirectory.
1951 - When following a path, try to open components even when
1952 we don't find them in their parent's directory to
1953 support automounters.
1955 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
1957 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
1958 a new size from the WM if we asked for the same size
1959 before and our request was rejected.
1961 * gtk/gtkwindow.c (gtk_window_configure_event): If
1962 in response to a request, we get a configure event
1963 with unchanged dimensions, send a synthetic expose
1964 since ForgetGravity won't expose our window.
1966 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
1968 * gtk/gtktext.c (adjust_adj): Change the way we
1969 set the adjustments on resize so that it tries to
1970 keep the beginning of the text in approximately
1973 Removed assertion that the above change made invalid.
1975 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
1977 * gtk/gtktext.c: - Save first_cut_pixels when switching
1978 sizes, so that if we switch to the _same_ size,
1979 we don't move lines around.
1981 - Make sure that the text area always has a size of at
1982 least 1x1, then do all computations when realized.
1984 - When fetching lines in recompute_geometry, make
1985 sure we fetch enough lines to cover the screen.
1987 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1989 * gdk/gdkimage.c: changed g_new()s to malloc()s and
1990 g_free()s to free()s to avoid mixing g_new()s with
1991 free()s. X itself uses free() on some of the
1994 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
1996 * gtkfilesel.c: Maintain a list of directories like
1997 /afs we know contain only directories, and avoid
1998 stat'ing files in those directories. (Because
1999 stat'ing all files in /afs is extremely expensive)
2001 To support automounters, try to open directories,
2002 even if we couldn't find them when reading their
2005 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
2007 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
2008 to allow the same gtk.m4 to work for 1.0.x and
2011 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
2013 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
2014 to set/unset the selectable flag of a single row.
2015 (gtk_clist_get_selectable): new function
2016 to get the state of the selectable flag
2018 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
2019 (gtk_ctree_node_get_selectable): clist analogons
2021 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
2023 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
2026 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
2027 bugs in the 4bit gray cases.
2029 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
2031 * configure.in: added -posix check for NeXTStep
2033 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
2034 a unique buffer for each thread.
2036 * docs/gtk-config.1: clarified copyright
2038 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
2040 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
2042 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
2044 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
2047 * ltconfig: use GLib's ltconfig which honours lcc.
2049 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
2051 * configure.in: comment the -std1 check and save LIBS properly
2053 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
2055 * gtk/testrgb.c: #include <stdlib.h>
2057 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
2059 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
2060 When the pointer is grabbed on an input window,
2061 either explicitely, or through press-grab, and
2062 then grabbed on a non-input window, ungrab the
2065 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
2067 * gtk/gtktypeutils.h: don't include any gdk headers.
2068 added structure definitions for GtkTypeObject and GtkTypeClass,
2069 which cover the very basic fields of GtkObject and GtkObjectClass,
2070 which are actually used by the type system.
2072 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
2073 we only refer to our own structures. improved class inheritance
2074 sanity checking a bit.
2076 * gtk/gtkobject.h: placed appropriate comments at the beginnings
2077 of the GtkObject and GtkObjectClass structures, which explain
2078 their relationship to GtkTypeObject and GtkTypeClass.
2080 * gtk/gtktypeutils.h:
2082 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
2083 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
2084 gtkobject.h to gtktypeutils.h.
2088 removed gtk_object_check_cast() and gtk_object_check_class_cast()
2089 functions. to keep source compatibility, we can provide macro aliases
2090 for the corresponding gtk_type_* functions. but then again, people
2091 shouldn't have been using these functions anyways since they were part
2092 of Gtk's internal API.
2094 * gtk/gtktypeutils.h:
2095 * gtk/gtktypeutils.c:
2096 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
2097 functions to check GtkTypeObject and GtkTypeClass types.
2099 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
2102 * gtk/gtkctree.c: `const' fixups.
2105 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
2107 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
2108 if it is passed as NULL.
2110 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
2112 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
2113 big-endian cases. Added a 4bpp packed gray mode (somewhat
2114 incorrectly hardwired to MSB), which should take care of
2117 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
2119 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
2120 GtkSIgnalQuery leak.
2122 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
2124 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
2125 GTK_MENU_DIR_CHILD: check for the existance of
2126 menu_shell->active_menu_item before accessing its child.
2128 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
2129 don't, make a default selection.
2131 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
2133 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
2134 the children with _forall for sensitivity changes and with
2135 _foreach on pure state changes. this fixes a lot of the
2136 old inclusions of internal widgets into _foreach calls.
2138 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
2139 do the work. don't walk the subtrees of first level children.
2141 * gtk/gtktreeitem.c: provide a _forall implementation,
2142 which walks the subtrees as well for include_internals.
2144 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
2145 the submenus as well for include_internals.
2147 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
2148 implemented gtk_scrolled_window_forall, which will iterate over
2149 the viewport and the scrollbars for gtk_container_forall or
2150 iterate over the viewports children for gtk_container_foreach.
2156 * gtk/gtkmenushell.c:
2162 * gtk/gtknotebook.c:
2163 removed the old gtk_*_foreach functions and provided gtk_*_forall.
2165 * gtk/gtknotebook.c:
2166 (gtk_notebook_real_switch_page): expose tabs.
2167 (gtk_notebook_page_num): new function to return the page number
2168 of a distinct child.
2169 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
2170 under some circumstances.
2172 * gtk/gtktreeitem.c:
2173 (gtk_real_tree_item_select):
2174 (gtk_real_tree_item_deselect): major fixes.
2175 some general fixups wrt queue_redraw, and tree items not being
2178 * gtk/gtklistitem.c:
2179 (gtk_real_list_item_select):
2180 (gtk_real_list_item_deselect):
2181 (gtk_real_list_item_toggle):
2182 removed unneccessary queue_redraw calls.
2184 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
2186 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
2187 automatically popup the menu on space bar.
2189 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
2191 * gtk/gtkcontainer.h:
2192 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
2193 method), which acts similar to gtk_container_foreach(), but iterates
2194 over internal children. the GtkContainer::foreach signal vanished in
2195 favour of a new class method ->forall() that optionally includes
2198 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
2199 but a _forall implementation, since all child widgets we have are
2201 (column_button_create): set the parent window prior
2202 to gtk_widget_set_parent().
2205 exchanged all calls to gtk_container_foreach() with
2206 gtk_container_forall().
2209 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
2210 the GtkWidget::composite_child argument. to have a widget created
2211 with the flag initially, two new functions got added to wrap a widgets
2213 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
2215 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
2217 * gtk/gtktooltips.h:
2218 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
2219 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
2220 prior to the first tip being set.
2221 don't put an extra reference on the window, since it is a toplevel,
2222 it wont get destroyed from anywhere else.
2224 * overall macro and GtkType fixups.
2226 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
2228 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
2229 constructs by more forgiving ones. (Does anyone else feel like
2230 the color selector need rewriting?).
2232 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
2234 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2237 * gtk/gtkmenu.c: Modified reference counting so
2238 that the reference count from the toplevel that
2239 the menu creates to the menu is invisible to the
2242 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
2244 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
2245 conversion selection logic, so Suns and other big-endian
2246 machines should get faster conv routines. This is also the
2247 point where 4bpp gray and 1bpp are checked in, although I
2248 wouldn't be surprised if 1bpp is a little buggy. This is
2249 synchronized with the 0.0.7 release of GdkRgb.
2252 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
2253 appropriate change to the Makefile.am
2255 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
2257 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
2258 which is good for images that scroll (makes the dither patterns
2261 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
2264 (gdk_colormap_new) (gdk_colormap_get_system):
2265 quell some warnings with g_hash_table_new
2267 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
2268 when we're done with it
2270 * gtk/itemfactory.c:
2271 (gtk_item_factory_from_path):
2272 (gtk_item_factory_create_item): free some strings
2275 (gtk_label_finalize): free label->pattern when done
2276 (gtk_label_parse_uline): null terminate pattern string, delete
2277 some duplicated code
2279 * gtk/testthreads.c: add #include <unistd.h> for sleep()
2281 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
2283 * gtk/gtktext.c (recompute_geometry): Make sure the
2284 mark we pass to line start is the beginning of a
2285 real line, not a wrapped one.
2287 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
2289 * gtk/gtktext.c: Reference count the fonts used in
2292 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
2293 freeing functions to be more consistent, and more
2294 convenient; leave the old names in for backwards compatibility.
2296 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
2297 allocations in pseudo-color colormaps to greatly reduce
2298 calls to XAllocColor. Keep a per-colormap hashtable to
2299 speed up finding if there is an already-allocated matching
2302 * gdk/gdkcolor.c: Don't just match read the system colormap
2303 when the colormap is created, but synchronize our copy
2304 with the system colormap periodically.
2306 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
2307 Change XIM constants names to match GDK conventions
2309 * gtk/testinput.c: Allow the drawing area to get the focus.
2311 * gtk/testgtk.c: Change around the Text test to demonstrates
2312 multiple fonts, use more colors.
2314 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
2315 so they work after a widget is unrealized.
2317 * gtk/gtktext.[ch]: Remove the requirement that the text
2318 widget be realized before adding text (!) Allocate colors
2319 ourself, instead of requiring the caller allocate them.
2320 Allow changing styles to work properly by keeping track
2321 of the values for a certain property are default or
2324 * gtk/gtkmenu.h: Added some comments.
2326 * gtk/gtkentry.c: Changes to match XIM constants.
2328 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
2329 for adding keyed data to drawables. (Uses g_dataset
2332 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
2333 when creating an XPM - store them as user data for the GdkPixmap,
2334 so we don't leak colors when we create pixmaps from XPM's.
2336 Allocate memory for color information in large blocks instead of
2337 as many little pieces.
2339 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
2341 * gdk/gdkrgb.c: removed some unused variables
2344 * gtk/gtkmain.c: #if 0'd out some unused code
2346 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
2348 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
2356 * gtk/gtkcontainer.h:
2357 * gtk/gtkcontainer.c:
2362 (gtk_container_add_with_args):
2363 (gtk_container_child_set):
2364 begin the parameter elipsis (...) after the first argument name. this
2365 change is source compatible, since it was always required, even as NULL.
2367 (gtk_object_args_collect):
2368 (gtk_container_child_args_collect):
2369 changed prototypes to pass first_arg_name, also, pass va_list variable
2370 by value (portability concerns). callers changed.
2372 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
2373 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
2374 can't pass va_list variables by reference for portability reasons.
2376 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
2378 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
2379 get_visual calls, so that it gets implicitly initialized.
2381 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
2382 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
2383 such as GtkCTree function name changes
2385 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
2388 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
2389 binary version check, returning a static string for error descriptions,
2392 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
2394 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
2395 computed our geometry yet, and if not, ignore the request.
2397 * gtk/gtktext.c (correct_cache_insert): Fiddled around
2398 some more. All the bug-test codes seem to work at once
2399 now. (fingers crossed...)
2401 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
2403 * gdk/gdkrgb.c: silly visual fixes
2405 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
2408 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
2410 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
2411 anything if the event's window is not the bin window.
2412 (gtk_handle_box_motion): Likewise.
2414 1998-08-19 Raph Levien <raph@gimp.org>
2416 * gtk/testgtk.c (create_color_preview): pushed the colormap and
2417 visual so it would work better with GdkRgb.
2419 1998-08-19 Raph Levien <raph@gimp.org>
2421 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
2422 4bpp static_color mode (for vga displays). Also fixed a '64' value
2423 in the dither matrix, which was causing one pixel out of 16k to be
2426 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
2427 most of the contents. This is an API change - any apps that relied
2428 on the internal structure of GtkPreview will need some change -
2429 most notably in the use of reserved colors. The Gimp needed
2430 changes in this regard.
2432 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
2434 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
2435 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
2436 --g-fatal-warnings), noticed by miguel.
2438 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
2440 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
2448 * gtk/gtkitemfactory.c:
2449 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
2451 * gtk/gtkselection.c:
2455 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
2457 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
2459 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
2461 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
2462 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
2463 in case of show_tabs == NULL
2465 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
2467 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
2468 to --g-fatal-warnings again. this option now causes log levels of
2469 WARNING and CRITICAL to abort().
2478 * gtk/gtktypeutils.c:
2484 * gtk/gtkselection.c:
2487 * gtk/gtktreeitem.c:
2488 did a global search&replace to substitute g_print() calls with
2489 g_message(). libraries shouldn't use printf(), g_print() or
2490 g_printerr() at all.
2491 a bunch of the replacements should probably be wrapped into the
2492 G{D|T}K_NOTE() macros, so they are special cased for debugging
2493 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
2496 * gdk/gdkdnd.c: added copyright notice.
2498 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
2500 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
2501 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
2502 running a PII 233. It's synced with the 0.0.5 release of
2505 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
2508 (struct _GtkCListClass): new class methods:
2509 (sort_list) (insert_row) (remove_row) (set_cell_contents)
2512 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2513 removed and replaced by (set_cell_contents)
2514 (set_cell_contents): function for class method set_cell_contents
2515 (real_insert_row): function for class method insert_row
2516 (real_remoce_row): function for class method remove_row
2517 (real_sort_list): function for class method sort_list
2518 (default_compare): fix to avoid problems with cell types != CELL_TEXT
2521 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
2522 (gtk_ctree_node_is_visible): new function to return visibility state
2524 (gtk_ctree_show_stub): new function to set visibility of root stub
2527 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
2528 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
2529 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
2530 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
2531 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
2532 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
2533 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
2534 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
2535 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
2536 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
2537 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
2538 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
2539 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
2540 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
2541 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
2542 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
2543 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
2544 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
2545 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
2548 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2549 removed and replaced by (set_cell_contents)
2550 (set_cell_contents): function for class method set_cell_contents
2551 (real_insert_row): function for class method insert_row
2552 (real_remoce_row): function for class method remove_row
2553 (real_sort_list): function for class method sort_list
2554 (default_compare): removed. CTree now also compares two GtkCTreeRows
2555 instead of two GtkCTreeNodes.
2556 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
2558 (real_tree_expand) (real_tree_collapse): fix for refcounting of
2560 (set_node_info): call gtk_ctree_node_set_pixtext instead of
2561 manipulating the row itself
2563 * gtk/testgtk.c: use renamed functions of GtkCTree.
2564 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
2567 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
2569 * gtk/gtkmain.c: removed gtk_input_add_interp.
2571 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
2573 (gtk_editable_get_event_time): fix default: case.
2575 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
2577 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
2580 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
2583 * various minor compilation cleanups, such as bogus commas in
2584 enums and similar things.
2586 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
2588 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
2591 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2593 * NEWS: updated for 1.1.2
2594 * gtk+.spec: version = 1.1.2
2596 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
2598 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
2599 times. changed --gtk-with-module to --gtk-module at owen's request.
2601 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
2603 * gtk/gtkmain.c (gtk_init): feature a new commandline option
2604 --gtk-with-module=<module> that allows additional loading and
2605 initialization of modules (e.g. GLE).
2607 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
2609 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
2610 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
2612 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
2613 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
2614 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
2615 different *-fatal-* arguments now. this needs to be revised and
2616 compressed to a reasonable amount of arguments.
2618 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
2620 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
2621 "--g-fatal-warnings" causes fatal warnings in GLib,
2622 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
2623 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
2625 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
2626 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
2630 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
2631 since automake doesn't support per target _CFLAGS yet.
2633 * configure.in: require GLib 1.1.3.
2635 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
2637 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
2638 to set a callback to test if a node in drag can be dropped onto
2639 it's currrent location.
2640 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
2641 to change the pointer when a drag destination is not allowed.
2643 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
2645 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
2646 speeds up the 565_d case by about 25% total. Thanks Ray!
2648 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
2650 * Changed GtkSignalFunc back to () from (void). (again!)
2652 * Added file README.cvs-commits
2654 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
2656 * docs/gtk_tut.sgml:
2657 - Tidy up of the menufactory example from
2658 Andy Kahn <kahn@zk3.dec.com>
2659 - New section on Range Widgets from
2660 David Huggins-Daines <bn711@freenet.carleton.ca>
2661 - Started a new section on 'Advanced Event and Signal
2662 Handling' - used an email from Owen.
2663 - New appendix on Gdk Event Types
2664 - Added the tictactoe full example code to the
2665 'Code Examples' appendix
2667 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
2669 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
2670 to calculate all the metrics at once of a string, including
2671 things which weren't calculated before.
2673 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
2674 MenuItem type, that when put as the first thing in a
2675 menu, makes the menu tearoff. Currently drawn as a
2678 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
2679 "hide_on_activate" to the MenuItem class structure to allow
2680 check and radio buttons to be changed with <Space> without
2683 * gtk/gtkitemfactory.c:
2684 - Create a AccelGroup for each MenuShell we create.
2685 - If an '_' appears before a character 'c' in the path,
2686 then make 'c' an accelerator in the menu's accel group,
2687 and if the menuitem is menubar <alt>C an accelerator
2688 in the itemfactory's accel group. Double '__' inserts
2691 * gtk/gtklabel.[ch]: Add support for a pattern arg -
2692 which is a string. If an '_' appears in this string,
2693 the corresponding position in the label is underlined.
2695 Add gtk_label_parse_uline() convenience function which
2696 takes a string with embedded underlines, sets the
2697 pattern and label, and returns the accelerator keyval.
2699 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
2700 Instead, they create a GtkWindow and add themselves
2701 to that. (When torn off, another new feature, they
2702 create another GtkWindow to hold the torn off menu)
2704 New function gtk_menu_set_tearoff_state()
2706 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
2707 Added action signals for keyboard navigation of menus.
2709 * gtk/gtkmenushell.c: Key press handler which activates
2710 bindings for navigation, and accelerators, for handling
2711 underline accelerators. Exported functions to select
2712 and activate menu items in a menushell.
2714 * gtk/testgtk.c: Added a new "Item Factory" test which
2715 tests GtkItemFactory and the new keyboard navigation
2718 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
2720 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
2721 external functions have been called. also relookup nodes after
2722 this function has been invoked.
2724 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
2726 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
2727 beginning of Text when creating the Text widget.
2729 * gtk/testgtk.c: Grab the focus on the text widget so
2730 as to test out the above.
2732 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
2734 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
2735 ::changed is a notification signal and should have no default
2736 handler. A complete redraw of the Text widget does _not_ need to
2737 be done on every text insertion.
2739 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
2740 (gtk-abilleira-072198-patch)
2742 * gtk/gtkwindow.[ch]:
2743 Add gtk_window_set_modal() which sets a flag; when
2744 set the window does a gtk_grab_add() when the window
2745 is shown, and a gtk_grab_remove() when the window
2748 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
2749 that case will run "Create Dir","Delete File" and "Rename File"
2750 dialogs as modal too.
2752 * gtk/testgtk.c: Added a button with an example of creating modal
2753 dialog boxes. Including file selection and color selection standard
2756 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
2758 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
2759 Removed CAN_FOCUS by default from scrollbars, button
2760 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
2761 (Scrollbar definitely good change, toolbar bit more questionable)
2763 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
2765 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
2768 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
2770 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
2771 added all logical operations to gc->function.
2773 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
2775 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
2776 gtk_widget_size_allocate instead of gtk_widget_queue_resize
2777 if the visibility state of a scrollbar changes.
2779 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
2781 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
2783 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
2785 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
2786 gtk_clist_merge and gtk_clist_mergesort. :)
2788 1998-08-06 Martin Baulig <martin@home-of-linux.org>
2790 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
2791 `mergesort' -> `my_mergesort'.
2793 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
2795 * gtk/gtkenums.h: new enum GtkSortType.
2799 Added sorting capabilities to GtkCList. New APIs :
2800 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
2801 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
2802 New internal functions : default_compare, merge, mergesort.
2804 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
2806 (gtk_clist_insert): Modified to handle gtk_clist_append and the
2807 auto sort flag. Changed the return value from void to gint to
2808 return the row number where the element was actually inserted.
2810 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
2814 Removed the auto_sort flag, replaced ctree->node_compare with
2815 clist->compare all over the place, modified default_compare to
2816 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
2817 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
2819 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
2820 sorting. The lists can be sorted by a column by clicking the
2821 corresponding title button.
2823 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
2825 * Released GTK+ 1.1.1
2827 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
2831 (gtk_ctree_find): changed to return a gboolean
2832 (gtk_ctree_insert_gnode): new function for recursive insertion of a
2834 (gtk_ctree_real_select_recursive): fix for extended selection
2835 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
2836 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
2838 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
2840 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
2841 GLib version 1.1.1 is now required at minimum.
2843 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
2844 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
2846 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
2848 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
2849 cursor before (possibly) deleting the cursor's text
2852 * gtk/gtktext.c (correct_cache_delete): More attempts
2853 to clean the line-start cache up after inserting
2854 a property. Among other things, make sure to
2855 fix up text->current_line, since it is used to
2856 refetch the changed lines.
2858 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
2860 * gtk/gtktable.[ch]: Empty rows/columns of the table
2861 should not have been marked as being able to shrink.
2862 (Fixes problem with shrinking scrollbarless GIMP canvases)
2864 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
2866 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
2867 function to find a row by its data pointer using a custom
2868 comparison function.
2870 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
2872 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
2873 this fixes a bug when the whole widget is made non-sesitive
2874 the buttons weren't redrawn
2876 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
2878 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
2879 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
2880 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
2882 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
2884 * gdk/gdkwindow.c (gdk_window_reparent): Change
2885 window_private->parent pointer when reparenting.
2887 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
2889 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
2890 with the standalone release.
2892 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
2894 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
2895 (gtk_clist_button_release) (new_column_width): Few fixes for
2896 column resize. Store resize column in clist->drag_pos.
2898 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
2902 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
2903 to GtkCTreeNode *node.
2905 * gtk/gtklist.h : added extended selection mode and auto scrolling.
2906 (struct _GtkList): removed unneeded variables timer, button,
2907 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
2908 Added new variables undo_selection, undo_unselection, last_focus_child,
2909 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
2910 drag_selection, add_mode.
2913 (gtk_list_extend_selection), (gtk_list_start_selection),
2914 (gtk_list_end_selection), (gtk_list_select_all),
2915 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
2916 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
2917 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
2918 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
2921 (gtk_list_enter_notify): removed, because auto scrolling now works
2922 with gtk_list_motion_notify
2924 New functions, needed for auto scrolling :
2925 (gtk_list_motion_notify) (gtk_list_move_focus_child)
2927 New functions for extended selection support :
2928 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
2929 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
2930 (gtk_list_focus_lost)
2932 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
2933 function to support auto scrolling, and avoid out-of-sync errors in
2934 case auf GTK_SELECTION_BROWSE
2935 (gtk_list_focus): modified gtk_container_focus function to avoid out
2936 off sync errors in case auf GTK_SELECTION_EXTENDED
2939 * gtk/gtklistitem.c :
2940 New signal functions for key binding support :
2941 (toggle_focus_row), (select_all), (list_item), (unselect_all)
2942 (list_item), (undo_selection), (start_selection), (end_selection)
2943 (extend_selection), (scroll_horizontal), (scroll_vertical),
2945 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
2946 GDK_KEY_RELEASE_MASK
2947 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
2950 (gtk_combo_popup_button_press): grab pointer for combo->list
2951 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
2952 (gtk_combo_list_key_press): take care of which child HAS_GRAB
2953 (gtk_comb_init): don't connect combo->button with button_release_event
2955 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
2957 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
2959 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
2961 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
2962 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
2963 with horizontal and vertical autoscrolling.
2965 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2967 * gtk/docs/man: new directory
2968 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
2970 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
2972 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
2975 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
2977 * docs/gtk_tut.sgml: GtkTree section from
2978 David Huggins-Daines <bn711@freenet.carleton.ca>,
2979 add a GtkText widget example
2980 * examples/text/* example/tree/* : new examples for the
2981 GtkTree and GtkText widgets
2982 * docs/gtk_tut.sgml: added an appendix to hold complete code
2983 examples that aren't in a full form elsewhere in the
2984 tutorial (e.g. scribble)
2986 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2988 * Released GTK+ 1.1.0
2990 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
2992 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
2993 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
2995 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
2997 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
2998 values are looked up.
3000 * gtk/gtktypeutils.h:
3001 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
3002 gtk_type_enums_find_value to lookup enum values.
3005 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
3006 GtkCTreeExpansionType. fixed signal creations to pass the enum
3007 types not just the base type GTK_TYPE_ENUM.
3010 * gtk/gtkclist.c: fixed signal creations to pass the real enum
3011 types not just the base type GTK_TYPE_ENUM.
3013 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
3016 Began cleanup, e.g. use gtk_widget_show_all instead of many
3017 gtk_widget_show's. Completely rewrote the button box sample
3018 (only one window now). Removed "miscellaneous" button.
3020 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
3022 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
3023 Fixed wrong allocation for GTK_BUTTONBOX_END.
3024 (allocation->x => allocation->y)
3026 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
3028 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
3029 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
3031 * gtk/gtkctree.c (real_tree_select): added check to avoid double
3033 (gtk_ctree_button_press)
3034 (gtk_ctree_button_release): fix for pointer grab
3036 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
3038 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
3039 Fixed initialization problem - dirty memory could cause problems.
3040 Also checked that bitmapped fonts can be scaled when showing the
3043 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
3045 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
3046 (gtk_ctree_sort_recursive): test for node != NULL
3047 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
3048 (gtk_ctree_last) : added sanity checks
3049 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
3051 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
3053 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
3055 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
3057 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
3059 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
3061 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
3062 to check out binding priorities. someone should really write
3063 gtkrc-mode for emacs.
3065 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
3066 * gtk/testgtk.c (main): and move it here ;). this test says something
3067 on release of C-9. (this works only if the mouse pointer is on a
3068 spinbutton and there is no focus widget).
3072 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
3073 gtk_rc_parse_priority to parse path priority types.
3075 feature binding parsing.
3077 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
3079 * gtk/gtkbindings.h:
3080 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
3081 feature binding parsing in rc files.
3082 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
3083 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
3084 order the bindings with lowest priority first.
3086 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
3088 * gdk/gdkrgb.c: actually builds and runs properly on big
3089 endian machines now, because we #include config.h. Also
3090 fixed up a compile error in the WORDS_BIGENDIAN case in
3091 gdk_rgb_convert_565_gray. I made the fix by looking at
3092 patterns in the other code; Raph can you verify this?
3094 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
3097 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
3099 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
3100 (tree_toggle_expansion) (real_select/unselect_row)
3101 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
3103 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
3105 * gtk/gtktext.c (new_text_property): We free things from
3106 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
3108 * Fix up line start cache when splitting a property
3111 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
3113 * gtk/gtkwidget.c: restauration => restoration
3115 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
3117 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
3118 hasn't been created yet, don't do the lookup.
3120 1998-07-20 Raph Levien <raph@acm.org>
3122 * gdk/gdkrgb.c: More cleanups in the config process.
3124 1998-07-20 Raph Levien <raph@acm.org>
3126 * gdkrgb.c: Fixed minor config bug preventing big-endian
3127 architectures from working.
3129 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
3131 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
3132 activity indicator. It is settable now as a fraction of the
3133 total width/height using gtk_progress_bar_set_activity_blocks.
3134 Renamed gtk_progress_bar_set_number_of_blocks to
3135 gtk_progress_bar_set_discrete_blocks.
3137 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
3139 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
3140 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
3141 tree to specified depth
3142 (gtk_ctree_expand_to_depth): expand tree to specified depth
3143 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
3145 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
3147 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
3148 of GTK_CLIST_ADD_MOD
3149 * gtk/testgtk.c (add1000_clist): changed pixmap
3151 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
3154 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
3156 * gtk/gtktypeutils.h:
3157 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
3159 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
3161 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
3162 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
3163 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
3165 (gtk_notebook_reorder_child): new funktion to change position of a
3167 (gtk_notebook_draw_arrow): draw left/right arrow with
3168 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
3170 * gtk/gtkstyle.c (gtk_default_draw_arrow):
3171 added GTK_SHADOW_ETCHED_IN/OUT
3173 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
3175 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
3176 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
3177 Introduced generic GtkProgress widget. Derived GtkProgressBar from
3178 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
3180 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
3182 * gtk/gtktypeutils.h
3183 * gtk/gtkitemfactory.h: explicitly specify void in prototype
3185 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
3187 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
3190 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
3192 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
3193 sropped the approach of copying all signal specific data into a
3194 GtkHandlerInfo structure. we rather keep the signal data on the stack
3195 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
3196 avoids multiple lookups of the signal pointer and works savely together
3197 with destroy notifiers of handlers.
3199 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
3200 someone destroys the entry on the ::activate signal.
3202 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
3204 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
3205 instead of ypad (typo).
3206 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
3207 border around the allocation).
3208 (gtk_arrow_init): the static requisition needs to be setup in this
3209 function rather than gtk_widget_new(), so arrow creation works without
3210 the gtk_arrow_new() constructing.
3211 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
3213 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
3214 implementation for GtkWidget::size_request, so size requisition for
3215 simple statically sized widgets like GtkArrow works.
3217 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
3219 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
3220 prepend -I@libdir@/glib/include anymore, since glib-config handles
3221 it; --libs strips out redundant -L<path>'s properly (there was
3222 code in there to do it before, but it didn't work)
3224 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
3226 * gtk/gtknotebook.h:
3227 * gtk/gtknotebook.c: signdness corrections all ove the place.
3228 implementation of object arguments: GtkNotebook::enable_popup,
3229 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
3230 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
3231 begun implementation of child args, we have GtkNotebook::tab_label, but
3232 GtkNotebook::menu_label and GtkNotebook::position still lack the
3234 (gtk_notebook_remove_page):
3235 (gtk_notebook_current_page): allow negative indices (-1) as alias for
3239 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
3240 arguments GtkEntry::max_length and GtkEntry::visibility.
3241 (gtk_entry_adjust_scroll): queue a redraw.
3243 * gtk/gtkeditable.h:
3244 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
3245 object arguments GtkEditable::text_position and GtkEditable::editable.
3246 new (action) signal GtkEditable::set_editable.
3247 provide a default handler for GtkEditable::changed that queues a redraw.
3250 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
3253 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
3255 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
3256 case of drag_target == NULL
3257 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
3258 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
3259 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
3260 gtk_dir_selection_file_button): fix due to changes in clist's
3263 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
3266 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
3267 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
3268 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
3269 to be gint16s rather than guint16s, since that's what the code expected
3270 (for a long time actually).
3272 * gtk/gtkviewport.c:
3273 added support for object arguments: GtkViewport::shadow_type,
3274 GtkViewport::vadjustment and GtkViewport::hadjustment.
3275 (gtk_viewport_add): chain gtk_bin_add.
3277 * gtk/gtkscrolledwindow.c:
3278 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
3279 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
3281 * gtk/gtkadjustment.h:
3282 * gtk/gtkadjustment.c:
3287 * gtk/gtkscrolledwindow.h:
3288 * gtk/gtkscrolledwindow.c:
3289 * gtk/gtkviewport.h:
3290 * gtk/gtkviewport.c:
3291 GtkType and macro fixups.
3293 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
3297 Added focus handling, horizontal and vertical autoscrolling,
3298 extended Selection Mode, key bindings
3299 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
3300 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
3301 Removed gtk_ctree_clear.
3305 Added focus handling, horizontal and vertical autoscrolling,
3306 extended Selection Mode, key bindings
3308 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
3310 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
3311 source tree. For more information on GdkRgb, please see:
3312 http://www.levien.com/gdkrgb/
3314 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
3315 bothers me slightly that the feature is in gdk, and this file is
3316 in gtk, but it's probably ok.
3318 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
3321 * gdk/gdkrgb.h: Added this module.
3323 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
3325 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
3327 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
3329 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
3330 to this function. it needs to relookup the signal multiple times.
3331 this fixes spurious segfaults that could show up with signal intensive
3332 code, when classes are created during a pending emission (which is
3335 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
3337 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
3338 child if it isn't a label.
3340 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
3343 * gtk/gtkseparator.h:
3344 * gtk/gtkhseparator.h:
3345 * gtk/gtkvseparator.h: macro and GtkType fixups.
3347 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
3349 * gtk/testgtk.c (create_cursors): display the current cursor name.
3351 * gtk/gtktypeutils.h:
3352 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
3353 the fundamental type definition. the GtkArg union now only covers
3354 the required storage types for argument values. adapted the GTK_VALUE_*
3355 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
3357 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
3358 code, fixed int/float collection. fixed a bug in the sanity checking
3359 code for GtkObjects.
3361 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
3362 argument collection code.
3364 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
3365 macros when distinguishing the return type.
3367 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
3369 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
3370 is not NULL before trying to g_list_remove the child. A patch
3371 from Michael Lausch.
3373 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
3375 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
3376 collection (always casted to doubles upon argument passing).
3378 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
3380 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
3381 object_init_func for derived objects with the object's ->klass field
3382 still pointing to the corresponding base class, otherwise overridden
3383 class functions could get called with partly-initialized objects.
3384 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
3386 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
3390 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
3392 * gtk/gtkcontainer.h:
3393 * gtk/gtkcontainer.c:
3394 (gtk_container_child_arg_get_info): new function which wraps
3397 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
3399 * gtk/gtkcontainer.c:
3400 (gtk_container_arg_get):
3401 (gtk_container_arg_set):
3403 (gtk_object_arg_set):
3404 (gtk_object_arg_get):
3405 strictly check for the associated get/set arg functions. if an
3406 arg is readable or writable, the associated class functions *must*
3409 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
3411 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
3412 padding into account if there is an accelerator.
3414 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
3416 * gtk/gtkcontainer.c:
3417 (gtk_container_add_with_args): collect the arguments with
3418 gtk_container_child_args_collect, not through gtk_object_args_collect.
3419 (gtk_container_child_set): likewise.
3421 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
3423 * gtk/gtktypeutils.h:
3424 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
3425 which is derived from GTK_TYPE_STRING.
3427 * gtk/gtkbindings.c: reworked the argument type handling.
3429 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3431 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
3432 so that it seems to allow normal operation in those modes,
3433 although you will only see black (GIMP toolbar now pops up,
3434 just don't create a new image and GIMP now works in 4 bit.)
3436 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3438 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
3439 array, which was too low (?)
3441 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
3443 * gtk/gtkcontainer.h:
3444 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
3445 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
3446 we now export a new function gtk_container_child_args_collect().
3447 for consistency with the object arguments, a few functions got renamed:
3448 gtk_container_child_arg_get -> gtk_container_child_get,
3449 gtk_container_child_arg_set -> gtk_container_child_set,
3450 gtk_container_child_arg_getv -> gtk_container_child_getv,
3451 gtk_container_child_arg_setv -> gtk_container_child_setv,
3452 gtk_container_add_with_argv -> gtk_container_addv.
3453 note, gtk_container_add_with_args() remained, because its equivalent
3454 would be gtk_container_add(,, ...) which would break all existing code.
3455 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
3456 we expect the `arg_name' argument to be a const static string now.
3457 (gtk_container_get_child_arg_type): function removed.
3459 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
3461 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
3462 this is a static inline function that collects command line arguments
3463 from a va_list. this file can just be included in all places that
3464 need this functionality.
3467 * gtk/gtkarg.c: new files which implement most of the argument
3468 handling stuff from gtkobject.c. also collected a few more
3469 gtk_arg_* utility functions from else places.
3472 * gtk/gtkobject.c: moved most of the argument handling code into
3473 gtkarg.c. we now export gtk_object_args_collect() as a non-public
3474 method with a blind va_list pointer.
3475 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
3476 const static string now.
3477 (gtk_object_get_arg_type): function got removed.
3481 (gtk_widget_new): adaptions for gtk_object_args_collect().
3483 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
3484 fundamental type name so as to have a valid prefix, e.g. "bool"->
3485 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
3486 though that should probably be something like GtkNone since the
3487 type itself is called GTK_TYPE_NONE.
3488 even the internal type names need to avoid name clashes and must live
3489 in their own namespace, several code portions rely on that.
3490 we should relly have typedefs such as typedef gchar* GtkString; so the
3491 fundamental type names can be used for code dumpers just like with all
3494 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
3496 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
3497 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
3498 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
3500 (gtk_button_paint): set the background for prelighted buttons with
3501 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
3502 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
3503 the shadow type (otherwise we get strange shadows for coloured buttons).
3504 (gtk_button_set_relief): queue a redraw after changing
3506 (gtk_button_class_init):
3507 (gtk_button_set_arg):
3508 (gtk_button_get_arg): added object argument "GtkButton::relief".
3510 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
3512 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
3515 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
3516 GTK_BIN (button)->child to button->child to keep source compatibility.
3518 * gtk/gtkoptionmenu.c:
3520 * gtkcheckbutton.c: don't refer to button->child, but
3521 GTK_BIN (button)->child instead.
3523 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
3525 * docs/gtkfaq.sgml: update anon CVS info
3527 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
3529 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
3533 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
3536 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
3538 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
3539 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
3541 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
3543 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
3545 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
3548 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
3550 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
3551 error that prevented signal to entry addition for signals with
3554 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
3556 * ltconfig: fix for properly detecting shared lib support on
3557 SunPro cc (taken from libtool 1.2.a)
3559 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
3561 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
3563 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
3565 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
3566 rc set pattern is favoured, this is needed for overriding of style
3567 patterns with subsequently parsed rc files.
3569 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
3571 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
3574 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
3576 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
3578 (gtk_accelerator_name): add "<Release>" to the accelerator name if
3581 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
3584 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
3585 default handler for key-release events, which checks for activation
3586 of GDK_RELEASE_MASK key bindings.
3588 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
3590 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
3592 * gtk/gtkarrow.h: GtkType and macro fixups.
3593 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
3594 "GtkArrow::shadow_type".
3596 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
3598 * gtk/gtkalignment.h:
3599 * gtk/gtkbin.h: GtkType and macro fixups.
3601 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
3602 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
3603 GtkAlignment::xscale, GtkAlignment::yscale.
3605 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
3607 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
3608 fucntions from all parent types upon class initialization.
3610 * gtk/gtkcontainer.c:
3611 (gtk_container_get_type): announce gtk_container_base_class_init to
3613 (gtk_container_base_class_init): new function to feature base class
3615 (gtk_container_get_child_arg):
3616 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
3617 and set_child_arg methods of the class indicated through the argument
3621 (gtk_object_base_class_init): new function to feature base class
3623 (gtk_object_init_type): announce gtk_object_base_class_init to the type
3625 (gtk_object_class_init): setup the get_arg and set_arg pointers for
3628 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
3629 instead of bothering the type system with this.
3631 * gtk/gtkaccellabel.c:
3633 * gtk/gtkradiobutton.c:
3635 * gtk/gtktogglebutton.c:
3636 * gtk/gtktipsquery.c:
3643 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
3644 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
3645 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
3646 arg functions to take a GtkObject argument.
3648 gtk/gtkadjustment.c:
3651 gtk/gtkaspectframe.c:
3654 gtk/gtkcheckbutton.c:
3655 gtk/gtkcheckmenuitem.c:
3663 gtk/gtkdrawingarea.c:
3677 gtk/gtkhscrollbar.c:
3678 gtk/gtkhseparator.c:
3680 gtk/gtkinputdialog.c:
3682 gtk/gtkitemfactory.c:
3690 gtk/gtkoptionmenu.c:
3694 gtk/gtkprogressbar.c:
3695 gtk/gtkradiomenuitem.c:
3700 gtk/gtkscrolledwindow.c:
3702 gtk/gtkspinbutton.c:
3715 gtk/gtkvscrollbar.c:
3716 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
3717 match the modified GtkTypeInfo structure.
3719 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
3721 * gtk/testgtk.c: use rand() instead of random() for portability
3723 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
3727 * gdk/gdk.c: use native Xlib XConvertCase if it's available
3729 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
3731 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
3732 XConvertCase() functionality from X11R6 on X11R5 systems.
3734 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
3736 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
3737 gdk_string_height, gdk_char_height to retrieve the exact
3740 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
3742 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
3743 by Stefan Mars <mars@lysator.liu.se>
3744 * examples/clist/clist.c examples/clist/Makefile: example code
3745 for GtkCList widget from the Tutorial
3747 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
3749 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
3750 if the container is not visible, we might be a toplevel! this holds
3751 for all other base container implementations as well, that are
3752 candidates to derive toplevels from. in general the resizing code will
3753 care about visibility itself.
3754 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
3755 * gtk/gtkbox.c (gtk_box_remove): likewise.
3757 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
3758 gtk_window_set_hints(), since we haven't calculated the new position
3761 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
3762 *mask are alway initialized in a sane way, regardless of the return
3765 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
3767 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
3768 to gtk_container_child_arg_setv, but takes a variable argument list.
3769 new function gtk_container_get_child_arg_type, which is needed by
3770 gtk_object_collect_args.
3772 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
3773 take a function pointer to figure the argument type.
3774 adapted callers to pass gtk_object_get_arg_type.
3775 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
3776 gtk_object_get_arg_type..
3780 (gtk_packer_reorder_child): new function to change the packing order
3782 (gtk_packer_size_request):
3783 (gtk_packer_size_allocate): take container->border_width into acount.
3785 * gtk/gtkpacker.c: implemented widget arguments:
3786 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
3787 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
3788 implemented child arguments:
3789 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
3790 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
3791 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
3792 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
3794 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
3797 * gtk/gtkeventbox.h:
3798 * gtk/gtkeventbox.c: GtkType and macro fixups.
3800 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
3801 sensitivity of an entry.
3803 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
3804 for insensitive base and text.
3806 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
3807 widget state dependent.
3808 (gtk_entry_style_set): likewise.
3809 (gtk_entry_state_changed): set background color on state changes.
3810 (gtk_entry_draw_text): for non selected text, use state dependent
3813 * gtk/gtktogglebutton.c: support for widget arguments
3814 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
3816 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
3818 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
3819 code for 1.0.x-like parameters. Changed internal interface of
3820 gtk_spin_button_real_spin. Several fixes to avoid emission of
3821 "value_changed" where possible.
3823 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
3825 * gtk-boxed.defs: s/GkWidget/GtkWidget/
3827 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
3829 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
3830 to select the resize_mode for the idle-labels container.
3833 * gtk/gtkframe.c: GtkType and macro corrections.
3835 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
3836 support widget argument "GtkRadioButton::group".
3838 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
3840 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
3841 unconditionally if resize_mode has changed.
3843 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
3844 GTK_RESIZE_QUEUE on the scrolled window.
3845 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
3847 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
3849 * gtk/gtkcontainer.h:
3850 * gtk/gtkcontainer.c:
3851 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
3852 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
3853 (gtk_container_queue_resize): new function to queue a container for
3854 a *size* reallocation (doesn't affect its position, and thus its
3855 parent is left untouched usually).
3856 (gtk_container_get_resize_container): new function to retrive the next
3857 most resize container which is not itself queued for a resize.
3858 (gtk_container_idle_sizer): new function to carefully process the
3859 container_resize_queue since it can change during invokation of
3860 gtk_container_check_resize().
3861 (gtk_container_resize_children): total rework of this function to
3862 properly handle resize containers. makes a lot of assumptions whitch
3863 are stated in the comments.
3865 * gtk/gtkcontainer.c:
3866 (gtk_container_real_check_resize): only requeue ourselves if we are not
3868 (gtk_container_clear_resize_widgets): care for automatic deletion of our
3869 resize_widgets list on size_allocate through a handler connection.
3871 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
3872 focus and default widget of a window, so to take the burden from
3873 gtk_widget_unparent.
3875 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
3876 to be clever, but actually messed up the resize_children logic and
3877 caused unneccessary allocations on its whole branch. besides this,
3878 it messed up the display by not invoking a redraw after the allocation.
3880 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
3881 that it is the child again that is queued for a resize.
3882 (gtk_table_attach): likewise.
3883 (gtk_table_remove): likewise.
3885 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
3887 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
3888 gtk_entry_adjust_scroll. Required if you change the cursor
3889 position and want to sync it up with your code (Midnight Commander
3890 gtk front end needs this).
3892 * gtk/gtktable.c: Deal with tables that have size 0, 0.
3894 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
3896 * examples/README.1ST: new file to explain how the
3897 code examples should be extracted from the tutorial.
3899 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
3901 * gtk/gtkctree.c (draw_row): added new "line style"
3902 GTK_CTREE_LINES_TABBED
3903 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
3904 search the glist pointer of an GtkCTreeRow
3906 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
3908 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
3909 from, and clean up, the dependencies. Generate to intermediate
3910 files to prevent problems with Ctrl-C.
3912 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
3914 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
3916 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
3917 - Bug fix for precision problem causing occasional double emission
3918 of "value_changed" signal (hopefully works now).
3919 - API change (should be binary compatible) :
3920 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
3921 Modified cursor example appropriately.
3922 To spin by something other than step_/page_increment, use
3923 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
3924 - Made GTK_SHADOW_NONE the default. ;)
3925 - Fixed casting of GtkAdjustment* to GtkWidget* in
3926 gtk_spin_button_value_changed.
3928 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
3930 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
3931 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
3932 resize widget list before queuing the container for a new reize.
3933 (gtk_container_need_resize): changed return value to FALSE, since this
3934 used to indicate that no further resizes are needed.
3935 (gtk_container_set_arg):
3936 (gtk_container_get_arg):
3937 (gtk_container_class_init): implemented GtkContainer::resize_mode
3940 (gtk_container_resize_children): when we walk up the tree of a resize
3941 widget we need to stop if we are the current parent.
3943 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
3944 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
3945 (gtk_widget_hide_all): retrive the toplevel widget from via
3946 gtk_widget_get_resize_container().
3948 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
3950 * gtk/gtklist.c (gtk_list_button_press): Only respond
3951 to selection with button 1. This allows context-sensitive
3952 menus to work correctly.
3954 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
3956 * gtk/gtkaccelgroup.c:
3957 * gtk/gtkbindings.c:
3958 * gtk/gtkcontainer.c:
3959 * gtk/gtkitemfactory.c:
3962 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
3963 g_quark_from_static_string calls to save memory.
3965 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
3966 function _after_ the new data has been setup.
3967 minor changes to object data functions to feature the GQuark type.
3969 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
3971 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
3974 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
3976 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
3977 to be more readable perl, to spit out stuff that looks
3978 more like readable C, and to pipe output through indent
3979 so output looks a lot like readable C. No functional
3982 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
3984 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
3985 necessary when switching to a masked pixmap. (Based on a patch
3986 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
3988 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
3990 * gtk/gtkeditable.[ch]: Added action signals for keyboard
3991 bindings. (move_cursor, kill_word, etc, etc, etc).
3993 removed the time argument from
3994 gtk_editable_cut/copy/paste_clipboard (source but not
3995 binary incompatible...) Instead get time from
3996 gtk_get_current_event ().
3998 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
4001 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
4003 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
4005 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
4006 parent class to GtkNotebookClass when splitting the widget in
4007 two. Also updated some comments.
4009 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
4010 button without a font selected.
4012 Fixed bug in set_font_name - I hadn't updated the code to
4013 search for the style in the font_style clist - it was
4014 still assuming the style row was equal to its index,
4015 but it isn't any more.
4017 Changed 'Reset' button on filter page to 'Clear Filter'.
4018 Deleted old code relating to the old 'Filter Fonts' toggle
4019 Updated some comments.
4020 Cleared 'Actual Fontname' if no font is set.
4022 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
4023 destroying the GtkFontSelection instead of the
4024 GtkFontSelectionDialog.
4026 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
4028 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
4029 flag to make all warnings fatal errors.
4031 * gtk/testthreads.c: moved <pthreads.h> include inside
4034 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
4036 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
4037 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
4039 - Added new function gtk_container_set_resize_mode() for
4040 fine-grained control of where resize-queueing is done.
4042 - Removed GtkContainer::need_resize and GtkWindow::move_resize
4043 - Added GtkContainer::check_resize to replace need_resize.
4045 - Added function gtk_container_check_resize() to trigger
4046 queued resizes, and gtk_container_resize_children() to
4047 Figure which children need to be size-allocated. (logic
4048 moved from gtkwindow.c)
4050 - Reorganized code in gtkwindow.c
4052 - Set the resize-mode for viewports so that resizes within
4053 a viewport don't propagate out of it.
4055 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
4057 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
4059 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
4060 g_return_val_if_fail, because the function *does* return a value.
4062 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
4064 * gtk/gtkaccellabel.h:
4065 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
4066 request the size of the accelerator portion of an accel label.
4067 (gtk_accel_label_size_request): don't request for the accelerators size.
4068 (gtk_accel_label_expose_event): only draw the accelerator if we got
4071 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
4072 width from children.
4074 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
4075 object (after removal has been requested) check if there is still an
4076 accelerator remaining to avoid adding two accelerators on an object.
4077 this can happen for locked accelerators (or accelerator-frozen widgets).
4078 (gtk_menu_size_request): feature childrens accelerator width in size
4081 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
4082 gtk_widget_freeze_accelerators() for dynamically created menu items.
4085 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
4086 which will return a handler_id > 0 if the specified function is pending
4090 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
4091 a signal handler function to stop accelerator addition.
4092 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
4093 which will prevent (undo) any accelerators from being added to or
4094 removed from a widget.
4096 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
4098 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
4099 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
4100 acceleration, new API gtk_spin_button_set_snap_to_ticks.
4102 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
4105 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
4106 the current GdkWindow the pointer is on if there is any.
4108 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
4109 and one column, so we don't construction logic at all. changed a few
4110 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
4113 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
4114 portion, added an additional check for parent != widget.
4116 * more GtkType and macro fixups.
4118 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
4120 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
4121 "clip" parameter, which is the clipping rectangle to use. This
4122 eliminates the extremely annoying flicker when exposing parts of
4125 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
4127 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
4130 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
4132 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
4133 != 0 on the argument.
4136 * gtk/gtktable.c: new function gtk_table_resize() which allowes
4137 shrinking and expanding of tables. implementation of widget arguments
4138 and child arguments. many signedness corrections.
4140 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
4142 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
4143 not only the child, otherwise we might end up taking away other
4144 childrens space after the resize.
4146 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
4147 an unknown menu path from any source, that path must always be flagged
4148 as "modified", since we don't really know whether it has its default
4153 * gtk/gtknotebook.c:
4154 * gtk/gtkmenushell.c:
4158 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
4161 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
4162 arguments. implemented child arguments.
4164 * more GtkType and macro fixups.
4166 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
4168 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
4170 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
4171 and gtk_clist_get_hadjustment.
4173 * gtk/gtkcontainer.c:
4174 implementation of children arguments, new class member functions
4175 (child_type), (get_child_arg) and (set_child_arg) plus a new field
4177 (gtk_container_child_type): new function which returns the type of a
4178 child that the container expects for its next addition.
4179 (gtk_container_add_child_arg_type): new function to introduce a new
4180 child argument at class creation time.
4181 (gtk_container_query_child_args): new function to query all child
4182 arguments that are supported by a container class.
4183 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
4185 (gtk_container_child_arg_setv): new function to set a child argument for
4186 a certain container and child combination.
4187 (gtk_container_add_with_args):
4188 (gtk_container_add_with_argv): new functions to feature addition of a
4189 new child in combination with the setting of certain child arguments.
4191 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
4192 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
4193 this should really be done through class cretion hooks some day.
4195 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
4199 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
4200 follow the gtk convention for lower case variable names (important
4201 for language wrappers and widget arguments), and made them guint : 16.
4203 * examples/packer/pack.c: adaptions for the case converted GtkPacker
4206 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
4208 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
4209 change the character pair for single line comments.
4210 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
4211 GtkItemFactoryClass.
4212 (gtk_item_factory_parse_rc_string): likewise.
4214 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
4216 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
4217 lists from the klass structure to a static structure
4218 in gtkfontsel.c; cleans up global the namespace.
4220 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
4222 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
4223 bug with /*< skip >*/ and remove warning.
4225 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
4227 * gtk/Makefile.am: Made the gtkmarshal.* generation
4228 rules maintainer-only.
4230 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
4232 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
4233 gtk/Makefile.am gtk/makenums.pl
4235 Removed out the G_ENUM/FLAGS mechanism in favor
4236 of a perl script that parses the standard headers
4237 (with occasional /*< nick=foo >*/ style overrides)
4238 and extracts the enumerations.
4240 gtk/maketypes.awk: Small improvments to the
4241 translation of names. (Avoid splitting gc into
4244 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
4246 * gtk/gtk.h gtk/gtkfontsel.[ch]:
4247 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
4249 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
4252 - Restored gtk_entry_adjust_scroll to static
4253 - Changed text positioning code so that we always
4254 display as large a portion of the text as possible.
4256 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
4258 * gtk/gtktext.c (gtk_text_finalize): Free internal
4259 structures of text widget. Also, unreference pixmaps
4262 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
4264 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
4265 3.3.1 bug workaround to number keys starting at 1.
4267 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
4269 * docs/gtk_tut.sgml: Fixed urls for complete example
4270 source for scribble+widget-writing examples.
4272 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
4274 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
4275 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
4276 specs of the form c #abcdef [ more keys ] properly.
4278 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
4280 * gtkspinbutton.h gtkspinbutton.c testgtk.c
4281 (gtk_spin_button_set_shadow_type):
4282 New API to set the shadow type of the arrow panel.
4284 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
4286 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
4287 code for drawing the child in two places at once. Unfortunately,
4288 not only does it not work anymore (because reparenting has
4289 been fixed), but it also triggers reparent/expose loops
4292 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
4293 an unecessary unrealize.
4295 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
4297 * gdk/gdkwindow.c (gdk_window_reparent): Update the
4298 old and new parents' child window lists properly.
4300 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
4303 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
4304 and GtkSideType, to be consistent with the rest of Gtk's enum
4305 definitions. wrapped the enum definitions with the G_ eunm wrappers.
4306 spelled out the GTK_ANCHOR_* enum values, since single letters don't
4307 work out corectly as nick-names (left the old values as aliases).
4308 some signdness corrections (border-width, spacing), could stand more.
4310 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4312 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
4315 * examples/packer/pack.c, examples/packer/Makefile: Added
4318 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
4320 * gtk/gtktext.c (remove_cache_line): Fixed broken
4323 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
4324 Check bounds before deleting.
4326 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
4328 * autogen.sh: Support ACLOCAL_FLAGS
4330 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
4332 * gtk-config.in: Added missing quotes.
4334 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
4336 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
4338 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
4340 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
4341 G_COMPILED_WITH_DEBUGGING.
4343 * configure.in (fd_set): Explain check better.
4345 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
4346 the version from which gtk+'s libtool forked. Needed for people
4347 who use post-1.2 alphas of libtool.
4349 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
4351 * glib/* Moved to glib module
4353 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
4354 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
4356 configuration changes for the above:
4358 - Use AM_PATH_GLIB by default to find glib; also accept
4359 a --with-glib option for using an uninstalled glib.
4361 - Put --enable-debug information into config.h so
4362 that we rebuild when it changes. (was in glibconfig.h)
4364 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
4366 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
4368 * gtk/gtknotebook.h (struct _GtkNotebookClass):
4369 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
4370 added missing argument (according to Joseph Coleman's bug report)
4372 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
4373 function to fix notebook focus handling
4375 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
4377 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
4378 glib/gutils.c glib/testglib.c glib/gdataset.c
4379 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
4380 gtk/gtktext.c gtk/gtkbindings.c:
4382 renamed g_const_pointer => gconstpointer
4384 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
4386 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
4387 invoked with (NULL, NULL); (this worked sometime ago).
4389 * gtk/gtktypeutils.h:
4390 * gtk/gtktypeutils.c: enum and flags type creation can now be done
4391 through gtk_type_register_enum() and gtk_type_register_flags(),
4392 which allow to specify the enum value arrays directly.
4393 the NULL terminated value arrays can be retrived through
4394 gtk_type_enum_get_values() and gtk_type_flags_get_values();
4395 (gtk_type_children_types): new function to query derived types.
4397 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
4399 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
4400 environment to genmarshal.pl.
4401 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
4402 rule), and removed it where not needed (in the dependencies).
4404 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
4406 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
4408 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
4409 was just g_direct_hash.
4411 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
4413 * configure.in: x_libs=, not $x_libs=. Enough said.
4414 (Case only hit for --disable-xshm)
4416 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
4418 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
4419 when testing for X libraries, don't replace them. Because
4420 the user might have specified the path to the X libraries
4421 themself before running configure.
4423 * examples/**.c: Changed all gpointer * to gpointer
4425 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
4427 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
4428 fleur_cursor field. Now the cursor is created/destroyed on demand
4429 by the routines that need it.
4431 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
4432 (gtk_handle_box_motion): The fleur cursor is created and destroyed
4435 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
4437 * gtk/gtktypeutils.h:
4438 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
4439 gtk_enum_set_values to gtk_type_enum_get_values and
4440 gtk_type_enum_set_values respectively, since they are actually type
4443 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
4446 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
4448 * gtk/gtkselection.h:
4449 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
4450 gtk_selection_data_free.
4452 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
4453 for "selection_received", which was completely bogus.
4454 * other fixups to gtk_signal_new() calls all over the place.
4456 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
4457 * gtk/gtktypebuiltins_vars.c: type variable implementations.
4458 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
4460 * gtk/gtktypebuiltins_evals.c: enum value arrays.
4461 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
4463 * gtk/gtk.defs: generated file with scheme syntax for type definitions
4464 of gtk and gdk structures and enums.
4465 * gtk/gtktypeutils.h:
4466 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
4467 macros anymore (this fixes binary incompatibility with new enum
4470 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
4471 key bindings for this widget.
4472 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
4476 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
4477 again. new functions gtk_object_class_user_signal_new () and
4478 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
4479 flag on the signal creation.
4481 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
4483 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
4485 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
4491 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
4493 * reworked enum value array generation code. gtk.defs is a generated
4496 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
4498 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
4499 check menu items in the compatibility code (this required me to remove
4500 the "<check>" part from the menu item name, grrr).
4502 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
4504 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
4505 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
4507 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
4509 * gtk/gtkitemfactory.h:
4510 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
4511 additions to the dumping code to feature GtkPatternSpec.
4512 even found a bug to fix in the original code ;)
4514 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
4516 * gtk/gtkitemfactory.c: support different types of callbacks, to
4517 maintain existing code.
4519 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
4521 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
4523 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
4524 this should eventually be done by gentypeinfo.el somewhen.
4525 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
4527 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
4528 enum values of an enum type.
4536 brought enum/flags definitions in sync, added a few more enum
4537 definitions for bindings and pattern matching.
4539 * some more macro and GtkType fixups in various places.
4541 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
4542 as a key-release modifier for the binding system.
4544 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
4546 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
4547 was a stale list pointer that is already present in GtkMenuShell.
4549 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
4550 GtkMenuShell::selection_done which is emitted after the menu shell
4551 poped down again and all possible menu items have been activated.
4553 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
4555 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
4556 before activation of the menuitem, so the menu is actually taken off the
4557 screen prior to any menu item activation.
4559 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
4563 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
4564 the emission of the "add-accelerator" signal on a widget. this is
4565 usefull to prevent accelerator installation on certain widgets.
4567 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
4568 labels left justified, by setting their alignment. stop accelerator
4569 installation for the menu items, since we use dynamic menus.
4571 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
4573 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
4574 should *really* use GtkItemFactory. this is only for preserving source
4575 compatibility where possible, use of GtkMenuFactory is deprecated as of
4578 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
4579 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
4580 missed this possibility when i added gtk_object_class_add_user_signal
4583 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
4585 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
4587 * gtk/gtkaccelgroup.h:
4588 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
4590 * gtk/gtkaccellabel.h:
4591 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
4592 display of the accelerators associated with a certain widget.
4594 * gtk/gtkitemfactory.h:
4595 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
4596 parsing and accelerator handling.
4598 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
4600 (gtk_menu_map): removed the allocation code.
4601 (gtk_menu_size_allocate): care for redrawing of children and resize
4602 our widget->window correctly.
4603 (gtk_menu_key_press): feature the new accelerator groups.
4605 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
4606 submenu if neccessary.
4608 * gtk/gtkmenuitem.c:
4609 * gtk/gtkcheckmenuitem.c:
4610 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
4614 (gdk_keyval_from_name):
4615 (gdk_keyval_name): new functions for keyval<->key-name associations.
4616 (gdk_keyval_to_upper):
4617 (gdk_keyval_to_lower):
4618 (gdk_keyval_is_upper):
4619 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
4620 regards to their cases.
4622 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
4624 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
4625 widget's class path.
4626 (gtk_widget_path): new function to calculate a widget's name path.
4628 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
4629 pattern matching, features reversed pattern matches.
4631 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
4633 * examples/extract.sh, examples/extract.awk:
4634 New files to automagically extract code examples from the
4637 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
4639 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
4640 * gtk/gtkcontainer.c (gtk_container_focus_move):
4641 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
4643 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
4645 * docs/gtk_tut.sgml: minor changes to support auto
4646 extraction of example code
4648 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
4650 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
4651 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
4653 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
4655 * docs/gtk_tut.sgml:
4656 - new section on Events
4657 - change all delete_event callbacks to include
4658 a GdkEvent parameter
4659 - clean up the formatting
4661 * examples - helloworld.c, helloworld2.c, notebook.c,
4662 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
4663 rulers.c, table.c, wheelbarrow.c: change all delete_event
4664 callbacks to include a GdkEvent parameter.
4666 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
4668 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
4669 field of crossing events.
4670 (struct _GdkEventCrossing): Added the following fields: time, x,
4671 y, x_root, y_root, mode, focus, state.
4673 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
4674 crossing event structure.
4676 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
4677 changes to the crossing event structure.
4679 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
4681 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
4683 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
4685 * docs/gtk_tut.sgml:
4686 - GtkTooltips, update to current API
4687 - change all 'gpointer *data' to 'gpointer data'
4688 - other minor changes
4690 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
4692 * configure.in (LDFLAGS): Bomb out with a moderately
4693 helpful message if detection of X libraries fails.
4695 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
4698 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
4699 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
4701 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
4702 gtk/gtksignal.c gtk/gtktext.c:
4704 Fixups for warnings from adding const to type of GHashFunc,
4707 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
4708 ansi-warnings fixups.
4710 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
4712 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
4713 Locate child at (border_width,border_width), not
4714 (2*border_width,2*border_width). [ The border is _outside_
4717 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
4718 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
4720 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
4722 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
4725 1998-05-22 <sopwith@redhat.com>
4727 * gtk/gtkeventbox.c: Pass size_allocate on to the child
4728 regardless of whether it is visible or not. Also
4729 locate child at (border_width,border_width), not (0,0)
4731 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
4733 * gtk/gtkhandlebox.c: Added style_set handler.
4735 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
4736 [ From: Chris Lahey <clahey@umich.edu> ]
4738 * gtk/gtkeditable.c, gtk/gtkeditable.h,
4739 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
4740 and set_position functions to get and set the cursor position.
4742 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
4743 signal status. Make GtkText do user-controlled insertion
4744 and deletion through the Editable widget so that these
4745 signals are properly emitted.
4747 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
4748 display asterisks instead of empty space when visible = FALSE)
4750 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
4752 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
4755 1998-05-21 <sopwith@redhat.com>
4757 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
4758 custom routine for loading images specified in gtkrc's.
4760 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
4762 * configure.in: Use pthread_attr_init() as a test function,
4763 since most of the rest of -lpthread is macros on DU4.
4765 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
4767 * gtk/gtkcombo.c: implemented completion in the entry.
4769 1998-05-18 <sopwith@moebuis.labs.redhat.com>
4771 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
4773 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
4775 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
4776 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
4777 to be of runtype GTK_RUN_LAST.
4779 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
4782 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
4785 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
4787 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
4788 text retrived from GtkEntry. only intercept the Tab key if there
4789 was some text to complete.
4791 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
4793 Basic thread-awareness:
4795 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
4797 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
4798 gdk_threads_[init/enter/leave] for applications, plus
4799 gdk_threads_wake to wake the mainloop thread out of
4802 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
4804 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
4806 * gtk/testgtk.c (list_clear): Account for the fact
4807 that gtk_list_clear_items is not inclusive. (Clears
4810 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
4812 * gdk/gdk.c: include gdkkeysyms.h always
4815 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
4817 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
4818 the visibility_notify_event method and changed method order.
4820 1998-05-14 <sopwith@moebuis.labs.redhat.com>
4822 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
4824 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
4826 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
4827 from Olli Helenius <ollhel@batman.jytol.fi>.
4829 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
4831 (gtk_type_set_chunk_alloc): new function to allow allocation of new
4832 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
4835 * gtk/gtkobject.c (gtk_object_finalize): free an object through
4838 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
4840 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
4841 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
4843 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
4845 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
4846 GPOINTER_TO_UINT fixes.
4848 * gtk/gtksignal.c: Include <string.h> for memset.
4850 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
4851 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
4853 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
4854 Cleanups, comments and the ability to have rulers with
4855 a reversed direction.
4857 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
4859 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
4860 that Sopwith missed when changing stat => lstat.
4862 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
4864 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
4865 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
4866 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
4868 * gdk/gdk.c: Print sizeof() results
4869 as g_print("%ld", (glong)sizeof(foo)), to deal with
4870 sizeof() being long on Alpha's.
4872 * gtk/testgtk.c: include <string.h> for strlen
4874 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
4875 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
4877 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
4878 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
4880 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
4882 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
4883 (From: Christopher James Lahey <clahey@umich.edu>)
4885 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
4888 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
4889 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
4890 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
4891 the default relief for the toolbars buttons. Added an
4892 toggle for the toolbar test in testgtk.c.
4894 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
4896 * docs/gtk-config.1: Rewritten and hopefully improved.
4898 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
4901 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
4903 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
4905 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
4906 GtkPreview's visual and colormap, otherwise things can BadMatch.
4908 * gtk/testgtk.c (create_color_preview):
4909 (create_gray_preview): Removed pushing/popping of visual/colormap
4910 now that GtkPreview does things correctly.
4912 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
4913 (gtk_color_selection_draw_wheel): Pick the style from the correct
4914 place (the colorsel->wheel_area widget) so that the GCs will match
4915 with where we are going to paint to.
4917 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
4918 of visual/colormap now that GtkColorSelection does things the
4921 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
4923 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
4924 previously unused window->need_resize flag to mark if a window's
4925 descendents changed size while the window was not visible. In this
4926 case, when the window becomes visible, we reallocate everything,
4927 since we didn't keep track of what actually changed.
4929 (Fixes bug where changing the popdown strings of a
4930 combo to something of the same length caused them to
4931 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
4933 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
4935 [security audit by Alan Cox]
4937 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
4938 exceed maximum assumed size.
4940 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
4941 not exceed maximum assumed size.
4942 (gtk_menu_factory_remove): likewise.
4943 (gtk_menu_factory_find_recurse): likewise.
4945 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
4947 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
4948 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
4949 redrawn if that is still neccessary. don't allow queueing of already
4951 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
4952 widgets which are in the queue can be destroyed safely, handle
4953 requeueing properly.
4954 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
4955 widgets which are in the queue can be destroyed/unrealized safely.
4957 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
4959 * gtkfaq.sgml: add question on multi-threading,
4962 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
4964 * configure.in (cflags_set): preserve automake CFLAGS.
4966 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
4967 and libgdk-1.1.la. this means we need to change certain portions of
4968 the Makefile.am on major/minor version bumps.
4970 * ltmain.sh: the -release option is not required anymore.
4972 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
4973 of the first argument to be of type GtkObject. unconditionally compile
4974 this function. removed __GNUC__ dependancy of the gtk_object_ref and
4975 gtk_object_unref macro wrappers for this function.
4977 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
4981 (gtk_object_data_try_key):
4982 (gtk_object_data_force_id): these are now macros substituting the old
4983 functions. we just use the corresponding g_dataset_* functions for
4984 key->id associations. (this is to assure unique key<->id associations).
4986 1998-05-10 Stefan Jeske <stefan@gtk.org>
4988 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
4991 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
4993 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
4995 * configure.in (LIBS): Try to figure out if this
4996 is Digital Unix and we need -std1 to get the
4999 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
5001 * docs/gtk_tut_it.sgml: update of Italian tutorial
5002 translation from Daniele Canazza <dcanazz@tin.it>
5004 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
5006 * gtk/gtkfeatures.h.in: new file used as template for
5007 * gtk/gtkfeatures.h: new file to define macros indicating newly
5008 introduced features, such as GTK_HAVE_SIGNAL_INIT.
5011 (gtk_signal_emitv_by_name):
5013 new functions to emit signals with an already provided parameter set.
5014 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
5015 (gtk_signal_real_emit): prototype changes, so this functions always
5016 gets its parameters and signal structure as arguments.
5017 (gtk_signal_emit): provide the signal structure and parameter list for
5018 gtk_signal_real_emit.
5019 (gtk_signal_emit_by_name): likewise.
5021 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
5023 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
5024 signal connections through unsetting GTK_CONNECTED.
5025 (gtk_signal_handler_insert): reflect the presence of signal connections
5026 through setting GTK_CONNECTED.
5027 (gtk_signal_real_emit): only check for handler emissions if the object
5028 has the GTK_CONNECTED flag set.
5029 (gtk_signal_handler_pending): don't check for pending handlers if the
5030 GTK_CONNECTED flag is not set for this object.
5032 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
5033 a GtkObject has signal handler connections.
5035 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
5036 set for this object call gtk_signal_handlers_destroy().
5038 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
5039 multiple processing of macro args.
5041 * gtk/gtktypeutils.c:
5044 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
5046 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
5048 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
5049 draw-queue when we are done.
5051 (gtk_widget_queue_draw/_queu_resize): Always return
5052 FALSE and avoid having two idles at the same time.
5054 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
5056 * gtk/gtktext.c: Various fixes to make sure cache
5057 lines are freed if line_start_cache doesn't point to the
5058 beginning of the cache.
5060 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
5062 * style_set improvements for GtkText and GtkEntry
5064 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
5066 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
5069 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
5071 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
5072 data chunks through a global object data structure list. unlink
5073 object data before invoking its destroy function.
5074 (gtk_object_finalize): slight modification to allow usage of object
5075 data during object finalization.
5077 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
5079 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
5080 signal names, e.g. "signal-name" is now an alias for "signal_name".
5081 (gtk_signal_handler_new): allocate handlers through a global handler
5082 structure list, that's faster than memchunks.
5083 (gtk_emission_new): allocate emissions through a global emission
5084 structure list, that's faster than memchunks.
5086 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
5088 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
5090 * ltmain.sh: added a new commandline flag -postfix similar to -release,
5091 but will immediately change the library name.
5094 * gtk/Makefile.am: specify -postfix and -version-info
5096 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
5097 GTK_BINARY_AGE. calculate LT_* variables for libtool.
5099 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
5101 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
5102 background (fg_set -> bg_set confusion).
5104 1998-05-06 Stefan Jeske <stefan@gtk.org>
5106 * gtk/testgtk.c (unselect_all): Removed code that caused an
5109 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
5111 * gtk/gtksignal.c: reimplemented the signal storage system to use a
5112 linear array rather than a hash table.
5113 be carefull *not* to keep any GtkSignal pointers across invokations
5114 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
5115 general code cleanups, made all allocations through memchunks.
5116 (gtk_signal_lookup): we now do the lookup of signals through a key_id
5117 for the signal names to avoid multiple hashing of the signal name on
5118 lookups for the several hirarchy levels of an object.
5120 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
5122 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
5123 to speed things up and remove code duplication.
5125 Reintegrated buffer overflow patches, and added
5126 some extra paranoia.
5128 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
5130 * gdk/gdk.c (gdk_event_translate): A guint * was
5131 being passed where X expected a Keysym *, and
5132 keysyms are long's on Alpha Linux. This was causing
5133 segfaults in Xlib, apparently because of alignment.
5134 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
5136 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
5138 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
5139 set GDK_EXPOSURE_MASK for DrawingAreas
5141 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
5143 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
5144 (superceded by RC file reparsing capabilities)
5146 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
5147 events. (Shouldn't be sent to the InputOnly leader, which
5148 it is now by gdk_event_send_clientmessage_toall
5150 * gtk/testgtk.c: Added extra button to rcfiles test
5151 to send out _GDK_READ_RCFILES events.
5153 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
5155 * gtk/gtkselection.c (gtk_selection_clear): Fixed
5156 reversed conditionals that caused segfault on some
5159 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
5161 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
5162 cast to GTK_OBJECT for gtk_object_ref.
5164 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
5166 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
5167 checking for signal initialization in gtksignal.c.
5169 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
5170 a long debugging period ;)
5172 1998-05-05 Stefan Jeske <stefan@gtk.org>
5174 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
5175 New function to wrap XSetDashes; modified gtkctree.c to use it.
5177 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
5179 * configure.in: Added $x_libs in the other_libraries field in the
5180 check for XShapeCombineMask.
5182 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
5184 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
5186 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
5187 linear array rather than a hash table. it actually speeded up testgtk
5188 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
5189 pointers across invokations of gtk_type_node_next_and_invalidate() and
5190 therefore gtk_type_unique()!
5192 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
5193 inheritance of a class pointer.
5194 (GTK_OBJECT): modifications for speedups.
5195 (GTK_IS_OBJECT): likewise.
5196 (GTK_OBJECT_CLASS): likewise.
5197 (suggested by owen).
5199 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
5201 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
5203 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
5204 since its derivation changed 4 month ago ;(. showed up with the unique
5205 type name checking code in gtk_type_unique().
5207 * random guint->GtkType and macro fixups.
5209 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
5211 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
5212 Configure events that would result in a negative
5215 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
5217 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
5218 "glibconfig.h" and another about writing another IRC
5221 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
5223 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
5224 parameters to log are doubles. Digital Unix apparently
5225 is missing the argument in its prototype.
5227 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
5229 * gtk/gtklabel.c (gtk_label_state_changed): Don't
5230 force a clear until the widget is actually on
5233 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
5235 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
5236 to make this consistent with the gtk-1-0 tree.
5238 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
5240 * configure.in acheader.h gdk/gdkwindow.c
5241 Check for Shape extension both on the client and server
5242 side. (And, more importantly, check for the shape extension
5243 so we may include -lXext even when compiling with --disable-xshm)
5245 Don't set override_redirect on all shaped windows. It isn't
5248 * gdk/gdkwindow.c: Set ->colormap to NULL for root
5249 and foreign windows. Use this to check if we
5250 need to get the colormap from X.
5252 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
5254 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
5255 between the default and the button always in GTK_STATE_NORMAL.
5257 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
5260 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
5262 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
5263 Fix a buffer overflow on pixmaps that claim to have
5264 more than 31 characters per pixel.
5266 (gdk_pixmap_read_string): Don't wrap around strings longer
5267 than half of address space ;-)
5269 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
5270 that were used for printing integers.
5277 int foo (void) { ... }
5279 Even where there were proper prototypes elsewhere.
5281 * gdk/gxid.c (handle_claim_device): Some extra checks.
5282 It isn't safe against being fed bad X id's, but at
5283 least it should be safe against deleting all your
5286 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
5288 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
5289 to set the adjustments value when there is no current emission.
5290 [ Removed by mutual agreement owt 5/3/1998 ]
5292 * gtk/gtksignal.c: added new functions to retrive the number of
5293 existing emissions for a certain signal.
5294 (gtk_signal_n_emissions): new function.
5295 (gtk_signal_n_emissions_by_name): new function.
5297 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
5299 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
5300 set the current focus_child of a container, does proper referencing and
5301 adjusts the vadjustment/hadjustment associated with the focus widget.
5303 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
5304 containers via gtk_container_set_focus_child.
5306 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
5309 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
5310 child since not every child removal goes through this function (this
5311 showed up after gtk_container_set_focus_child() started to reference the
5312 focus_child of a container).
5314 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
5315 of a container from gtk_container_remove into this place.
5317 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
5319 * gtk/gtksignal.c: added new functions to operate on intermediate
5320 function pointers. implemented incremental blocking.
5321 (gtk_signal_disconnect_by_func): new function.
5322 (gtk_signal_handler_block_by_func): new function.
5323 (gtk_signal_handler_unblock_by_func): new function
5325 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
5327 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5328 Always show the scrollbars when the policy is
5329 GTK_POLICY_ALWAYS...
5331 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
5333 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
5334 "value_changed" if we really passed a new value.
5335 (gtk_adjustment_changed): new function to emit the "changed" signal.
5336 (gtk_adjustment_set_value): new function to emit the "value_changed"
5339 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
5341 * gtk/gtkcombo.c: Further changes to the way the window
5342 is popped up so that it will be compatible with
5343 auto-scrolling in the future.
5345 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
5347 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
5348 the combo-list is empty since that will cause the combo to operate
5349 on a non existing GtkList window.
5350 (gtk_combo_get_pos): provide the combo list with a usfull default
5352 (gtk_combo_popup_button_press): grab the focus.
5353 (gtk_combo_activate): grab the focus.
5355 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
5357 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
5358 function to reset the RC styles for a heirarchy
5360 Clear the window background if necessary in
5361 gtk_window_style_set.
5363 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
5364 rereads all previously read RC files.
5366 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
5367 (Should it just be called gdk_get_toplevels?)
5369 * gtk/testgtk.c: New test to reload RC files.
5371 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
5374 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
5375 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
5376 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
5377 the GTK_ prefix (this solution involved less changes in the
5378 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
5379 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
5380 from lars & stefan to support the derivation of GtkCtree.
5384 initial import of a tree widget derived from gtkclist, courtesy
5385 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
5388 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
5390 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
5392 (gtk_list_insert_items):
5393 (gtk_list_remove_items_internal):
5394 (gtk_list_clear_items):
5395 remove a possible pointer grab, we might get thrown into a loop
5397 (gtk_list_button_press): grab the pointer *before* selecting the child,
5398 because selection of items may cause the lists children to change,
5399 resulting in a grab release.
5400 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
5402 (gtk_list_shutdown): remove all children from the list.
5403 (gtk_real_list_unselect_child):
5404 (gtk_real_list_select_child): *always* put our internal structures into
5405 sane state *before* signal emisions (i.e. list->selection updates prior
5406 to gtk_list_item_[de]select() calls).
5408 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
5409 focused child walks out of the window.
5410 removed CAN_FOCUS for the combo arrow's button since it doesn't react
5411 to keyboard events ("clicked" connection is missing).
5413 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
5415 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
5416 getting colormap for FOREIGN windows to go along with
5417 Raster's fix for visuals.
5422 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
5424 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5425 Check to catch the case when the viewport fits in either
5426 direction or both, instead of flip-flopping infinitely.
5428 Only show/hide the scrollbars once at the end.
5430 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
5432 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
5433 Include the scrollbars in the foreach call.
5434 (gtk-fortier-980405-0.patch;
5435 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
5438 really should also include its tabs, but that might cause
5439 problems for programs if they
5441 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
5443 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
5444 resize if the size actually changed.
5445 (gtk-johannes-980414-0.patch ;
5446 johannes@nada.kth.se (Johannes Keukelaar) )
5448 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
5450 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5451 ltmain.sh ltconfig config.sub config.guess:
5453 Reverted back to libtool-1.2 (plus minor patches) so as not to
5454 force the issue for everyone else.
5456 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
5458 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5459 Updated to libtool 1.2a.
5461 * gtk/gtkclist.c: Draw the in-between lines with style->base
5462 instead of style->white.
5464 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
5466 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
5467 Cache the colormap and children of a window locally
5468 instead of fetching them from the server when needed.
5469 Huge performance difference for creating/destroying
5472 * gtk/gtkstyle.c: Find the depth from the cached
5473 visual, instead of asking the server.
5475 * gtk.m4: Distribute the new version which tries to
5476 figure out what went wrong and give helpful error
5479 * ltmain.sh ltconfig config.sub config.sh:
5480 Updated to libtool 1.2a
5482 * gtk/gtktext.c: Fixed a bug where the drawn level
5483 was being messed up when the text was scrolled
5486 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
5488 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
5489 the filesystem under you (fix from Josh)
5491 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
5493 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
5494 if the viewport already exists before iterating over it, maybe we
5495 haven't been constructed yet.
5497 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
5499 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
5500 the GtkBin widget already has a child.
5502 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
5503 check that child->parent == NULL;
5505 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
5507 * gtk/gtkselection.c (gtk_selection_clear): Only return
5508 FALSE when the clear event is been rejected, not when
5509 widget has already lost the selection. (Which should
5510 only happen when we are setting the selection to another
5513 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
5515 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
5517 Removed the "check visibility after gtk_widget_unparent" bug
5518 in hopefully the last three places.
5520 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
5522 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
5525 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
5527 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
5528 for CAN_FOCUS widgets.
5530 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
5531 adjustments for the table.
5532 (create_list): feature automatic adjustment of the scrolled window to
5533 always contain the focused child.
5534 (create_main_window): keep the focussed button always inside of the
5537 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
5538 adjustments, to contain the allocation of the currently focused child.
5539 (gtk_container_set_focus_hadjustment): new functin to set the
5540 horizontal focus adjustment.
5541 (gtk_container_set_focus_vadjustment): new functin to set the vertical
5544 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
5545 clamp the currents adjustment page into a specific range.
5547 * random GtkType fixups for gtk_*_get_type() functions.
5549 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
5551 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
5552 Account for the fact that gtk_tree_item_remove_subtree
5553 will be called recursively.
5555 Handle removing a collapsed subtree.
5557 (From Andy Dustman <adustman@comstar.net>)
5559 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
5560 root tree when removing items from a non-previously
5563 * gtk/testgtk.c: Added a remove_subtree button.
5565 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
5567 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
5568 before object removing data. This change fixes a bug where
5569 removing the last weak references would cause it to be
5572 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5574 * gdk/Makefile.am: Removed mostly useless dependency that
5575 was causing problems for SGI's make, when used with
5576 the 'make dist' form of GTK+. (Dependency caused dependencies
5577 to be redone when BUILT_SOURCES changed)
5579 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
5581 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
5584 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
5585 to gtkitem.c so dragging can also work in lists.
5587 * gtk/gtklist.[ch]: Track child enter events and use
5588 those to allow dragging the selection.
5590 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
5592 * gtk/gtktext.c: Try enabling background pixmaps for editable text
5593 widgets. There is a bit of flashing, but not too bad. If you
5594 don't want the flashing, you can always not set a background
5597 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
5599 * gtk/gtktext.c: Fixed a bug where the drawn level
5600 was being messed up when the text was scrolled
5603 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
5605 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
5606 bug: There is no need to set the ExposureMask in the XGrabPointer
5607 (this caused DnD programs to crash).
5609 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
5611 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
5612 field to be of type guint.
5613 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
5615 (gtk_accelerator_table_install): keep a per object list of accelerator
5616 tables that refer to this object.
5617 (gtk_accelerator_table_remove): remove the accelerator table from the
5619 (gtk_accelerator_table_clean): warn if there are any object references
5620 left in an accelerator table upon destruction.
5621 (gtk_accelerator_tables_delete): new function to delete object
5622 references from the accelerator tables associated with this object.
5624 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
5625 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
5626 of an accelerator can be prevented by gtk_signal_emit_stop().
5627 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
5628 so there are no stale pointers in accelerator tables left.
5630 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
5632 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
5633 visible before we unparent it.
5635 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
5637 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
5638 running_timeouts list with the tmp_list link itself, not with a new
5639 GList structure pointing to our link. that would fill up memory and
5640 causes the GList.data fields of the running_timeouts list to point to
5641 GList structures and not GtkTimeoutFunction structures which is a
5643 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
5646 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
5648 * gtk/gtkradiomenuitem.h:
5649 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
5650 ala gtk_radio_button_set_group.
5651 (gtk_radio_menu_item_init): assure that we always have at least a group
5652 that points to self.
5654 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
5655 added g_return_if_fail() statements.
5656 (gtk_radio_button_init): assure that we always have at least a group
5657 that points to self.
5659 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
5661 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
5663 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
5665 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
5666 (Damon Chaplin), which i got wrong when applying Damon's patch the last
5669 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5671 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
5672 that when we are running with a non-installed colormap,
5673 in 8-bit pseudo-color, we actually are using the system
5674 visual. (Fixes *Bad Match* errors on Digital Unix machines
5675 with multiple 8-bit pseudo-color visuals)
5677 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
5679 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
5680 by whoever thought that randomly changing ints to unsigned int
5681 without reviewing the code was a good idea. It is, btw not
5682 mentioned in the ChangeLog as usual, but I know it was not Elliot
5683 the culprit this time.
5685 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
5687 * Released GTK+ 1.0.0