1 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
3 * gdk/Makefile.am, gtk/Makefile.am:
4 Removed DEFS "+=" mess that breaks recent automakes.
5 INCLUDES is the correct way to add to CFLAGS from Makefile.am.
7 * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
8 gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
9 gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
11 Include "config.h" instead of "../config.h".
12 Now that DEFS works again, automake will automatically pass us
13 the location of config.h in -I.
15 Mon Nov 23 22:10:09 1998 Owen Taylor <otaylor@redhat.com>
17 * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
18 gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
20 Added layout widget for scrolling arbitrarily big areas.
21 Added plug/socket widgets for interprocess embedding.
23 These widgets still, at some point, need to be
24 made more pure in their use of GDK, as opposed
27 * gtk/testgtk.c: Added test for layout widget.
29 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
31 * gtk/gtkclist.c: (gtk_clist_swap_rows): Bugfix from
32 Brandon Long <blong@fiction.net> - do the right thing with first
33 and last, which are the absolute values of row arguments row1
36 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
38 * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
39 default adjustment (from 0 to 100) instead. I'm not sure if this
40 is the correct level for the fix, but gtk_progress_bar_new()'s
41 original default behavior is restored.
43 1998-11-23 Martin Baulig <martin@home-of-linux.org>
45 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
46 we can check for latest GTK features.
48 1998-11-23 Havoc Pennington <hp@pobox.com>
50 * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
51 (gtk_toolbar_insert_element): When setting relief, also affect
54 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
56 * gtk/gtkobject.h: remove extraneous comma
58 Mon Nov 23 05:21:50 1998 Tim Janik <timj@gtk.org>
61 (gtk_container_add_with_args):
63 (gtk_container_add): removed assertements for constructed containers
64 again, since this essentially breaks the "child" arg.
66 * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
67 reference count, we don't need to reference toplevels that already have
70 * gtk/gtkscrolledwindow.c: check for the composites existance in
71 _forall since we might not be already constructed.
73 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
77 * configure.in: require GLib 1.1.5
79 Mon Nov 23 03:21:17 1998 Tim Janik <timj@gtk.org>
81 * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
83 (gtk_text_finalize): only unref the current_font if we have
86 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
93 docs/gtk-config.1: Version incremented to 1.1.5
95 Sun Nov 22 16:21:28 1998 Tim Janik <timj@gtk.org>
97 * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
98 ::text_yalign, ::activity_mode.
100 * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
101 ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
103 (gtk_progress_bar_new):
104 (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
105 (gtk_progress_bar_construct): deprecated.
107 * gtk/gtkvscrollbar.c:
108 (gtk_vscrollbar_draw_step_back):
109 (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
110 gtk_paint_arrow, to be consistent with hscrollbar.
113 added construct args ::hadjustment, ::vadjustment.
114 added args ::line_wrap, ::word_wrap.
115 (gtk_text_class_init): added scroll_adjustments signal.
116 (gtk_text_new): use gtk_widget_new.
117 (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
118 so we don't screw the reference counts and don't leave signals connected.
119 (gtk_text_destroy): disconnect adjustments signals.
120 (gtk_text_finalize): unref adjustments.
122 * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
123 added args ::indent, ::spacing, ::show_stub, ::reorderable,
124 ::use_drag_icons, ::line_style and ::expander_style.
125 (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
128 * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
130 removed ::vadjustment and ::hadjustment args, introduced
131 ::scroll_adjustments signal.
132 added ::shadow_type, ::selection_mode and ::row_height args.
133 added n_columns construct arg.
134 (gtk_clist_construct): call gtk_object_constructed().
135 (gtk_clist_set_row_height): if height is passed as 0,
136 revert to automatic height calculation.
137 (gtk_clist_destroy): before unrefing the adjustments, disconnect our
140 Fri Nov 21 22:34:58 1998 Tim Janik <timj@gtk.org>
142 * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
144 (gtk_widget_destroy): assert that we only destroy constructed widgets.
146 * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
147 to identify args that may only be used for construction.
148 GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
150 * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
151 at the end if the object is not fully constructed.
152 (gtk_object_newv): likewise.
153 (gtk_object_destroy): assert that we only destroy constructed objects.
154 (gtk_object_init): setup GTK_CONSTRUCTED from the
156 (gtk_object_default_construct): new function to complete default
157 construction of an object by applying missing construtor args with
158 default values of 0, 0.0 or NULL.
159 (gtk_object_constructed): new function to mark an object as being
160 constructed (used from within constructors).
162 * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
163 so it is immediatedly available for the caller.
165 * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
166 the object initilizer (GtkObjectInitFunc takes a second arg now, the
167 real klass), and asure that object initializers may temporarily alter
170 Fri Nov 20 08:00:30 1998 Tim Janik <timj@gtk.org>
172 * gtk/testgtk.c: change all occourances of gtk_container_add (
173 scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
174 for widget!=(clist, ctree, text, viewport).
177 (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
178 to add children to the scrolled window.
180 * gtk/gtkscrolledwindow.h:
181 * gtk/gtkscrolledwindow.c:
182 changed scrolled_window->viewport to scrolled_window->child, and use
183 gtk_widget_scroll_adjustements() to set the scroll adjustments for the
184 widget, we do not create an additional viewport anymore.
185 added ::hadjustment and ::vadjustment constructor args.
186 (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
187 (gtk_scrolled_window_set_hadjustment):
188 (gtk_scrolled_window_set_vadjustment): new functions that superceed
189 gtk_scrolled_window_construct.
190 (gtk_scrolled_window_construct): deprecated this function.
192 * gtk/gtkhscrollbar.c:
193 * gtk/gtkvscrollbar.c:
196 support a constructor arg "::adjustment", and use gtk_widget_new() for
199 * gtk/gtkrange.c: added ::update_policy arg.
200 (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
201 a default adjustment so this function can be used for derived widgets
202 that depend on the adjustment's existance.
203 (gtk_range_destroy): disconnect the adjustment signal, so we don't
204 get called after we got destroyed, we don't destroy the adjustment
205 in here, because it might have been provided from another widget.
207 * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
208 (gtk_viewport_destroy): same as gtk_range_destroy.
210 * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
213 * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
214 gboolean, indicating whether this widget supports activation.
215 added gtk_widget_scroll_adjustements() to set the scrolling
216 adjustments of a widget.
218 Wed Nov 19 01:22:42 1998 Tim Janik <timj@gtk.org>
220 * gtk/gtkoptionmenu.c:
221 (gtk_option_menu_remove_contents):
222 (gtk_option_menu_update_contents): removed
223 gtk_container_[un]block_resize() pairs.
226 * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
227 be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
230 * *.c: made deprecated functions issue a message:
231 gtk_clist_set_border, gtk_container_block_resize,
232 gtk_container_unblock_resize, gtk_container_need_resize,
233 gtk_object_class_add_user_signal, gtk_spin_button_construct,
234 gtk_scrolled_window_construct.
235 removed non-functional functions:
236 gtk_container_disable_resize, gtk_container_enable_resize,
237 gtk_clist_set_policy.
239 Wed Nov 18 22:54:36 1998 Tim Janik <timj@gtk.org>
241 * gtk/gtkbox.c (gtk_box_init):
242 * gtk/gtkdrawingarea.c (gtk_drawing_area_init):
243 * gtk/gtkeventbox.c (gtk_event_box_init):
244 * gtk/gtkfixed.c (gtk_fixed_init):
245 * gtk/gtkframe.c (gtk_frame_init):
246 * gtk/gtkhandlebox.c (gtk_handle_box_init):
247 * gtk/gtkpacker.c (gtk_packer_init):
248 * gtk/gtkmisc.c (gtk_misc_init):
249 * gtk/gtkpreview.c (gtk_preview_init):
250 * gtk/gtkprogress.c (gtk_progress_init):
251 * gtk/gtkprogressbar.c (gtk_progress_bar_init):
252 * gtk/gtkseparator.c (gtk_separator_init):
253 * gtk/gtktable.c (gtk_table_init):
254 * gtk/gtkviewport.c (gtk_viewport_init):
255 * gtk/gtkalignment.c (gtk_alignment_init):
256 removed setting of the GTK_BASIC flag.
260 removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
262 * miscellaneous GtkType and macro fixups.
264 Sat Nov 21 18:53:13 1998 Owen Taylor <otaylor@redhat.com>
266 * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin):
267 Fixed so it at least works with window managers other
268 than Enlightenment, though it probably needs to be
271 1998-11-21 Andrew T. Veliath <andrewtv@usa.net>
273 * gtk/gtkhandlebox.[ch]: Add shadow_type and
274 gtk_handle_box_set_shadow_type function (plus a
275 GtkHandleBox::shadow arg) to allow configuration of shadow in the
278 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
280 * gtk/gtkcalendar.c: Fix for marking days from
281 Dan Reish <dreish@izzy.net>.
283 Thu Nov 19 00:15:27 1998 Lars Hamann <lars@gtk.org>
285 * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
286 in row_list. (from Samuel Solon <ssolon@usa.net>)
288 * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
289 (gtk_clist_get_column_widget): return column widget
291 Wed Nov 18 11:54:57 1998 Owen Taylor <otaylor@redhat.com>
293 * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
294 that are sent to a toplevel but are not within the
297 * gdk/gdkdnd.c gdk/gdk.h: Added support for a
298 XdndProxy atom which proxies the drag to another window.
300 1998-11-17 Federico Mena Quintero <federico@nuclecu.unam.mx>
302 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
303 that it is not needed.
305 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
306 * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
307 function to correctly determine gdk window position relative to
308 its "root window" - contains check for an Enlightenment
310 * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
311 gdk_window_get_deskrelative_origin to get the origin of dragged
312 handleboxes correctly. Now it works correctly with E.
314 Tue Nov 17 1998 Tuomas Lukka <lukka@iki.fi>
316 * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
317 getting types even though we were not using real type names,
318 just the index. This caused random crashes when more than
319 256 types were defined.
321 1998-11-17 Martin Baulig <martin@home-of-linux.org>
323 * gtk/genmarshal.pl: Put output files in the current directory
324 and not in the $(srcdir) since the VPATH is ignored for built
327 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
330 * gtk/Makefile.am: check for unchanged autogenerated files, so
331 we don't rebuild everything just for adding a new function
333 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
336 gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
337 code thanks to GNOME stock by Eckehard Berns. New function
338 gtk_pixmap_set_build_insensitive to provide ability to turn
341 Tue Nov 17 00:06:29 1998 Lars Hamann <lars@gtk.org>
343 * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
344 new guints : tab_hborder, tab_vborder; marked tab_border deprecated
345 (struct _GtkNotebookPage): new flags : expand, fill, pack
347 * gtk/gtknotebook.h/c
348 (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
350 (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
351 (gtk_notebook_set_tab_hborder): new function. set tab_hborder
352 (gtk_notebook_set_tab_vborder): new function. set tab_vborder
353 (gtk_notebook_query_tab_label): new function. get tab_label widget.
354 (gtk_notebook_set_tab_label): new function. set tab_label widget.
355 (gtk_notebook_set_tab_label_text): new function. set tab_label text.
356 (gtk_notebook_query_menu_label): new function. get tab_label widget.
357 (gtk_notebook_set_menu_label): new function. set tab_label widget.
358 (gtk_notebook_set_menu_label_text): new function. set tab_label text.
359 (gtk_notebook_set_tab_label_packing): new function. set tab_label
360 fill, expand, fill_type
361 (gtk_notebook_query_tab_label_packing): new function. get tab_label
362 fill, expand, fill_type
364 (gtk_notebook_real_page_position): return logic page number
365 (gtk_notebook_search_page) search next/prev logic page
366 (gtk_notebook_update_labels): set logic page number.
367 (gtk_notebook_page_compare): renamed gtk_notebook_find_page
368 (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
369 CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
370 (gtk_notebook_button_press) (gtk_notebook_key_press)
371 (gtk_notebook_focus) (gtk_notebook_pages_allocate)
372 (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
373 use gtk_notebook_search_page
374 (gtk_notebook_page_allocate): fixed allocation bug
375 (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
376 (gtk_notebook_init): unset GTK_NO_WINDOW flag
377 (gtk_notebook_size_request): check whether page->child is visible.
378 changes due to tab h/vborder, homogeneous tabs
379 (gtk_notebook_paint): don't draw invisible tabs
380 (gtk_notebook_switch_page): calculate page_num if it's less than 0
381 (gtk_notebook_append_*) (gtk_notebook_prepend_*)
382 (gtk_notebook_insert_page): removed sanity checks
384 * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
386 Mon Nov 16 15:10:33 1998 Owen Taylor <otaylor@redhat.com>
388 * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
389 (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
391 * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was
392 broken. (GtkWidget's default unmap handler should work fine).
393 Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
395 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
397 * gtk/gtkmenubar.[ch]: added shadow_type setting and
398 gtk_menu_bar_set_shadow_type function to allow shadow
399 configurability for menubars
401 * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
404 Mon Nov 16 00:17:53 1998 Tim Janik <timj@gtk.org>
406 * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
407 class creation and parent class' object initializer.
409 1998-11-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
411 * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
412 have assigned it to the window -- there is no point in keeping it around.
413 (gtk_paned_unrealize): No need to destroy the cursor here.
415 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
418 Fri Nov 13 11:22:38 1998 Owen Taylor <otaylor@redhat.com>
420 * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
421 (gtk-blizzard-981005-0.
422 Christopher Blizzard <blizzard@applied-theory.com)
424 * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
425 gdk_pixmap_foreign_new to gdkx.h.
427 Fri Nov 13 16:06:48 1998 Owen Taylor <otaylor@redhat.com>
429 * gtk/Makefile.am: Added rules to generate an empty
430 GTK+ theme called "Default" upon installation.
432 * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
433 of fonts and fontsets.
434 (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
436 * gtk/gtkmain.c: Change test to detect glibc's
437 utf8 based mb* functions to be more specific.
439 * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation
442 Fri Nov 13 16:43:36 1998 Lars Hamann <lars@gtk.org>
444 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
446 (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
447 event_window if draw_indicator is set
448 (gtk_toggle_button_set_mode):
450 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
452 * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
453 ensure proper type (SunPro cc complains)
455 * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
457 * gtk/gtktogglebutton.c: use our own draw method so we get proper
458 redraws on active state
460 Thu Nov 12 00:26:13 1998 Lars Hamann <lars@gtk.org>
462 * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
465 * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
468 Wed Nov 11 19:54:58 1998 Lars Hamann <lars@gtk.org>
470 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
471 (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
472 added ARG_WINDOW_PLACEMENT
474 * gtk/gtkclist.c (size_allocate_columns): resize column if column
475 button > column width and auto_resize is set
476 (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
477 consider column button width of auto resized columns
478 (gtk_clist_parent_set): removed
480 * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
481 (auto_resize_columns): auto_resize all columns
482 (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
483 (column_auto_resize): respect column button width of auto resized
486 1998-11-10 Martin Baulig <baulig@merkur.uni-trier.de>
488 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
489 we can check for latest GTK features.
491 Mon Nov 9 00:39:20 1998 Lars Hamann <lars@gtk.org>
493 * gtk/gtkenums.h : new enum GtkCornerType
494 * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
496 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement):
497 new method to set window_placement.
498 (gtk_scrolled_window_viewport_allocate)
499 (gtk_scrolled_window_size_allocate): few changes due to
501 * gtk/testgtk.c (remove_selection): fixed while loop.
503 Sat Nov 7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
505 * gtk/gtkclist.c: check if column[i].button is valid before calling
506 gtk_widget_intersect on it in gtk_clist_draw
508 * gtk/gtkdnd.c: removed unused variable empty_bits
510 * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
512 * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
513 a boolean (thanks to Elrond for noticing this)
515 1998-11-07 Jay Cox <jaycox@earthlink.net>
517 * gtk/gtkwindow.c: forward declaration for gtk_window_paint
518 * gdk/gdkxid.c: declare xid_ht static
519 * examples/*/Makefile: get the link ordering right.
521 Sat Nov 7 16:31:56 1998 Stefan Jeske <stefan@gtk.org>
523 * gtk/gtkclist.c (gtk_clist_realize): Set background of
524 title button window to GTK_STATE_NORMAL instead of
525 GTK_STATE_SELECTED to avoid ugly flicker.
527 Fri Nov 6 23:29:40 1998 Lars Hamann <lars@gtk.org>
529 * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
530 if adjustments are NULL and list size has changed
531 (gtk_clist_size_request): return real list requsition,
532 if adjustments are NULL.
533 (size_allocate_columns): use button->requisition.with, if column
535 (list_requisition_width): new function. return full list width.
536 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
537 auto create adjustments.
538 (gtk_clist_motion) (move_vertical) (move_horizontal):
539 check adjustment != NULL.
541 Thu Nov 5 12:06:16 1998 Owen Taylor <otaylor@redhat.com>
543 * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
544 a clear/redraw, not just a redraw, so the focus
545 gets undrawn properly.
547 * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize):
548 Chain to gtk_widget_unrealize() instead of duplicating
551 Wed Nov 4 14:34:51 1998 Owen Taylor <otaylor@redhat.com>
553 * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
554 last vestiges of old DND.
556 Tue Nov 3 12:27:52 1998 Owen Taylor <otaylor@redhat.com>
558 * gtk/gtkentry.c: Restored inner border to entries,
559 erase cursors to background image.
561 Fri Oct 30 12:09:21 1998 Owen Taylor <otaylor@redhat.com>
563 * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
564 it was identical to paint_flat_box().
566 * gtk/gtkstyle.c: Coding style fixups.
568 * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
571 * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c:
572 Change 'side' for paint_[box/shadow]_gap and paint_extension
573 to be GtkPositionType instead of a random int.
575 * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use
576 "frame" as detail - an aspectframe should draw identical
579 Tue Oct 27 09:58:11 1998 Owen Taylor <otaylor@redhat.com>
581 * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
582 from combine_child_shapes().
584 * gdk/gdkwindow.c: Merge propagate_shapes() and
585 propagate_combine_shapes() to remove code duplication.
587 Thu Nov 5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
589 * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
590 gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
591 So allocate some mem if it's not already done.
593 * clist scrollbar merges from HEAD
595 Tue Nov 3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
597 * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
599 * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
600 of 0x80000000, so we stay within the bounds of a postive signed
601 int (it broke some compilers)
604 * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
605 when some of the menuitems are hidden
607 * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
610 * gtk/gtkwidget.c: add a dummy continue after the line label
611 next_rect, since some compilers don't like label: }
613 Sun Nov 1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
615 * Okay, so we need the X11R6 keysyms so programs don't have to
616 worry about them. They don't conflict anyway. Reverted the #ifdef
619 * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
620 special rule for them (X-derived-headers)
622 Sun Nov 1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
624 * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
625 and gdkkeysyms.h into sed scripts, since the awk scripts weren't
626 portable, and we really shouldn't be using awk anyway.
629 * makekeysyms.awk: bye bye
631 * gtk/gtkaccelgroup.c
634 * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
636 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
638 * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
639 and gdkkeysyms.h. Remove those files from CVS.
641 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
643 * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
644 of the USE_XIM #ifdef
646 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
647 even with --include-deps. Slightly different from timj's fix, to avoid
648 circular dependency with gtkmarshal.c
653 * gtk/gtkfontsel.[ch]
657 * gtk/testgtk.c: merges from HEAD
660 * gtk/gtkradiomenuitem.c
661 * gtk/gtktreeitem.c: cleanups
663 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
665 * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
667 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
669 * configure.in: AIX has libpthreads, to make sure you can have
670 more than one thread. Also add -D_THREAD_SAFE, and reorder
671 configure.in so CFLAGS doesn't get clobbered when we actually
674 * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
677 * gtk/testdnd.c: removed unused variable "buf"
679 Mon Oct 26 16:46:15 1998 Owen Taylor <otaylor@redhat.com>
681 * gtk/gtkcontainer.c (gtk_container_unregister_toplevel):
682 remove_link(), not remove()
684 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
686 * gdk/gdkrgb.c: use glib endian stuff
688 * configure.in: don't need to check for endianness anymore
690 * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
692 Wed Oct 21 17:44:27 1998 Owen Taylor <otaylor@redhat.com>
694 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
695 all toplevel widgets, not toplevel windows. (I.e.,
696 plugs should be reset)
698 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
699 _do_ need to notify the other toplevels - by the time
700 the get the client messages, the RC file dates will
703 * gtk/gtkcontainer.h: Added a function call to list
704 every toplevel widget.
706 * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse):
707 Don't send client messages to _every_ window on display!
709 Tue Oct 20 16:21:04 1998 Owen Taylor <otaylor@redhat.com>
711 * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags
712 when dragging across widgets, only in drags
715 Tue Oct 20 15:59:49 1998 Owen Taylor <otaylor@redhat.com>
717 * gtk/gtkdnd.c (gtk_drag_source_info_destroy):
718 Emit "drag_end" signal at end of drag.
720 Tue Oct 20 13:07:54 1998 Owen Taylor <otaylor@redhat.com>
722 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
723 for "gtk-embedded" data currently set by
724 GtkSocket, and use that to forward client message
725 on to embedded windows. Only reset our own toplevel -
726 the others will handle themselves. (Now that
727 GtkMenus live in GtkWindows)
729 Mon Oct 19 16:40:40 1998 Owen Taylor <otaylor@redhat.com>
731 * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
732 client window finding code so that it works with
733 WM's other than fvwm.
735 Sun Oct 18 22:48:27 1998 Owen Taylor <otaylor@redhat.com>
737 * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
738 the "GtkDrawWindow" class, which is a descendent
739 of the Window class which leaves its background alone.
740 Essentially, a toplevel drawing area, though it does
741 allow adding a child.
743 Sat Oct 17 00:40:51 1998 Owen Taylor <otaylor@redhat.com>
745 * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
746 merging RC styles. Report new share/themes path for
747 themes directory. Deref theme engines when appropriate.
749 * gtk/gtkclist.c: Set all backgrounds in _style_set().
750 Make sure that pixel for xor_gc is never 0.
752 * gtk/gtkctree.c: Choose colors for plus/minus more
753 carefully, in a hopefully style-independent fashion.
754 (Still needs a bit more work)
756 * gtk/gtkwidget.c: Don't send expose events to widgets
757 which are about to be resized and redrawn. (Needs a
760 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
761 drawing on tabs for newly allocated, un-sized
762 pages - we'll get the size wrong.
764 Thu Oct 1 17:38:07 1998 Owen Taylor <otaylor@redhat.com>
766 * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
767 up stupidities in last commit.
769 Thu Oct 1 14:25:43 1998 Owen Taylor <otaylor@redhat.com>
771 * gtk/gtkwidget.c: When handling queued resizes, account
772 for handleboxes, where the widget heirarchy is different
773 than the window heirarchy by just queueing a resize on
774 the entire handlebox if the detached child is changed.
776 - Remove widgets from the redraw queue when reparenting,
777 even if not unrealizing. We queue a resize/redraw in
780 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
781 * gtk/gtkstyle.c: added check to see if the widget has been shaped
782 byt the app via gtk_widget_shape_combine_mask and if it has does
783 not reset the shape on theme change.
785 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
787 * gtk/gtkfilesel.c: Keep a list of directories in which we never
788 want to stat the entries (like /afs), and assume everything in
789 those directories is a subdirectory.
791 - When following a path, try to open components even when
792 we don't find them in their parent's directory to
793 support automounters.
795 Fri Sep 11 15:36:33 1998 Owen Taylor <otaylor@redhat.com>
797 * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
798 now at least compiles again.
800 * gdk/gdk.c (gdk_event_translate): Don't pass events
801 on destroyed widgets to the gdk_input layer.
803 Thu Sep 3 19:45:34 1998 Owen Taylor <otaylor@redhat.com>
805 * gtk/gtkthemes.c: Use g_module instead of dlopen()
807 Thu Sep 3 19:30:11 1998 Owen Taylor <otaylor@redhat.com>
809 * gtk/gtktooltips.c (gtk_tooltips_expose): Check
810 if we've changed widgets since the expose event
813 Mon Aug 31 15:33:13 1998 Owen Taylor <otaylor@redhat.com>
815 * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
816 to restore approximate bin compatibility with the
817 non-themes branch. (This does break bin compat
818 within the themes branch.)
820 Sun Aug 30 16:48:27 1998 Owen Taylor <otaylor@gtk.org>
822 * gtk/gtklabel.c (gtk_label_set): Eliminate a
823 gdk_window_clear_area() that snuck in with the
824 menu underlines merge.
826 Mon Aug 24 23:37:26 1998 Owen Taylor <otaylor@redhat.com>
828 * gtk/gtktext.c: Fixed some remaining background drawing,
829 merges from main branch, cleanups.
831 Mon Aug 24 10:55:51 1998 Owen Taylor <otaylor@redhat.com>
833 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
834 dereference NULL focus tab.
836 * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
837 functions since we need to both show/hide and
838 queue a redraw. (There's some duplication of drawing here,
839 we probably should only be queuing a redraw on the
840 "value" portion of the scale.)
842 Fri Aug 21 19:02:30 1998 Owen Taylor <otaylor@redhat.com>
844 * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
845 into the theme-drawing framework. We do this by making them,
846 like check/radio-buttons, no-window widgets with subwindows. We
847 then move the value by calling gtk_widget_queue_clear() and only
848 redraw the value in our draw() / expose() handler. A virtual
849 function clear_background is added which queues a clear on the
850 "background" portion of the widget.
852 Fri Aug 21 13:04:27 1998 Owen Taylor <otaylor@redhat.com>
854 * gtk/gtktext.c (mark_bg_gc): Make background colors work
855 again. (We can't always paint the background with a
856 paint() function - only do that for selected text)
858 Mon Aug 17 20:31:01 1998 Owen Taylor <otaylor@redhat.com>
860 * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
861 gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
863 * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
864 the themes can't be built as part of the same build since
865 they depend on gdk_imlib.
867 Fri Aug 14 12:44:30 1998 Owen Taylor <otaylor@redhat.com>
869 * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
872 * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
875 - Upgrade to libtool-1.2b + patch to add shared library dependencies
876 for Linux. (Needs to be extended to other platforms where they
879 - Check for -ldl so this branch should build on all platforms, though
880 themes will work on all platforms they could work on.
882 - Use -version and -release simultaneously: sonames stay as they are
883 in the current scheme, but -lgtk-1.1 changes to -lgtk.
885 - Added in extra -l flags to library LDFLAGS so we get shared library
886 dependencies against X libs and -ldl. (But not libgtk against
887 libgdk or libglib yet, since dependencies against uninstalled
888 libraries aren't portable)
890 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
891 * gtkrc.c - added api calls to find module and theme paths from gtk.
892 nuked gtk_install_prefix global.
894 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
895 * fixed gtk_install_prefix global.
897 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
898 * added gtk_install_prefix global const variabel to find where gtk is
901 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
902 * added ~/.gtk/lib/themes/engines/ to the default searchpath for
905 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
906 * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
908 Mon Aug 10 23:03:55 1998 The Rasterman <raster@redhat.com>
909 * Fixed minor problem in gtkhandlebox.c with drawing, and some
910 notebook stuff. Also pixmap theme is now "clean" again.
912 Mon Aug 10 23:03:55 1998 Owen Taylor <otaylor@redhat.com>
913 * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up
914 queued area resizing once more.
916 Mon Aug 10 23:09:30 EDT 1998
917 * Added a few drawing fixes for notebook and other widgets. finished
918 pixmap theme up to the level that can be supported so far. (need to
919 add path discovery 9ie where is the rc fiel from - add to pixmap
920 path so we can get theimages from there too). then we can package
921 themes. After that need to add to theme seartch path stuff in users
924 Thu Aug 6 16:49:25 1998 Owen Taylor <otaylor@redhat.com>
926 * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
927 drawing area, draw in an expose handler.
929 * gtk/gtknotebook.c (gtk_notebook_expose): Check for
932 Wed Aug 5 16:13:15 1998 Owen Taylor <otaylor@redhat.com>
934 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
935 creation of GC's so that they will be set before
936 they are used for map events (why are they used there?)
938 * gtk/gtkwidget.c: Fixed mistake that caused widgets to
939 be queued in multiple times in the queue.
941 Wed Aug 5 14:23:52 1998 Owen Taylor <otaylor@redhat.com>
943 * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
944 clip rects (or do anything) for shadow_none.
946 Wed Aug 5 13:14:57 1998 Owen Taylor <otaylor@redhat.com>
948 * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
949 Yes, it was needed. draw() and expose() are _not_
952 Sat Aug 1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
953 * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
955 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
956 * YES YES YES YES YES clist borders work again! YES! YES YES! gimme
957 more baby oooh yeah more more MORE YES YES.
959 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
960 * hopefully fixed problem wiht togglebuttons acting like
961 radiobuttons in gtktogglebutton.c
963 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
964 * fixed another drawing buglet in the frame drawing code (actually
965 in the clearing code but anyway in gtkstyle.c)
967 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
968 * Fixed warning from colorsel widget...
970 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
971 * Fixed defautl drawing code to no longer clobber the original style
972 pixmap bgs as it did and added a helper funciton og gtkstyle.c to
975 Thu Jul 30 18:09:21 1998 Owen Taylor <otaylor@redhat.com>
977 * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
979 * gtk/gtktooltips.c: Pass a widget (the window) to the
980 drawing function instead of the GtkTooltips.
982 Thu Jul 30 17:27:10 1998 Owen Taylor <otaylor@redhat.com>
984 * gdk/gdkwindow.c: Abstract out checking for shape
985 extension into a function.
987 * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
988 Remove extra callls to gtk_window_draw().
990 Thu Jul 30 11:18:43 1998 Owen Taylor <otaylor@redhat.com>
992 * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
994 * themes/th_main.c: Moved messages around so they are
995 printed before destroying strings.
997 Wed Jul 29 16:56:07 1998 Owen Taylor <otaylor@redhat.com>
999 * gdk/gdk.c: Fairly simple implementation of expose compression.
1000 (No GraphicsExpose compression yet, always compress
1001 with the equivalent of XtCompressMultiple - no compression
1002 of Expose events across non-Expose events)
1004 * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
1005 Find rectangle bounding two rectangles.
1007 * gtk/gtkstyle.c: Set clip rects for a few extra GC's
1008 in gdk_default_draw_shadow()
1010 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
1011 * Fixed drawing functions to handle switching themes on the fly
1012 gracefully and look decent.
1014 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
1015 * Added all the theme drawing code to all widgets, fixed up minor
1016 nigglies in some widgets when it comes to themes, seem to be
1017 running into some funky behavior with clipping rects in GC's. Too
1018 many files to list here. (all files that now use gtk_paint_* are
1021 Tue Jul 28 22:49:16 1998 Owen Taylor <otaylor@redhat.com>
1023 * themes/th_main.c themes/th_draw.c gtk/testgtkrc:
1024 Set up the demo theme so it is loaded from the RC file.
1026 * themes/th_draw.c: Alleviate the hardcoded paths a wee
1027 bit. (use $HOME/themes/)
1029 * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in
1030 the RC file via dlopen()
1032 Tue Jul 28 20:30:56 1998 Owen Taylor <otaylor@redhat.com>
1034 Internal handling of styles and RC styles pretty much
1035 completely reworked for Theme work.
1038 - Added routines for virtualization of RcStyle and Style handling.
1039 - Temporary "sample" inline theme-engine. (Does nothing
1040 but print out a few messages.
1043 - Made GtkRcStyle public, added flags to tell if particular
1044 colors have been set.
1045 - RC Styles are "transparent", and the final style for
1046 a widget is the composition of all matching styles
1047 - Added pointer to GtkThemeEngine, and gpointer engine_data
1048 to RC style and style.
1049 - Parse "engine" keyword, load the appropriate theme engine
1050 and call the engine's parser.
1053 - Keep a GtkRcStyle * in styles created from Rc Styles.
1054 - Load up images from RC file at style attachment time.
1055 - Call ->engine->foo() at appropriate times.
1056 - Don't use a GCache. All incarnations for a style are
1057 just linked together in a list, depend on the RC style
1058 code to find the existing copy.
1060 Tue Jul 28 14:41:54 1998 Owen Taylor <otaylor@redhat.com>
1062 * gtk/gtkwidget.[ch]: Added the concept of queued redraws
1063 of partial areas. This can be done either relative
1064 to the existing windows (gtk_widget_queue_clear[_area]())
1065 or relative to the future allocation of the widget
1066 (gtk_widget_queue_draw[_area]).
1068 The initial implementation is pretty braindead, but
1071 * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
1072 in favor of gtk_widget_queue_clear().
1074 * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
1075 flags in favor of gtk_widget_queue_clear()
1077 Tue Aug 4 19:12:14 1998 Owen Taylor <otaylor@redhat.com>
1079 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
1080 handling of partially clipped areas.
1082 Thu Nov 5 18:52:35 1998 Lars Hamann <lars@gtk.org>
1084 * gtk/gtkclist.h (struct _GtkCListClass)
1085 * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
1087 Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org>
1089 * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
1090 vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
1092 * gtk/gtkclist.c (gtk_clist_class_init): added new args types
1093 "hadjustment" & "vadjustment"
1094 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
1095 set/get_arg functions
1096 (gtk_clist_construct): don't create/adjust scrollbars.
1097 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
1098 to set h/vadjustments
1099 (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
1100 to query h/vadjustments
1101 (create_scrollbars): removed.
1102 (create_adjustments): replacement for create_scrollbars
1103 (gtk_clist_new): call gtk_clist_new_with_titles
1104 (gtk_clist_new_with_titles): don't warn on titles == NULL
1105 (move_horizontal): use CLAMP instead
1106 (gtk_clist_set_policy): deprecated method.
1107 use gtk_scrolled_window_set_policy instead.
1108 (vadjustment_value_changed): use clist->vadj.
1109 (adjust_scrollbars): renamed to adjust_adjustments
1110 (adjust_adjustments): former adjust_scrollbars
1111 (gtk_clist_destroy): unref adjustments
1112 (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
1113 (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
1114 (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
1115 (gtk_clist_thaw) (real_insert_row) (real_remove_row)
1116 (gtk_clist_set_row_height) (real_resize_column):
1117 call adjust_adjustments
1118 (gtk_clist_moveto): return if clist has no adjustments yet.
1119 (gtk_clist_parent_set): new GtkWidget::parent_set function.
1120 Autogenerate h/vadjustments if needed.
1121 (move_horizontal) (move_vertical): some cleanups
1123 * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
1124 call only gtk_viewport_set_h/vadjustment and let these functions
1126 (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
1127 generate a new adjustment if needed
1129 * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
1130 use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
1132 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
1133 queue_resize if visibility of scrollbars changes
1134 (gtk_scrolled_window_remove): only call container_remove with
1135 scrolled_window->viewport automatically if viewport was autogenerated
1136 (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
1137 auto create a viewport only if widget does not take h/vadjustments.
1138 (gtk_scrolled_window_construct): don't generate a viewport
1140 (gtk_scrolled_window_forall): call callback with viewport in any case
1141 (gtk_scrolled_window_set_arg): call gtk_container_add in case of
1143 (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
1144 (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
1148 (create_ctree) (export_ctree) (create_clist): use a scrolled_window
1149 in conjunction with clists/ctrees
1151 * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
1152 in conjunction with clists
1154 * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
1155 in conjunction with clists
1157 Wed Nov 4 21:52:57 1998 Lars Hamann <lars@gtk.org>
1159 * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
1160 (gtk_ctree_remove_node): select focus_row if needed
1161 (cell_size_request): only get pixmap size if pixmap != NULL
1163 Wed Nov 4 04:30:37 1998 Tim Janik <timj@gtk.org>
1165 * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
1166 GTK_IS_WIDGET (widget):
1168 Wed Nov 4 02:02:07 1998 Lars Hamann <lars@gtk.org>
1170 * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
1171 focus_row after a remove_row call.
1173 Sun Nov 1 21:00:06 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
1175 * gtk/gtkoptionmenu.c
1176 * gtk/gtkmenushell.c: make option menus work when some of the
1177 menuitems are hidden - previously, option menu would popup too
1180 1998-10-31 Raja R Harinath <harinath@cs.umn.edu>
1182 * gtk/gtkfeatures.h.in: Remove `#pragma }'.
1184 * gdk/gdki18n.h: Update to use new `glib' widechar defines.
1186 * configure.in (CFLAGS): Don't use test -z "echo .. | grep". Use
1188 (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
1189 (GDK_WLIBS): New variable. Lists extra libraries needed to use
1191 * gtk-config.in (--libs): List $GDK_WLIBS, too.
1193 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1195 * Released GTK+ 1.1.3
1201 * docs/gtk-config.1: updated for v1.1.3
1205 * docs/Makefile.am: Includes new 'make release' as well as
1206 'make sanity'. Also handles html and text creation from html,
1207 and puts them into the distribution
1209 * docs/Makefile.sgml: removed, similar functionality is now in
1210 the Makefile.am file
1212 * docs/.cvsignore: ignore html and text directories
1213 * docs/glib.texi: removed (now in glib dist)
1215 Fri Oct 30 20:02:36 1998 Lars Hamann <lars@gtk.org>
1217 * gtk/gtklist.c (gtk_list_remove_items_internal):
1218 free undo_un/selection, unselect list_item before disconnect
1220 (gtk_list_destroy): removed. gtk_list_shutdown clears the list
1222 (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
1223 (gtk_list_signal_item_toggle) (gtk_list_signal_scroll_horizontal)
1224 (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
1225 (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
1226 (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
1227 (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
1228 (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
1229 new functions. These functions are signal connected to inserted
1230 list_items, to handle key bindings and GtkItem::de/select/toggle
1233 * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
1234 gtk_object_class_add_signals call.
1235 (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
1236 (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
1237 (gtk_list_item_start_selection) (gtk_list_item_end_selection)
1238 (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
1239 (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
1240 removed. These functions are handled via connected
1241 gtk_list_signal_* functions now
1243 Fri Oct 30 05:24:43 1998 Tim Janik <timj@gtk.org>
1245 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1246 even with --include-deps:
1247 $(libgtk_la_SOURCES): $(BUILT_SOURCES)
1249 Fri Oct 30 01:56:08 1998 Tim Janik <timj@gtk.org>
1251 * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
1252 gtk_object_data_set_destroy to fit the gtkobject.h API.
1254 * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
1257 Added support for an extra 'base' filter which an application can
1258 set to restrict the fonts available to the user (e.g. a terminal
1259 program only wants the user to be able to select fixed-width fonts).
1260 The type of font (bitmap/scalable/scaled bitmap) is now
1261 also a part of the filter, so that an application can
1262 request that only scalable fonts are shown.
1263 There are new functions to set the base & user filters.
1264 I've also stopped the up/down key press signals getting
1265 to the clists since the font selection widget handles
1266 them itself. It acted a bit strangely before.
1268 Sun Oct 25 20:27:02 1998 Tim Janik <timj@gtk.org>
1270 * gtk/gtkmain.c (gtk_init): support an environment variable
1271 GTK_MODULES= which takes a colon sperated list of module names
1272 automatically loaded at gtk_init() startup.
1274 Sun Oct 25 08:04:33 1998 Tim Janik <timj@gtk.org>
1276 * gtk/gtkwidget.c: added more g_return_if_fail() statements.
1278 Thu Oct 22 22:40:35 1998 Lars Hamann <lars@gtk.org>
1280 * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
1283 Thu Oct 22 16:22:55 1998 Lars Hamann <lars@gtk.org>
1285 * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
1288 Thu Oct 22 02:29:53 1998 Tim Janik <timj@gtk.org>
1290 * gtk/gtkfilesel.h: GtkType and macro fixups
1291 * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
1292 for the file selection widget to try a completion on (set the
1295 Wed Oct 14 14:34:04 1998 Tim Janik <timj@gtk.org>
1297 * gtk/gtkmain.c: implement idle functions via GHook. this gives a
1298 slight speed improvement and lessens code duplication.
1300 Tue Oct 20 14:53:28 1998 Owen Taylor <otaylor@redhat.com>
1302 * gtk/gtkdnd.c: Always send "drag_leave" to dests
1303 without GTK_DEST_DEFAULT_MOTION.
1305 Tue Oct 20 11:55:24 1998 Owen Taylor <otaylor@redhat.com>
1307 * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
1308 on destroyed windows so we clear the XID table properly.
1309 Finish up restructure of return value handling that
1310 was half-done before.
1312 Tue Oct 20 12:57:10 1998 Owen Taylor <otaylor@redhat.com>
1314 * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
1315 the window tree more comprehensively, so that we find
1316 client windows hidden under non-toplevels.
1318 Tue Oct 20 12:43:04 1998 Owen Taylor <otaylor@redhat.com>
1320 * gtk/gtkselection.c (gtk_selection_data_set):
1321 Maintain the null-termintation guarantee, even when
1322 data = NULL, length = 0. (Warn on data = NULL,
1325 Mon Oct 19 16:41:44 1998 Owen Taylor <otaylor@redhat.com>
1327 * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
1328 into function prototype for drag_data_received.
1330 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
1332 * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
1334 Mon Oct 19 23:44:41 1998 Lars Hamann <lars@gtk.org>
1336 * gtk/gtkclist.c: rearranged some functions
1337 (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
1339 (gtk_clist_set_column_resizeable): if resizeable disable auto_resize
1340 (gtk_clist_set_border): deprecated function, use
1341 gtk_clist_set_shadow_type instead.
1342 (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
1343 (adjust_scrollbars): some cleanups
1344 (select_row) (unselect_row): removed. replaced by equivalent
1345 gtk_signal_emit calls
1346 (add_style_data): removed, use gtk_clist_style_set instead
1347 (gtk_clist_style_set): fill in size data, after style was set.
1348 (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
1349 (gtk_clist_set_cell_style): auto_resize columns if needed
1350 (column_auto_resize): resize column if needed for auto_resize
1351 (real_clear): disable auto_resize while list destroy
1352 (resize_column): removed
1354 * gtk/gtkctree.c : (gtk_ctree_remove_node)
1355 (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
1356 (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
1357 (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
1358 (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
1359 (real_tree_collapse) (real_tree_expand) (column_auto_resize):
1360 auto_resize columns if needed
1361 (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
1362 (real_clear): disable auto_resize while processing the tree
1364 * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
1367 Mon Oct 19 08:31:36 1998 Owen Taylor <otaylor@redhat.com>
1369 * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
1370 typo - look for right atom on transfer failures.
1372 Sun Oct 18 20:52:22 1998 Owen Taylor <otaylor@gtk.org>
1374 * gtk/gtkwidget.c gtkmarshal.list: Change signal
1375 for drag_data_get to match the use that was being
1376 made of it everywhere else...
1378 Sun Oct 18 18:16:39 1998 Owen Taylor <otaylor@gtk.org>
1380 * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
1381 mechanism, that is used for the DND messages.
1383 Removed all the old DND code.
1385 * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
1386 get the visual of a given colormap.
1388 * gtk/gtkcolorsel.c: Conversion to new DND, drag
1391 * gdk/gdk.h gdk/gdkdnd.c: The low-level
1392 X oriented portions of drag and drop protocols.
1393 Sending and receiving client messages, and navigating
1396 * gdk/gdkimage.c: added a gdk_flush() when destroying
1397 SHM images to hopefully make it more likely that
1398 X will gracefully handle the segment being destroyed.
1400 * gdk/gdkprivate.h gtk/gtkdebug.h: Add new
1401 DND debugging flags.
1403 * gtk/gtkeditable.[ch]: Updates for the selection handling
1406 * gtk/gtkselection.[ch]: Added GtkTargetList, a
1407 refcounted data structure for keeping track of lists
1408 of GdkAtom + information. Removed selection_handler_add
1409 in favor of a "drag_data_get" signal.
1411 * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
1412 dependent) parts of the DND protocols, display of drag icons,
1413 drag-under highlighting, and the "default handlers".
1415 * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
1416 windows that are used for reliable pointer grabs and
1417 selection handling in the DND code.
1419 * gtk/testdnd.c: New test program for new DND. (Old
1420 DND tests in testgtk still need to be converted.)
1422 * gtk/testselection.c: Use the new selection API.
1424 * docs/dnd_internals: Start at describing how
1425 all the new code works inside.
1427 * docs/Changes-1.2.txt: New file describing source-incompatible
1428 changes in GTK+-1.2.
1430 Sat Oct 17 22:50:34 1998 Owen Taylor <otaylor@gtk.org>
1432 * gdk/gdkwindow.c (gdk_window_remove_filter): Free
1433 the right list node.
1435 * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
1436 to the XID table so we can receive events on it.
1438 Wed Oct 14 12:57:40 1998 Owen Taylor <otaylor@redhat.com>
1440 * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
1441 to get the timestamp from a generic event.
1443 Fri Oct 9 13:16:04 1998 Owen Taylor <otaylor@redhat.com>
1445 * gtk/gtkwidget.c (gtk_widget_add_events): Added function
1446 that safely adds additional events to a widget's event
1447 mask, even if the widget has previously been realized.
1448 (We can do this, but not remove events from the event
1451 Fri Oct 2 17:35:35 1998 Owen Taylor <otaylor@redhat.com>
1453 * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
1454 for AnyPropertyType.
1456 Fri Oct 2 10:32:21 1998 Owen Taylor <otaylor@redhat.com>
1458 * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
1461 Thu Sep 24 20:33:54 1998 Owen Taylor <otaylor@redhat.com>
1463 * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
1466 Thu Sep 17 14:23:03 1998 Owen Taylor <otaylor@redhat.com>
1468 * gdk/gdk.c (gdk_event_translate): Removed printing
1469 of unknown window lookup warnings. (Made it
1470 a GDK_NOTE) - they happen in many circumstances.
1472 Tue Sep 8 12:38:43 1998 Owen Taylor <otaylor@redhat.com>
1474 * Call XFilterEvent() on events we get for unknown
1475 windows, since it may be the window Xlib uses to
1476 communicate with the IM.
1477 (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
1479 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
1481 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
1484 Thu Aug 27 12:03:14 1998 Owen Taylor <otaylor@redhat.com>
1486 * gtk/gtksignal.c (gtk_signal_newv): Improve warning
1487 message for return_value + GTK_RUN_FIRST.
1489 1998-10-18 Martin Baulig <martin@home-of-linux.org>
1491 * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
1492 line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
1494 Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org>
1496 * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
1497 styles of inserted row
1498 (change_style): change style of focus_row
1500 * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
1501 (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
1502 to set/get row/cell styles.
1503 (gtk_clist_realize): attach row and cell style, allocate row colors.
1504 (gtk_clist_unrealize): detach row and cell styles.
1505 (get_cell_style): new function. get correct cell style.
1506 (draw_cell_pixmap): new function.
1507 (draw_row): draw cells with row or cell styles.
1508 (row_new): set cell and row styles to NULL.
1509 (row_delete): detach & unref cell and row styles.
1511 * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
1512 new functions to attach/detach styles and allocate colors.
1513 (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
1514 styles of invisible nodes.
1515 (draw_cell_pixmap): new function.
1516 (get_cell_style): new function. get correct cell style.
1517 (gtk_ctree_draw_expander): new function. draw tree expander.
1518 (gtk_ctree_draw_lines): new function.draw tree lines.
1519 (draw_row): draw cells with row or cell styles.
1520 (row_new): set cell and row styles to NULL.
1521 (row_delete): detach & unref cell and row styles.
1522 (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
1523 (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
1524 Analogons of GtkCList functions
1525 (gtk_ctree_set_spacing): new function. set spacing between
1526 tree expander and cell contents
1527 (gtk_ctree_set_expander_style): new function. set expander style
1529 (ctree_is_hot_spot): few changes due to draw_row modifications.
1531 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
1533 * gtk/gtkcombo.c: try completion on MOD1-TAB.
1534 Handle case when the combo->list is empty.
1536 Mon Oct 12 07:51:34 1998 Tim Janik <timj@gtk.org>
1538 * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
1539 handlers that have not yet been disconnected (finally managed to
1540 trigger the gtk_signal_handler_unref() paranoid warning).
1542 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1544 * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
1545 width and height which is -1 and not -2.
1547 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
1550 * autogen.sh: we need libtool 1.2b now
1552 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1554 * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
1555 and bottom attach arguments as mandatory and readjust the table size
1556 and opposing edge accordingly if required. this way the order in which
1557 the arguments are set doesn't matter.
1559 Thu Oct 8 15:53:59 1998 Owen Taylor <otaylor@redhat.com>
1561 * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
1562 message to print out parent class name correctly.
1564 Thu Oct 8 07:07:10 1998 Tim Janik <timj@gtk.org>
1568 removed functions gtk_object_set_data_destroy and
1569 gtk_object_set_data_destroy_by_id.
1570 added functions gtk_object_remove_no_notify and
1571 gtk_object_remove_no_notify_by_id which will remove a certain data
1572 portion without invokation of its destroy notifier, this should only
1573 be used in very controled circumstances.
1575 Wed Oct 7 23:59:37 1998 Lars Hamann <lars@gtk.org>
1577 * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
1578 size_allocate_title_buttons call
1579 (gtk_clist_realize): changed initial column.window position
1581 Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
1583 * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
1585 * gtk/gtkctree.c (create_xor_gc): removed
1586 (gtk_ctree_button_press): set correct line_attributes for
1587 clist->xor_gc on drag start
1588 (gtk_ctree_button_release): reset clist->xor_gc
1590 Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
1593 * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
1594 which were in place to fixup emacs' cc-mode indentation.
1595 putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
1596 proper way to achive this and doesn't produce problems for
1597 stupid pragma-related compiler bugs. ;)
1599 Wed Oct 7 00:59:46 1998 Lars Hamann <lars@gtk.org>
1601 * gtk/gtkclist.h: new signal GtkCList::resize_column.
1602 * gtk/gtkclist.c (draw_row): don't draw invisible columns
1603 (size_allocate_title_buttons) (size_allocate_columns):
1604 skip invisible columns
1605 (new_column_width): take min/max_width into account
1606 (gtk_clist_button_release) (gtk_clist_motion):
1607 changes due to changed new_column_width function
1608 (LIST_WIDTH): changed define to inline function.
1609 (real_resize_column): class function for resize_column signal
1610 (gtk_clist_motion): fixed autoscrolling for column resizes
1611 (gtk_clist_set_column_visibility): don't hide last visible column,
1612 changed visible arg to gboolean
1613 (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
1614 new functions : set min/max width of a column
1615 (gtk_clist_set_column_resizeable): new function : enable/disable
1616 column resize operations by mouse
1618 * gtk/gtkctree.c (draw_row): don't draw invisible columns
1619 (ctree_is_hot_spot): return FALSE if tree_column is invisible
1620 (draw_xor_line) (draw_xor_rect): draw full rectangle/line if
1621 tree_column is invisible
1622 (gtk_ctree_find_all_by_row_data)
1623 (gtk_ctree_find_all_by_row_data_custom): new function from
1624 Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
1625 GtkCTreeNodes with row->data == data.
1627 Tue Oct 6 14:05:00 1998 Tim Janik <timj@gtk.org>
1629 * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
1630 memory (Martin Pool <mbp@wistful.humbug.org.au>).
1632 Mon Oct 5 15:26:30 1998 Raph Levien <raph@gimp.org>
1634 * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
1635 should have been guint32. Thanks to Tristan Colgate for finding it.
1637 Sun Oct 4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1639 * gtk/gtkcalendar.h:
1640 gtk/gtkcalendar.c: More changes:
1641 - The day with focus is now seperated from the day selected
1642 - The day with focus has the xor's line around it
1643 - The selected day is now standard selected style
1644 - The week names and week numbers are now also drawn
1646 - Space now selects the day which has focus
1648 Sun Oct 4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1650 * gtk/gtkcalendar.h:
1651 gtk/gtkcalendar.c: Some significant changes, including:
1652 - No longer draw focus around entire widget, only around
1653 the day which has focus
1654 - Draw relief around entire widget like originally planned
1655 - Show header and day names by default
1656 - Move data private to the widget out of GtkCalendar struct
1657 and only point to it with a gpointer
1658 - Remove some old unused variables from GtkCalendar struct
1660 Sun Oct 4 17:45:43 BST 1998 Tony Gale <gale@gtk.org>
1662 * docs/gtk_tut.sgml: update I've had sat around:
1663 - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
1664 - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
1665 - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
1667 1998-10-01 Martin Baulig <martin@home-of-linux.org>
1669 * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
1671 * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
1672 Makes it possible to individually show and hide columns.
1673 (size_allocate_columns): Adapted to keep track of hidden columns.
1674 (size_allocate_title_buttons): Likewise.
1676 Sat Oct 3 17:54:48 1998 Tim Janik <timj@gtk.org>
1678 * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
1679 fundamental types, collect an argument of the type returned from
1680 gtk_type_get_varargs_type(). removed the first macro argument which
1681 was just the same as the fundamental type of the *arg passed to
1683 * gtk/gtkarg.c (gtk_args_collect):
1684 * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
1686 * gtk/gtktypeutils.h:
1687 * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
1688 gtk_type_get_varargs_type() to set and query the varargs collect
1689 type used for a fundamental type, registered outside of Gtk.
1691 * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
1692 GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
1695 * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
1696 GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
1699 Sat Oct 3 01:25:24 1998 Lars Hamann <lars@gtk.org>
1701 * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
1702 (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
1703 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
1705 (real_tree_expand) (real_tree_collapse):
1706 don't expand/collapse a leaf
1708 Fri Oct 2 16:10:36 1998 Tim Janik <timj@gtk.org>
1710 * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
1711 segfault when looking up a non-existant value name (reported by
1712 Pablo <pcj+gtk@primenet.com>).
1714 Thu Oct 1 10:40:20 1998 Tim Janik <timj@gtk.org>
1716 * gtk/gtkclist.h (gtk_clist_prepend):
1717 * gtk/gtkclist.c (gtk_clist_prepend): new function.
1718 (gtk_clist_insert): added g_return_val_if_fail()
1719 statements. accept a row parameter < 0 or > clist->rows to indicate
1721 (real_clear): first clean up all internal pointers and lists (e.g.
1722 clist->row_list or clist->rows), then delete the distinct rows. this
1723 is required because of destroy notifiers, we need to have all internal
1724 structures updated and be reentrant.
1726 * gtk/gtkcalendar.h:
1727 * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
1728 GtkCalendarClass signal methods.
1729 GtkType and macro fixups, put `void' into () prototypes, avoid C++
1730 style comments, indentation fixes, fixed some g_return_if_fail()
1732 (gtk_calendar_paint_header):
1733 (gtk_calendar_paint_day_names):
1734 (gtk_calendar_paint_week_numbers):
1735 (gtk_calendar_paint_main): made these static functions.
1736 (gtk_calendar_select_month):
1737 (gtk_calendar_select_day):
1738 (gtk_calendar_mark_day):
1739 (gtk_calendar_unmark_day):
1740 (gtk_calendar_get_date): signedness corrections, use guints
1742 (gtk_calendar_size_request): removed unused variables.
1744 Wed Sep 30 13:11:09 1998 Tim Janik <timj@gtk.org>
1746 * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
1747 widgets in the ->widgets_by_action list that have a callback
1748 defined (not only those with a callback_action!=0).
1750 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1752 * gtk/gtkcalendar.h:
1754 examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
1756 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1758 * gtk/gtkcalendar.h:
1760 examples/calendar: Added gtkcalendar widget and demo
1762 Sat Sep 26 06:15:34 1998 Tim Janik <timj@gtk.org>
1764 * gtk/gtkclist.c (gtk_clist_sort):
1766 (gtk_clist_unselect_all):
1767 (gtk_clist_select_all): adde g_return_if_fail() statements.
1769 Sat Sep 26 04:46:22 1998 Tim Janik <timj@gtk.org>
1771 * configure.in: set binary age and interface age to 0.
1773 * gtk/gtkspinbutton.h:
1774 * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
1775 gtk_spin_button_configure. gtk_spin_button_construct is still defined
1776 as an alias for gtk_spin_button_configure for source compatibility,
1777 but actuall use is deprecated.
1778 typeness corrections, i.e. gint->gboolean and gint->guint.
1779 added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
1780 GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
1781 GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
1782 GtkSpinButton::adjustment, GtkSpinButton::digits and
1783 GtkSpinButton::climb_rate.
1784 GtkType and macro fixups.
1786 Sat Sep 25 23:33:55 1998 Tim Janik <timj@gtk.org>
1788 * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
1789 the *real* geometry position of a window, taken possible window
1790 manager offsets into account.
1791 this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
1792 olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
1793 it does fail though for amiwm which adds windows to a pseudo root
1794 window, and for icewm by a small offset because it defines the
1795 geometry position whithin its border.
1797 * gtk/testgtk.c: added "saved position" test to figure how
1798 gdk_window_get_root_origin() interacts with window managers (repopup
1799 this window to figure ;).
1801 Wed Sep 23 06:09:19 1998 Tim Janik <timj@gtk.org>
1803 * configure.in: update to Gtk+ version 1.1.3, binary age 1,
1808 (gtk_object_unref): check for ->ref_count to be greater than 0 (the
1809 existing code was buggy in letting ->ref_count==0 pass through and
1810 then failing the living_objs_ht assertion).
1812 * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
1813 pixtext fields (Roman Pozlevich <roma@botik.ru>).
1815 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1817 * Released GTK+ 1.1.2
1819 Mon Sep 21 01:12:44 1998 Jay Cox (jaycox@earthlink.net)
1821 * gtk/Makefile.am: use $(PERL) instead of perl
1822 * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
1823 also much faster to render.
1825 Mon Sep 21 07:44:30 1998 Tim Janik <timj@gtk.org>
1827 * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
1828 the required memory block, rather than allocating it newly from
1829 scratch and doing a full-blown block copy on it.
1831 Mon Sep 21 02:30:06 1998 Tim Janik <timj@gtk.org>
1833 * NEWS file update for upcoming release of Gtk+ version 1.1.2,
1834 binary age 0, interface age 0.
1836 * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
1838 Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com>
1840 * ltmain.sh: Patch to libtool-1.2b to make --disable-static
1843 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
1845 * HACKING: indent other than GNU indent should be OK
1848 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
1849 instead of piping through indent. If indent wasn't
1850 found in ./configure don't bother indenting at
1853 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
1855 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
1857 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
1859 * gtk/Makefile.am: use $(AWK) instead of awk
1861 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
1863 * gtk/Makefile.am (gdk_headers):
1864 Remove references to $(top_srcdir).
1865 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
1866 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
1868 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
1870 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
1871 GData*object_data to cure compiler warnings.
1873 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
1877 * mkinstalldirs: updated to latest automake version
1879 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
1881 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
1882 (gtkinclude_HEADERS): ... here.
1883 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
1885 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
1887 * HACKING: added GNU indent, as it is now required to successfully
1888 build gtk+. Should this be detected in autoconf, possibly?
1890 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
1892 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
1893 change library versioning scheme to drop LT_RELEASE
1894 from the -l line, while keeping it in the soname.
1896 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
1898 * configure.in Makefile.in: define a MAINT-like variable REBUILD
1899 which is set if Perl and awk are found, and autogenerated sources
1900 can be rebuilt. Remove the auto-generated sources from
1903 Add dependencies so that the autogenerated sources are
1904 rebuilt if the files they depend on change.
1905 (This unfortunately currently results in the entire
1906 gtk/ directory being rebuilt when any header changes.
1907 Moving all enums to gtkenums.h would fix this.)
1909 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
1911 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
1912 gtk_object_set_data_destroy_by_id functions to set the destroy
1913 function pointer for an existing data portion.
1915 * gtk/gtkobject.c: removed the GtkObjectData implementation and
1916 made all gtk_object_*data* functions use the GLib equivalents.
1918 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
1920 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
1921 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
1922 (widget != NULL), otherwise radio button insertion will not work
1923 -- the widget argument is NULL for the first radio button in the
1926 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
1928 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
1929 of g_new to malloc(), added back in the one place where
1930 it actually mattered. #include <stdlib.h>.
1932 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
1934 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
1936 * gtk/gtkfilesel.c: Keep a list of directories in which we never
1937 want to stat the entries (like /afs), and assume everything in
1938 those directories is a subdirectory.
1940 - When following a path, try to open components even when
1941 we don't find them in their parent's directory to
1942 support automounters.
1944 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
1946 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
1947 a new size from the WM if we asked for the same size
1948 before and our request was rejected.
1950 * gtk/gtkwindow.c (gtk_window_configure_event): If
1951 in response to a request, we get a configure event
1952 with unchanged dimensions, send a synthetic expose
1953 since ForgetGravity won't expose our window.
1955 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
1957 * gtk/gtktext.c (adjust_adj): Change the way we
1958 set the adjustments on resize so that it tries to
1959 keep the beginning of the text in approximately
1962 Removed assertion that the above change made invalid.
1964 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
1966 * gtk/gtktext.c: - Save first_cut_pixels when switching
1967 sizes, so that if we switch to the _same_ size,
1968 we don't move lines around.
1970 - Make sure that the text area always has a size of at
1971 least 1x1, then do all computations when realized.
1973 - When fetching lines in recompute_geometry, make
1974 sure we fetch enough lines to cover the screen.
1976 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1978 * gdk/gdkimage.c: changed g_new()s to malloc()s and
1979 g_free()s to free()s to avoid mixing g_new()s with
1980 free()s. X itself uses free() on some of the
1983 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
1985 * gtkfilesel.c: Maintain a list of directories like
1986 /afs we know contain only directories, and avoid
1987 stat'ing files in those directories. (Because
1988 stat'ing all files in /afs is extremely expensive)
1990 To support automounters, try to open directories,
1991 even if we couldn't find them when reading their
1994 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
1996 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
1997 to allow the same gtk.m4 to work for 1.0.x and
2000 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
2002 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
2003 to set/unset the selectable flag of a single row.
2004 (gtk_clist_get_selectable): new function
2005 to get the state of the selectable flag
2007 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
2008 (gtk_ctree_node_get_selectable): clist analogons
2010 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
2012 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
2015 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
2016 bugs in the 4bit gray cases.
2018 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
2020 * configure.in: added -posix check for NeXTStep
2022 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
2023 a unique buffer for each thread.
2025 * docs/gtk-config.1: clarified copyright
2027 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
2029 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
2031 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
2033 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
2036 * ltconfig: use GLib's ltconfig which honours lcc.
2038 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
2040 * configure.in: comment the -std1 check and save LIBS properly
2042 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
2044 * gtk/testrgb.c: #include <stdlib.h>
2046 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
2048 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
2049 When the pointer is grabbed on an input window,
2050 either explicitely, or through press-grab, and
2051 then grabbed on a non-input window, ungrab the
2054 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
2056 * gtk/gtktypeutils.h: don't include any gdk headers.
2057 added structure definitions for GtkTypeObject and GtkTypeClass,
2058 which cover the very basic fields of GtkObject and GtkObjectClass,
2059 which are actually used by the type system.
2061 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
2062 we only refer to our own structures. improved class inheritance
2063 sanity checking a bit.
2065 * gtk/gtkobject.h: placed appropriate comments at the beginnings
2066 of the GtkObject and GtkObjectClass structures, which explain
2067 their relationship to GtkTypeObject and GtkTypeClass.
2069 * gtk/gtktypeutils.h:
2071 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
2072 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
2073 gtkobject.h to gtktypeutils.h.
2077 removed gtk_object_check_cast() and gtk_object_check_class_cast()
2078 functions. to keep source compatibility, we can provide macro aliases
2079 for the corresponding gtk_type_* functions. but then again, people
2080 shouldn't have been using these functions anyways since they were part
2081 of Gtk's internal API.
2083 * gtk/gtktypeutils.h:
2084 * gtk/gtktypeutils.c:
2085 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
2086 functions to check GtkTypeObject and GtkTypeClass types.
2088 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
2091 * gtk/gtkctree.c: `const' fixups.
2094 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
2096 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
2097 if it is passed as NULL.
2099 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
2101 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
2102 big-endian cases. Added a 4bpp packed gray mode (somewhat
2103 incorrectly hardwired to MSB), which should take care of
2106 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
2108 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
2109 GtkSIgnalQuery leak.
2111 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
2113 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
2114 GTK_MENU_DIR_CHILD: check for the existance of
2115 menu_shell->active_menu_item before accessing its child.
2117 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
2118 don't, make a default selection.
2120 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
2122 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
2123 the children with _forall for sensitivity changes and with
2124 _foreach on pure state changes. this fixes a lot of the
2125 old inclusions of internal widgets into _foreach calls.
2127 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
2128 do the work. don't walk the subtrees of first level children.
2130 * gtk/gtktreeitem.c: provide a _forall implementation,
2131 which walks the subtrees as well for include_internals.
2133 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
2134 the submenus as well for include_internals.
2136 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
2137 implemented gtk_scrolled_window_forall, which will iterate over
2138 the viewport and the scrollbars for gtk_container_forall or
2139 iterate over the viewports children for gtk_container_foreach.
2145 * gtk/gtkmenushell.c:
2151 * gtk/gtknotebook.c:
2152 removed the old gtk_*_foreach functions and provided gtk_*_forall.
2154 * gtk/gtknotebook.c:
2155 (gtk_notebook_real_switch_page): expose tabs.
2156 (gtk_notebook_page_num): new function to return the page number
2157 of a distinct child.
2158 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
2159 under some circumstances.
2161 * gtk/gtktreeitem.c:
2162 (gtk_real_tree_item_select):
2163 (gtk_real_tree_item_deselect): major fixes.
2164 some general fixups wrt queue_redraw, and tree items not being
2167 * gtk/gtklistitem.c:
2168 (gtk_real_list_item_select):
2169 (gtk_real_list_item_deselect):
2170 (gtk_real_list_item_toggle):
2171 removed unneccessary queue_redraw calls.
2173 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
2175 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
2176 automatically popup the menu on space bar.
2178 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
2180 * gtk/gtkcontainer.h:
2181 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
2182 method), which acts similar to gtk_container_foreach(), but iterates
2183 over internal children. the GtkContainer::foreach signal vanished in
2184 favour of a new class method ->forall() that optionally includes
2187 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
2188 but a _forall implementation, since all child widgets we have are
2190 (column_button_create): set the parent window prior
2191 to gtk_widget_set_parent().
2194 exchanged all calls to gtk_container_foreach() with
2195 gtk_container_forall().
2198 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
2199 the GtkWidget::composite_child argument. to have a widget created
2200 with the flag initially, two new functions got added to wrap a widgets
2202 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
2204 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
2206 * gtk/gtktooltips.h:
2207 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
2208 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
2209 prior to the first tip being set.
2210 don't put an extra reference on the window, since it is a toplevel,
2211 it wont get destroyed from anywhere else.
2213 * overall macro and GtkType fixups.
2215 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
2217 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
2218 constructs by more forgiving ones. (Does anyone else feel like
2219 the color selector need rewriting?).
2221 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
2223 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2226 * gtk/gtkmenu.c: Modified reference counting so
2227 that the reference count from the toplevel that
2228 the menu creates to the menu is invisible to the
2231 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
2233 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
2234 conversion selection logic, so Suns and other big-endian
2235 machines should get faster conv routines. This is also the
2236 point where 4bpp gray and 1bpp are checked in, although I
2237 wouldn't be surprised if 1bpp is a little buggy. This is
2238 synchronized with the 0.0.7 release of GdkRgb.
2241 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
2242 appropriate change to the Makefile.am
2244 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
2246 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
2247 which is good for images that scroll (makes the dither patterns
2250 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
2253 (gdk_colormap_new) (gdk_colormap_get_system):
2254 quell some warnings with g_hash_table_new
2256 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
2257 when we're done with it
2259 * gtk/itemfactory.c:
2260 (gtk_item_factory_from_path):
2261 (gtk_item_factory_create_item): free some strings
2264 (gtk_label_finalize): free label->pattern when done
2265 (gtk_label_parse_uline): null terminate pattern string, delete
2266 some duplicated code
2268 * gtk/testthreads.c: add #include <unistd.h> for sleep()
2270 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
2272 * gtk/gtktext.c (recompute_geometry): Make sure the
2273 mark we pass to line start is the beginning of a
2274 real line, not a wrapped one.
2276 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
2278 * gtk/gtktext.c: Reference count the fonts used in
2281 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
2282 freeing functions to be more consistent, and more
2283 convenient; leave the old names in for backwards compatibility.
2285 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
2286 allocations in pseudo-color colormaps to greatly reduce
2287 calls to XAllocColor. Keep a per-colormap hashtable to
2288 speed up finding if there is an already-allocated matching
2291 * gdk/gdkcolor.c: Don't just match read the system colormap
2292 when the colormap is created, but synchronize our copy
2293 with the system colormap periodically.
2295 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
2296 Change XIM constants names to match GDK conventions
2298 * gtk/testinput.c: Allow the drawing area to get the focus.
2300 * gtk/testgtk.c: Change around the Text test to demonstrates
2301 multiple fonts, use more colors.
2303 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
2304 so they work after a widget is unrealized.
2306 * gtk/gtktext.[ch]: Remove the requirement that the text
2307 widget be realized before adding text (!) Allocate colors
2308 ourself, instead of requiring the caller allocate them.
2309 Allow changing styles to work properly by keeping track
2310 of the values for a certain property are default or
2313 * gtk/gtkmenu.h: Added some comments.
2315 * gtk/gtkentry.c: Changes to match XIM constants.
2317 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
2318 for adding keyed data to drawables. (Uses g_dataset
2321 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
2322 when creating an XPM - store them as user data for the GdkPixmap,
2323 so we don't leak colors when we create pixmaps from XPM's.
2325 Allocate memory for color information in large blocks instead of
2326 as many little pieces.
2328 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
2330 * gdk/gdkrgb.c: removed some unused variables
2333 * gtk/gtkmain.c: #if 0'd out some unused code
2335 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
2337 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
2345 * gtk/gtkcontainer.h:
2346 * gtk/gtkcontainer.c:
2351 (gtk_container_add_with_args):
2352 (gtk_container_child_set):
2353 begin the parameter elipsis (...) after the first argument name. this
2354 change is source compatible, since it was always required, even as NULL.
2356 (gtk_object_args_collect):
2357 (gtk_container_child_args_collect):
2358 changed prototypes to pass first_arg_name, also, pass va_list variable
2359 by value (portability concerns). callers changed.
2361 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
2362 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
2363 can't pass va_list variables by reference for portability reasons.
2365 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
2367 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
2368 get_visual calls, so that it gets implicitly initialized.
2370 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
2371 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
2372 such as GtkCTree function name changes
2374 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
2377 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
2378 binary version check, returning a static string for error descriptions,
2381 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
2383 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
2384 computed our geometry yet, and if not, ignore the request.
2386 * gtk/gtktext.c (correct_cache_insert): Fiddled around
2387 some more. All the bug-test codes seem to work at once
2388 now. (fingers crossed...)
2390 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
2392 * gdk/gdkrgb.c: silly visual fixes
2394 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
2397 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
2399 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
2400 anything if the event's window is not the bin window.
2401 (gtk_handle_box_motion): Likewise.
2403 1998-08-19 Raph Levien <raph@gimp.org>
2405 * gtk/testgtk.c (create_color_preview): pushed the colormap and
2406 visual so it would work better with GdkRgb.
2408 1998-08-19 Raph Levien <raph@gimp.org>
2410 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
2411 4bpp static_color mode (for vga displays). Also fixed a '64' value
2412 in the dither matrix, which was causing one pixel out of 16k to be
2415 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
2416 most of the contents. This is an API change - any apps that relied
2417 on the internal structure of GtkPreview will need some change -
2418 most notably in the use of reserved colors. The Gimp needed
2419 changes in this regard.
2421 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
2423 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
2424 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
2425 --g-fatal-warnings), noticed by miguel.
2427 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
2429 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
2437 * gtk/gtkitemfactory.c:
2438 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
2440 * gtk/gtkselection.c:
2444 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
2446 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
2448 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
2450 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
2451 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
2452 in case of show_tabs == NULL
2454 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
2456 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
2457 to --g-fatal-warnings again. this option now causes log levels of
2458 WARNING and CRITICAL to abort().
2467 * gtk/gtktypeutils.c:
2473 * gtk/gtkselection.c:
2476 * gtk/gtktreeitem.c:
2477 did a global search&replace to substitute g_print() calls with
2478 g_message(). libraries shouldn't use printf(), g_print() or
2479 g_printerr() at all.
2480 a bunch of the replacements should probably be wrapped into the
2481 G{D|T}K_NOTE() macros, so they are special cased for debugging
2482 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
2485 * gdk/gdkdnd.c: added copyright notice.
2487 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
2489 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
2490 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
2491 running a PII 233. It's synced with the 0.0.5 release of
2494 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
2497 (struct _GtkCListClass): new class methods:
2498 (sort_list) (insert_row) (remove_row) (set_cell_contents)
2501 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2502 removed and replaced by (set_cell_contents)
2503 (set_cell_contents): function for class method set_cell_contents
2504 (real_insert_row): function for class method insert_row
2505 (real_remoce_row): function for class method remove_row
2506 (real_sort_list): function for class method sort_list
2507 (default_compare): fix to avoid problems with cell types != CELL_TEXT
2510 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
2511 (gtk_ctree_node_is_visible): new function to return visibility state
2513 (gtk_ctree_show_stub): new function to set visibility of root stub
2516 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
2517 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
2518 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
2519 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
2520 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
2521 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
2522 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
2523 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
2524 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
2525 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
2526 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
2527 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
2528 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
2529 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
2530 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
2531 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
2532 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
2533 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
2534 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
2537 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2538 removed and replaced by (set_cell_contents)
2539 (set_cell_contents): function for class method set_cell_contents
2540 (real_insert_row): function for class method insert_row
2541 (real_remoce_row): function for class method remove_row
2542 (real_sort_list): function for class method sort_list
2543 (default_compare): removed. CTree now also compares two GtkCTreeRows
2544 instead of two GtkCTreeNodes.
2545 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
2547 (real_tree_expand) (real_tree_collapse): fix for refcounting of
2549 (set_node_info): call gtk_ctree_node_set_pixtext instead of
2550 manipulating the row itself
2552 * gtk/testgtk.c: use renamed functions of GtkCTree.
2553 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
2556 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
2558 * gtk/gtkmain.c: removed gtk_input_add_interp.
2560 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
2562 (gtk_editable_get_event_time): fix default: case.
2564 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
2566 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
2569 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
2572 * various minor compilation cleanups, such as bogus commas in
2573 enums and similar things.
2575 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
2577 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
2580 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2582 * NEWS: updated for 1.1.2
2583 * gtk+.spec: version = 1.1.2
2585 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
2587 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
2588 times. changed --gtk-with-module to --gtk-module at owen's request.
2590 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
2592 * gtk/gtkmain.c (gtk_init): feature a new commandline option
2593 --gtk-with-module=<module> that allows additional loading and
2594 initialization of modules (e.g. GLE).
2596 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
2598 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
2599 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
2601 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
2602 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
2603 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
2604 different *-fatal-* arguments now. this needs to be revised and
2605 compressed to a reasonable amount of arguments.
2607 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
2609 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
2610 "--g-fatal-warnings" causes fatal warnings in GLib,
2611 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
2612 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
2614 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
2615 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
2619 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
2620 since automake doesn't support per target _CFLAGS yet.
2622 * configure.in: require GLib 1.1.3.
2624 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
2626 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
2627 to set a callback to test if a node in drag can be dropped onto
2628 it's currrent location.
2629 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
2630 to change the pointer when a drag destination is not allowed.
2632 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
2634 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
2635 speeds up the 565_d case by about 25% total. Thanks Ray!
2637 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
2639 * Changed GtkSignalFunc back to () from (void). (again!)
2641 * Added file README.cvs-commits
2643 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
2645 * docs/gtk_tut.sgml:
2646 - Tidy up of the menufactory example from
2647 Andy Kahn <kahn@zk3.dec.com>
2648 - New section on Range Widgets from
2649 David Huggins-Daines <bn711@freenet.carleton.ca>
2650 - Started a new section on 'Advanced Event and Signal
2651 Handling' - used an email from Owen.
2652 - New appendix on Gdk Event Types
2653 - Added the tictactoe full example code to the
2654 'Code Examples' appendix
2656 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
2658 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
2659 to calculate all the metrics at once of a string, including
2660 things which weren't calculated before.
2662 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
2663 MenuItem type, that when put as the first thing in a
2664 menu, makes the menu tearoff. Currently drawn as a
2667 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
2668 "hide_on_activate" to the MenuItem class structure to allow
2669 check and radio buttons to be changed with <Space> without
2672 * gtk/gtkitemfactory.c:
2673 - Create a AccelGroup for each MenuShell we create.
2674 - If an '_' appears before a character 'c' in the path,
2675 then make 'c' an accelerator in the menu's accel group,
2676 and if the menuitem is menubar <alt>C an accelerator
2677 in the itemfactory's accel group. Double '__' inserts
2680 * gtk/gtklabel.[ch]: Add support for a pattern arg -
2681 which is a string. If an '_' appears in this string,
2682 the corresponding position in the label is underlined.
2684 Add gtk_label_parse_uline() convenience function which
2685 takes a string with embedded underlines, sets the
2686 pattern and label, and returns the accelerator keyval.
2688 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
2689 Instead, they create a GtkWindow and add themselves
2690 to that. (When torn off, another new feature, they
2691 create another GtkWindow to hold the torn off menu)
2693 New function gtk_menu_set_tearoff_state()
2695 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
2696 Added action signals for keyboard navigation of menus.
2698 * gtk/gtkmenushell.c: Key press handler which activates
2699 bindings for navigation, and accelerators, for handling
2700 underline accelerators. Exported functions to select
2701 and activate menu items in a menushell.
2703 * gtk/testgtk.c: Added a new "Item Factory" test which
2704 tests GtkItemFactory and the new keyboard navigation
2707 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
2709 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
2710 external functions have been called. also relookup nodes after
2711 this function has been invoked.
2713 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
2715 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
2716 beginning of Text when creating the Text widget.
2718 * gtk/testgtk.c: Grab the focus on the text widget so
2719 as to test out the above.
2721 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
2723 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
2724 ::changed is a notification signal and should have no default
2725 handler. A complete redraw of the Text widget does _not_ need to
2726 be done on every text insertion.
2728 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
2729 (gtk-abilleira-072198-patch)
2731 * gtk/gtkwindow.[ch]:
2732 Add gtk_window_set_modal() which sets a flag; when
2733 set the window does a gtk_grab_add() when the window
2734 is shown, and a gtk_grab_remove() when the window
2737 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
2738 that case will run "Create Dir","Delete File" and "Rename File"
2739 dialogs as modal too.
2741 * gtk/testgtk.c: Added a button with an example of creating modal
2742 dialog boxes. Including file selection and color selection standard
2745 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
2747 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
2748 Removed CAN_FOCUS by default from scrollbars, button
2749 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
2750 (Scrollbar definitely good change, toolbar bit more questionable)
2752 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
2754 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
2757 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
2759 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
2760 added all logical operations to gc->function.
2762 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
2764 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
2765 gtk_widget_size_allocate instead of gtk_widget_queue_resize
2766 if the visibility state of a scrollbar changes.
2768 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
2770 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
2772 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
2774 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
2775 gtk_clist_merge and gtk_clist_mergesort. :)
2777 1998-08-06 Martin Baulig <martin@home-of-linux.org>
2779 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
2780 `mergesort' -> `my_mergesort'.
2782 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
2784 * gtk/gtkenums.h: new enum GtkSortType.
2788 Added sorting capabilities to GtkCList. New APIs :
2789 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
2790 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
2791 New internal functions : default_compare, merge, mergesort.
2793 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
2795 (gtk_clist_insert): Modified to handle gtk_clist_append and the
2796 auto sort flag. Changed the return value from void to gint to
2797 return the row number where the element was actually inserted.
2799 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
2803 Removed the auto_sort flag, replaced ctree->node_compare with
2804 clist->compare all over the place, modified default_compare to
2805 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
2806 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
2808 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
2809 sorting. The lists can be sorted by a column by clicking the
2810 corresponding title button.
2812 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
2814 * Released GTK+ 1.1.1
2816 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
2820 (gtk_ctree_find): changed to return a gboolean
2821 (gtk_ctree_insert_gnode): new function for recursive insertion of a
2823 (gtk_ctree_real_select_recursive): fix for extended selection
2824 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
2825 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
2827 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
2829 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
2830 GLib version 1.1.1 is now required at minimum.
2832 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
2833 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
2835 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
2837 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
2838 cursor before (possibly) deleting the cursor's text
2841 * gtk/gtktext.c (correct_cache_delete): More attempts
2842 to clean the line-start cache up after inserting
2843 a property. Among other things, make sure to
2844 fix up text->current_line, since it is used to
2845 refetch the changed lines.
2847 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
2849 * gtk/gtktable.[ch]: Empty rows/columns of the table
2850 should not have been marked as being able to shrink.
2851 (Fixes problem with shrinking scrollbarless GIMP canvases)
2853 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
2855 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
2856 function to find a row by its data pointer using a custom
2857 comparison function.
2859 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
2861 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
2862 this fixes a bug when the whole widget is made non-sesitive
2863 the buttons weren't redrawn
2865 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
2867 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
2868 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
2869 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
2871 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
2873 * gdk/gdkwindow.c (gdk_window_reparent): Change
2874 window_private->parent pointer when reparenting.
2876 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
2878 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
2879 with the standalone release.
2881 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
2883 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
2884 (gtk_clist_button_release) (new_column_width): Few fixes for
2885 column resize. Store resize column in clist->drag_pos.
2887 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
2891 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
2892 to GtkCTreeNode *node.
2894 * gtk/gtklist.h : added extended selection mode and auto scrolling.
2895 (struct _GtkList): removed unneeded variables timer, button,
2896 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
2897 Added new variables undo_selection, undo_unselection, last_focus_child,
2898 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
2899 drag_selection, add_mode.
2902 (gtk_list_extend_selection), (gtk_list_start_selection),
2903 (gtk_list_end_selection), (gtk_list_select_all),
2904 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
2905 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
2906 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
2907 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
2910 (gtk_list_enter_notify): removed, because auto scrolling now works
2911 with gtk_list_motion_notify
2913 New functions, needed for auto scrolling :
2914 (gtk_list_motion_notify) (gtk_list_move_focus_child)
2916 New functions for extended selection support :
2917 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
2918 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
2919 (gtk_list_focus_lost)
2921 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
2922 function to support auto scrolling, and avoid out-of-sync errors in
2923 case auf GTK_SELECTION_BROWSE
2924 (gtk_list_focus): modified gtk_container_focus function to avoid out
2925 off sync errors in case auf GTK_SELECTION_EXTENDED
2928 * gtk/gtklistitem.c :
2929 New signal functions for key binding support :
2930 (toggle_focus_row), (select_all), (list_item), (unselect_all)
2931 (list_item), (undo_selection), (start_selection), (end_selection)
2932 (extend_selection), (scroll_horizontal), (scroll_vertical),
2934 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
2935 GDK_KEY_RELEASE_MASK
2936 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
2939 (gtk_combo_popup_button_press): grab pointer for combo->list
2940 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
2941 (gtk_combo_list_key_press): take care of which child HAS_GRAB
2942 (gtk_comb_init): don't connect combo->button with button_release_event
2944 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
2946 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
2948 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
2950 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
2951 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
2952 with horizontal and vertical autoscrolling.
2954 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2956 * gtk/docs/man: new directory
2957 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
2959 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
2961 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
2964 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
2966 * docs/gtk_tut.sgml: GtkTree section from
2967 David Huggins-Daines <bn711@freenet.carleton.ca>,
2968 add a GtkText widget example
2969 * examples/text/* example/tree/* : new examples for the
2970 GtkTree and GtkText widgets
2971 * docs/gtk_tut.sgml: added an appendix to hold complete code
2972 examples that aren't in a full form elsewhere in the
2973 tutorial (e.g. scribble)
2975 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2977 * Released GTK+ 1.1.0
2979 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
2981 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
2982 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
2984 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
2986 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
2987 values are looked up.
2989 * gtk/gtktypeutils.h:
2990 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
2991 gtk_type_enums_find_value to lookup enum values.
2994 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
2995 GtkCTreeExpansionType. fixed signal creations to pass the enum
2996 types not just the base type GTK_TYPE_ENUM.
2999 * gtk/gtkclist.c: fixed signal creations to pass the real enum
3000 types not just the base type GTK_TYPE_ENUM.
3002 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
3005 Began cleanup, e.g. use gtk_widget_show_all instead of many
3006 gtk_widget_show's. Completely rewrote the button box sample
3007 (only one window now). Removed "miscellaneous" button.
3009 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
3011 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
3012 Fixed wrong allocation for GTK_BUTTONBOX_END.
3013 (allocation->x => allocation->y)
3015 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
3017 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
3018 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
3020 * gtk/gtkctree.c (real_tree_select): added check to avoid double
3022 (gtk_ctree_button_press)
3023 (gtk_ctree_button_release): fix for pointer grab
3025 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
3027 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
3028 Fixed initialization problem - dirty memory could cause problems.
3029 Also checked that bitmapped fonts can be scaled when showing the
3032 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
3034 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
3035 (gtk_ctree_sort_recursive): test for node != NULL
3036 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
3037 (gtk_ctree_last) : added sanity checks
3038 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
3040 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
3042 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
3044 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
3046 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
3048 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
3050 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
3051 to check out binding priorities. someone should really write
3052 gtkrc-mode for emacs.
3054 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
3055 * gtk/testgtk.c (main): and move it here ;). this test says something
3056 on release of C-9. (this works only if the mouse pointer is on a
3057 spinbutton and there is no focus widget).
3061 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
3062 gtk_rc_parse_priority to parse path priority types.
3064 feature binding parsing.
3066 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
3068 * gtk/gtkbindings.h:
3069 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
3070 feature binding parsing in rc files.
3071 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
3072 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
3073 order the bindings with lowest priority first.
3075 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
3077 * gdk/gdkrgb.c: actually builds and runs properly on big
3078 endian machines now, because we #include config.h. Also
3079 fixed up a compile error in the WORDS_BIGENDIAN case in
3080 gdk_rgb_convert_565_gray. I made the fix by looking at
3081 patterns in the other code; Raph can you verify this?
3083 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
3086 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
3088 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
3089 (tree_toggle_expansion) (real_select/unselect_row)
3090 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
3092 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
3094 * gtk/gtktext.c (new_text_property): We free things from
3095 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
3097 * Fix up line start cache when splitting a property
3100 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
3102 * gtk/gtkwidget.c: restauration => restoration
3104 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
3106 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
3107 hasn't been created yet, don't do the lookup.
3109 1998-07-20 Raph Levien <raph@acm.org>
3111 * gdk/gdkrgb.c: More cleanups in the config process.
3113 1998-07-20 Raph Levien <raph@acm.org>
3115 * gdkrgb.c: Fixed minor config bug preventing big-endian
3116 architectures from working.
3118 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
3120 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
3121 activity indicator. It is settable now as a fraction of the
3122 total width/height using gtk_progress_bar_set_activity_blocks.
3123 Renamed gtk_progress_bar_set_number_of_blocks to
3124 gtk_progress_bar_set_discrete_blocks.
3126 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
3128 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
3129 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
3130 tree to specified depth
3131 (gtk_ctree_expand_to_depth): expand tree to specified depth
3132 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
3134 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
3136 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
3137 of GTK_CLIST_ADD_MOD
3138 * gtk/testgtk.c (add1000_clist): changed pixmap
3140 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
3143 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
3145 * gtk/gtktypeutils.h:
3146 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
3148 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
3150 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
3151 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
3152 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
3154 (gtk_notebook_reorder_child): new funktion to change position of a
3156 (gtk_notebook_draw_arrow): draw left/right arrow with
3157 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
3159 * gtk/gtkstyle.c (gtk_default_draw_arrow):
3160 added GTK_SHADOW_ETCHED_IN/OUT
3162 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
3164 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
3165 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
3166 Introduced generic GtkProgress widget. Derived GtkProgressBar from
3167 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
3169 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
3171 * gtk/gtktypeutils.h
3172 * gtk/gtkitemfactory.h: explicitly specify void in prototype
3174 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
3176 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
3179 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
3181 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
3182 sropped the approach of copying all signal specific data into a
3183 GtkHandlerInfo structure. we rather keep the signal data on the stack
3184 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
3185 avoids multiple lookups of the signal pointer and works savely together
3186 with destroy notifiers of handlers.
3188 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
3189 someone destroys the entry on the ::activate signal.
3191 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
3193 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
3194 instead of ypad (typo).
3195 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
3196 border around the allocation).
3197 (gtk_arrow_init): the static requisition needs to be setup in this
3198 function rather than gtk_widget_new(), so arrow creation works without
3199 the gtk_arrow_new() constructing.
3200 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
3202 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
3203 implementation for GtkWidget::size_request, so size requisition for
3204 simple statically sized widgets like GtkArrow works.
3206 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
3208 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
3209 prepend -I@libdir@/glib/include anymore, since glib-config handles
3210 it; --libs strips out redundant -L<path>'s properly (there was
3211 code in there to do it before, but it didn't work)
3213 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
3215 * gtk/gtknotebook.h:
3216 * gtk/gtknotebook.c: signdness corrections all ove the place.
3217 implementation of object arguments: GtkNotebook::enable_popup,
3218 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
3219 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
3220 begun implementation of child args, we have GtkNotebook::tab_label, but
3221 GtkNotebook::menu_label and GtkNotebook::position still lack the
3223 (gtk_notebook_remove_page):
3224 (gtk_notebook_current_page): allow negative indices (-1) as alias for
3228 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
3229 arguments GtkEntry::max_length and GtkEntry::visibility.
3230 (gtk_entry_adjust_scroll): queue a redraw.
3232 * gtk/gtkeditable.h:
3233 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
3234 object arguments GtkEditable::text_position and GtkEditable::editable.
3235 new (action) signal GtkEditable::set_editable.
3236 provide a default handler for GtkEditable::changed that queues a redraw.
3239 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
3242 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
3244 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
3245 case of drag_target == NULL
3246 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
3247 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
3248 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
3249 gtk_dir_selection_file_button): fix due to changes in clist's
3252 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
3255 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
3256 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
3257 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
3258 to be gint16s rather than guint16s, since that's what the code expected
3259 (for a long time actually).
3261 * gtk/gtkviewport.c:
3262 added support for object arguments: GtkViewport::shadow_type,
3263 GtkViewport::vadjustment and GtkViewport::hadjustment.
3264 (gtk_viewport_add): chain gtk_bin_add.
3266 * gtk/gtkscrolledwindow.c:
3267 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
3268 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
3270 * gtk/gtkadjustment.h:
3271 * gtk/gtkadjustment.c:
3276 * gtk/gtkscrolledwindow.h:
3277 * gtk/gtkscrolledwindow.c:
3278 * gtk/gtkviewport.h:
3279 * gtk/gtkviewport.c:
3280 GtkType and macro fixups.
3282 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
3286 Added focus handling, horizontal and vertical autoscrolling,
3287 extended Selection Mode, key bindings
3288 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
3289 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
3290 Removed gtk_ctree_clear.
3294 Added focus handling, horizontal and vertical autoscrolling,
3295 extended Selection Mode, key bindings
3297 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
3299 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
3300 source tree. For more information on GdkRgb, please see:
3301 http://www.levien.com/gdkrgb/
3303 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
3304 bothers me slightly that the feature is in gdk, and this file is
3305 in gtk, but it's probably ok.
3307 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
3310 * gdk/gdkrgb.h: Added this module.
3312 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
3314 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
3316 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
3318 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
3319 to this function. it needs to relookup the signal multiple times.
3320 this fixes spurious segfaults that could show up with signal intensive
3321 code, when classes are created during a pending emission (which is
3324 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
3326 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
3327 child if it isn't a label.
3329 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
3332 * gtk/gtkseparator.h:
3333 * gtk/gtkhseparator.h:
3334 * gtk/gtkvseparator.h: macro and GtkType fixups.
3336 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
3338 * gtk/testgtk.c (create_cursors): display the current cursor name.
3340 * gtk/gtktypeutils.h:
3341 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
3342 the fundamental type definition. the GtkArg union now only covers
3343 the required storage types for argument values. adapted the GTK_VALUE_*
3344 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
3346 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
3347 code, fixed int/float collection. fixed a bug in the sanity checking
3348 code for GtkObjects.
3350 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
3351 argument collection code.
3353 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
3354 macros when distinguishing the return type.
3356 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
3358 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
3359 is not NULL before trying to g_list_remove the child. A patch
3360 from Michael Lausch.
3362 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
3364 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
3365 collection (always casted to doubles upon argument passing).
3367 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
3369 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
3370 object_init_func for derived objects with the object's ->klass field
3371 still pointing to the corresponding base class, otherwise overridden
3372 class functions could get called with partly-initialized objects.
3373 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
3375 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
3379 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
3381 * gtk/gtkcontainer.h:
3382 * gtk/gtkcontainer.c:
3383 (gtk_container_child_arg_get_info): new function which wraps
3386 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
3388 * gtk/gtkcontainer.c:
3389 (gtk_container_arg_get):
3390 (gtk_container_arg_set):
3392 (gtk_object_arg_set):
3393 (gtk_object_arg_get):
3394 strictly check for the associated get/set arg functions. if an
3395 arg is readable or writable, the associated class functions *must*
3398 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
3400 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
3401 padding into account if there is an accelerator.
3403 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
3405 * gtk/gtkcontainer.c:
3406 (gtk_container_add_with_args): collect the arguments with
3407 gtk_container_child_args_collect, not through gtk_object_args_collect.
3408 (gtk_container_child_set): likewise.
3410 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
3412 * gtk/gtktypeutils.h:
3413 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
3414 which is derived from GTK_TYPE_STRING.
3416 * gtk/gtkbindings.c: reworked the argument type handling.
3418 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3420 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
3421 so that it seems to allow normal operation in those modes,
3422 although you will only see black (GIMP toolbar now pops up,
3423 just don't create a new image and GIMP now works in 4 bit.)
3425 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3427 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
3428 array, which was too low (?)
3430 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
3432 * gtk/gtkcontainer.h:
3433 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
3434 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
3435 we now export a new function gtk_container_child_args_collect().
3436 for consistency with the object arguments, a few functions got renamed:
3437 gtk_container_child_arg_get -> gtk_container_child_get,
3438 gtk_container_child_arg_set -> gtk_container_child_set,
3439 gtk_container_child_arg_getv -> gtk_container_child_getv,
3440 gtk_container_child_arg_setv -> gtk_container_child_setv,
3441 gtk_container_add_with_argv -> gtk_container_addv.
3442 note, gtk_container_add_with_args() remained, because its equivalent
3443 would be gtk_container_add(,, ...) which would break all existing code.
3444 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
3445 we expect the `arg_name' argument to be a const static string now.
3446 (gtk_container_get_child_arg_type): function removed.
3448 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
3450 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
3451 this is a static inline function that collects command line arguments
3452 from a va_list. this file can just be included in all places that
3453 need this functionality.
3456 * gtk/gtkarg.c: new files which implement most of the argument
3457 handling stuff from gtkobject.c. also collected a few more
3458 gtk_arg_* utility functions from else places.
3461 * gtk/gtkobject.c: moved most of the argument handling code into
3462 gtkarg.c. we now export gtk_object_args_collect() as a non-public
3463 method with a blind va_list pointer.
3464 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
3465 const static string now.
3466 (gtk_object_get_arg_type): function got removed.
3470 (gtk_widget_new): adaptions for gtk_object_args_collect().
3472 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
3473 fundamental type name so as to have a valid prefix, e.g. "bool"->
3474 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
3475 though that should probably be something like GtkNone since the
3476 type itself is called GTK_TYPE_NONE.
3477 even the internal type names need to avoid name clashes and must live
3478 in their own namespace, several code portions rely on that.
3479 we should relly have typedefs such as typedef gchar* GtkString; so the
3480 fundamental type names can be used for code dumpers just like with all
3483 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
3485 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
3486 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
3487 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
3489 (gtk_button_paint): set the background for prelighted buttons with
3490 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
3491 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
3492 the shadow type (otherwise we get strange shadows for coloured buttons).
3493 (gtk_button_set_relief): queue a redraw after changing
3495 (gtk_button_class_init):
3496 (gtk_button_set_arg):
3497 (gtk_button_get_arg): added object argument "GtkButton::relief".
3499 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
3501 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
3504 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
3505 GTK_BIN (button)->child to button->child to keep source compatibility.
3507 * gtk/gtkoptionmenu.c:
3509 * gtkcheckbutton.c: don't refer to button->child, but
3510 GTK_BIN (button)->child instead.
3512 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
3514 * docs/gtkfaq.sgml: update anon CVS info
3516 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
3518 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
3522 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
3525 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
3527 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
3528 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
3530 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
3532 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
3534 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
3537 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
3539 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
3540 error that prevented signal to entry addition for signals with
3543 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
3545 * ltconfig: fix for properly detecting shared lib support on
3546 SunPro cc (taken from libtool 1.2.a)
3548 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
3550 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
3552 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
3554 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
3555 rc set pattern is favoured, this is needed for overriding of style
3556 patterns with subsequently parsed rc files.
3558 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
3560 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
3563 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
3565 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
3567 (gtk_accelerator_name): add "<Release>" to the accelerator name if
3570 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
3573 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
3574 default handler for key-release events, which checks for activation
3575 of GDK_RELEASE_MASK key bindings.
3577 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
3579 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
3581 * gtk/gtkarrow.h: GtkType and macro fixups.
3582 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
3583 "GtkArrow::shadow_type".
3585 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
3587 * gtk/gtkalignment.h:
3588 * gtk/gtkbin.h: GtkType and macro fixups.
3590 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
3591 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
3592 GtkAlignment::xscale, GtkAlignment::yscale.
3594 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
3596 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
3597 fucntions from all parent types upon class initialization.
3599 * gtk/gtkcontainer.c:
3600 (gtk_container_get_type): announce gtk_container_base_class_init to
3602 (gtk_container_base_class_init): new function to feature base class
3604 (gtk_container_get_child_arg):
3605 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
3606 and set_child_arg methods of the class indicated through the argument
3610 (gtk_object_base_class_init): new function to feature base class
3612 (gtk_object_init_type): announce gtk_object_base_class_init to the type
3614 (gtk_object_class_init): setup the get_arg and set_arg pointers for
3617 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
3618 instead of bothering the type system with this.
3620 * gtk/gtkaccellabel.c:
3622 * gtk/gtkradiobutton.c:
3624 * gtk/gtktogglebutton.c:
3625 * gtk/gtktipsquery.c:
3632 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
3633 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
3634 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
3635 arg functions to take a GtkObject argument.
3637 gtk/gtkadjustment.c:
3640 gtk/gtkaspectframe.c:
3643 gtk/gtkcheckbutton.c:
3644 gtk/gtkcheckmenuitem.c:
3652 gtk/gtkdrawingarea.c:
3666 gtk/gtkhscrollbar.c:
3667 gtk/gtkhseparator.c:
3669 gtk/gtkinputdialog.c:
3671 gtk/gtkitemfactory.c:
3679 gtk/gtkoptionmenu.c:
3683 gtk/gtkprogressbar.c:
3684 gtk/gtkradiomenuitem.c:
3689 gtk/gtkscrolledwindow.c:
3691 gtk/gtkspinbutton.c:
3704 gtk/gtkvscrollbar.c:
3705 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
3706 match the modified GtkTypeInfo structure.
3708 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
3710 * gtk/testgtk.c: use rand() instead of random() for portability
3712 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
3716 * gdk/gdk.c: use native Xlib XConvertCase if it's available
3718 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
3720 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
3721 XConvertCase() functionality from X11R6 on X11R5 systems.
3723 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
3725 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
3726 gdk_string_height, gdk_char_height to retrieve the exact
3729 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
3731 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
3732 by Stefan Mars <mars@lysator.liu.se>
3733 * examples/clist/clist.c examples/clist/Makefile: example code
3734 for GtkCList widget from the Tutorial
3736 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
3738 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
3739 if the container is not visible, we might be a toplevel! this holds
3740 for all other base container implementations as well, that are
3741 candidates to derive toplevels from. in general the resizing code will
3742 care about visibility itself.
3743 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
3744 * gtk/gtkbox.c (gtk_box_remove): likewise.
3746 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
3747 gtk_window_set_hints(), since we haven't calculated the new position
3750 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
3751 *mask are alway initialized in a sane way, regardless of the return
3754 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
3756 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
3757 to gtk_container_child_arg_setv, but takes a variable argument list.
3758 new function gtk_container_get_child_arg_type, which is needed by
3759 gtk_object_collect_args.
3761 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
3762 take a function pointer to figure the argument type.
3763 adapted callers to pass gtk_object_get_arg_type.
3764 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
3765 gtk_object_get_arg_type..
3769 (gtk_packer_reorder_child): new function to change the packing order
3771 (gtk_packer_size_request):
3772 (gtk_packer_size_allocate): take container->border_width into acount.
3774 * gtk/gtkpacker.c: implemented widget arguments:
3775 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
3776 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
3777 implemented child arguments:
3778 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
3779 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
3780 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
3781 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
3783 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
3786 * gtk/gtkeventbox.h:
3787 * gtk/gtkeventbox.c: GtkType and macro fixups.
3789 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
3790 sensitivity of an entry.
3792 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
3793 for insensitive base and text.
3795 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
3796 widget state dependent.
3797 (gtk_entry_style_set): likewise.
3798 (gtk_entry_state_changed): set background color on state changes.
3799 (gtk_entry_draw_text): for non selected text, use state dependent
3802 * gtk/gtktogglebutton.c: support for widget arguments
3803 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
3805 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
3807 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
3808 code for 1.0.x-like parameters. Changed internal interface of
3809 gtk_spin_button_real_spin. Several fixes to avoid emission of
3810 "value_changed" where possible.
3812 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
3814 * gtk-boxed.defs: s/GkWidget/GtkWidget/
3816 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
3818 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
3819 to select the resize_mode for the idle-labels container.
3822 * gtk/gtkframe.c: GtkType and macro corrections.
3824 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
3825 support widget argument "GtkRadioButton::group".
3827 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
3829 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
3830 unconditionally if resize_mode has changed.
3832 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
3833 GTK_RESIZE_QUEUE on the scrolled window.
3834 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
3836 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
3838 * gtk/gtkcontainer.h:
3839 * gtk/gtkcontainer.c:
3840 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
3841 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
3842 (gtk_container_queue_resize): new function to queue a container for
3843 a *size* reallocation (doesn't affect its position, and thus its
3844 parent is left untouched usually).
3845 (gtk_container_get_resize_container): new function to retrive the next
3846 most resize container which is not itself queued for a resize.
3847 (gtk_container_idle_sizer): new function to carefully process the
3848 container_resize_queue since it can change during invokation of
3849 gtk_container_check_resize().
3850 (gtk_container_resize_children): total rework of this function to
3851 properly handle resize containers. makes a lot of assumptions whitch
3852 are stated in the comments.
3854 * gtk/gtkcontainer.c:
3855 (gtk_container_real_check_resize): only requeue ourselves if we are not
3857 (gtk_container_clear_resize_widgets): care for automatic deletion of our
3858 resize_widgets list on size_allocate through a handler connection.
3860 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
3861 focus and default widget of a window, so to take the burden from
3862 gtk_widget_unparent.
3864 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
3865 to be clever, but actually messed up the resize_children logic and
3866 caused unneccessary allocations on its whole branch. besides this,
3867 it messed up the display by not invoking a redraw after the allocation.
3869 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
3870 that it is the child again that is queued for a resize.
3871 (gtk_table_attach): likewise.
3872 (gtk_table_remove): likewise.
3874 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
3876 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
3877 gtk_entry_adjust_scroll. Required if you change the cursor
3878 position and want to sync it up with your code (Midnight Commander
3879 gtk front end needs this).
3881 * gtk/gtktable.c: Deal with tables that have size 0, 0.
3883 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
3885 * examples/README.1ST: new file to explain how the
3886 code examples should be extracted from the tutorial.
3888 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
3890 * gtk/gtkctree.c (draw_row): added new "line style"
3891 GTK_CTREE_LINES_TABBED
3892 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
3893 search the glist pointer of an GtkCTreeRow
3895 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
3897 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
3898 from, and clean up, the dependencies. Generate to intermediate
3899 files to prevent problems with Ctrl-C.
3901 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
3903 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
3905 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
3906 - Bug fix for precision problem causing occasional double emission
3907 of "value_changed" signal (hopefully works now).
3908 - API change (should be binary compatible) :
3909 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
3910 Modified cursor example appropriately.
3911 To spin by something other than step_/page_increment, use
3912 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
3913 - Made GTK_SHADOW_NONE the default. ;)
3914 - Fixed casting of GtkAdjustment* to GtkWidget* in
3915 gtk_spin_button_value_changed.
3917 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
3919 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
3920 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
3921 resize widget list before queuing the container for a new reize.
3922 (gtk_container_need_resize): changed return value to FALSE, since this
3923 used to indicate that no further resizes are needed.
3924 (gtk_container_set_arg):
3925 (gtk_container_get_arg):
3926 (gtk_container_class_init): implemented GtkContainer::resize_mode
3929 (gtk_container_resize_children): when we walk up the tree of a resize
3930 widget we need to stop if we are the current parent.
3932 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
3933 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
3934 (gtk_widget_hide_all): retrive the toplevel widget from via
3935 gtk_widget_get_resize_container().
3937 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
3939 * gtk/gtklist.c (gtk_list_button_press): Only respond
3940 to selection with button 1. This allows context-sensitive
3941 menus to work correctly.
3943 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
3945 * gtk/gtkaccelgroup.c:
3946 * gtk/gtkbindings.c:
3947 * gtk/gtkcontainer.c:
3948 * gtk/gtkitemfactory.c:
3951 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
3952 g_quark_from_static_string calls to save memory.
3954 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
3955 function _after_ the new data has been setup.
3956 minor changes to object data functions to feature the GQuark type.
3958 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
3960 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
3963 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
3965 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
3966 to be more readable perl, to spit out stuff that looks
3967 more like readable C, and to pipe output through indent
3968 so output looks a lot like readable C. No functional
3971 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
3973 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
3974 necessary when switching to a masked pixmap. (Based on a patch
3975 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
3977 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
3979 * gtk/gtkeditable.[ch]: Added action signals for keyboard
3980 bindings. (move_cursor, kill_word, etc, etc, etc).
3982 removed the time argument from
3983 gtk_editable_cut/copy/paste_clipboard (source but not
3984 binary incompatible...) Instead get time from
3985 gtk_get_current_event ().
3987 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
3990 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
3992 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
3994 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
3995 parent class to GtkNotebookClass when splitting the widget in
3996 two. Also updated some comments.
3998 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
3999 button without a font selected.
4001 Fixed bug in set_font_name - I hadn't updated the code to
4002 search for the style in the font_style clist - it was
4003 still assuming the style row was equal to its index,
4004 but it isn't any more.
4006 Changed 'Reset' button on filter page to 'Clear Filter'.
4007 Deleted old code relating to the old 'Filter Fonts' toggle
4008 Updated some comments.
4009 Cleared 'Actual Fontname' if no font is set.
4011 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
4012 destroying the GtkFontSelection instead of the
4013 GtkFontSelectionDialog.
4015 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
4017 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
4018 flag to make all warnings fatal errors.
4020 * gtk/testthreads.c: moved <pthreads.h> include inside
4023 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
4025 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
4026 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
4028 - Added new function gtk_container_set_resize_mode() for
4029 fine-grained control of where resize-queueing is done.
4031 - Removed GtkContainer::need_resize and GtkWindow::move_resize
4032 - Added GtkContainer::check_resize to replace need_resize.
4034 - Added function gtk_container_check_resize() to trigger
4035 queued resizes, and gtk_container_resize_children() to
4036 Figure which children need to be size-allocated. (logic
4037 moved from gtkwindow.c)
4039 - Reorganized code in gtkwindow.c
4041 - Set the resize-mode for viewports so that resizes within
4042 a viewport don't propagate out of it.
4044 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
4046 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
4048 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
4049 g_return_val_if_fail, because the function *does* return a value.
4051 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
4053 * gtk/gtkaccellabel.h:
4054 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
4055 request the size of the accelerator portion of an accel label.
4056 (gtk_accel_label_size_request): don't request for the accelerators size.
4057 (gtk_accel_label_expose_event): only draw the accelerator if we got
4060 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
4061 width from children.
4063 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
4064 object (after removal has been requested) check if there is still an
4065 accelerator remaining to avoid adding two accelerators on an object.
4066 this can happen for locked accelerators (or accelerator-frozen widgets).
4067 (gtk_menu_size_request): feature childrens accelerator width in size
4070 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
4071 gtk_widget_freeze_accelerators() for dynamically created menu items.
4074 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
4075 which will return a handler_id > 0 if the specified function is pending
4079 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
4080 a signal handler function to stop accelerator addition.
4081 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
4082 which will prevent (undo) any accelerators from being added to or
4083 removed from a widget.
4085 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
4087 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
4088 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
4089 acceleration, new API gtk_spin_button_set_snap_to_ticks.
4091 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
4094 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
4095 the current GdkWindow the pointer is on if there is any.
4097 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
4098 and one column, so we don't construction logic at all. changed a few
4099 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
4102 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
4103 portion, added an additional check for parent != widget.
4105 * more GtkType and macro fixups.
4107 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
4109 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
4110 "clip" parameter, which is the clipping rectangle to use. This
4111 eliminates the extremely annoying flicker when exposing parts of
4114 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
4116 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
4119 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
4121 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
4122 != 0 on the argument.
4125 * gtk/gtktable.c: new function gtk_table_resize() which allowes
4126 shrinking and expanding of tables. implementation of widget arguments
4127 and child arguments. many signedness corrections.
4129 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
4131 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
4132 not only the child, otherwise we might end up taking away other
4133 childrens space after the resize.
4135 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
4136 an unknown menu path from any source, that path must always be flagged
4137 as "modified", since we don't really know whether it has its default
4142 * gtk/gtknotebook.c:
4143 * gtk/gtkmenushell.c:
4147 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
4150 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
4151 arguments. implemented child arguments.
4153 * more GtkType and macro fixups.
4155 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
4157 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
4159 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
4160 and gtk_clist_get_hadjustment.
4162 * gtk/gtkcontainer.c:
4163 implementation of children arguments, new class member functions
4164 (child_type), (get_child_arg) and (set_child_arg) plus a new field
4166 (gtk_container_child_type): new function which returns the type of a
4167 child that the container expects for its next addition.
4168 (gtk_container_add_child_arg_type): new function to introduce a new
4169 child argument at class creation time.
4170 (gtk_container_query_child_args): new function to query all child
4171 arguments that are supported by a container class.
4172 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
4174 (gtk_container_child_arg_setv): new function to set a child argument for
4175 a certain container and child combination.
4176 (gtk_container_add_with_args):
4177 (gtk_container_add_with_argv): new functions to feature addition of a
4178 new child in combination with the setting of certain child arguments.
4180 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
4181 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
4182 this should really be done through class cretion hooks some day.
4184 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
4188 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
4189 follow the gtk convention for lower case variable names (important
4190 for language wrappers and widget arguments), and made them guint : 16.
4192 * examples/packer/pack.c: adaptions for the case converted GtkPacker
4195 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
4197 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
4198 change the character pair for single line comments.
4199 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
4200 GtkItemFactoryClass.
4201 (gtk_item_factory_parse_rc_string): likewise.
4203 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
4205 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
4206 lists from the klass structure to a static structure
4207 in gtkfontsel.c; cleans up global the namespace.
4209 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
4211 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
4212 bug with /*< skip >*/ and remove warning.
4214 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
4216 * gtk/Makefile.am: Made the gtkmarshal.* generation
4217 rules maintainer-only.
4219 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
4221 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
4222 gtk/Makefile.am gtk/makenums.pl
4224 Removed out the G_ENUM/FLAGS mechanism in favor
4225 of a perl script that parses the standard headers
4226 (with occasional /*< nick=foo >*/ style overrides)
4227 and extracts the enumerations.
4229 gtk/maketypes.awk: Small improvments to the
4230 translation of names. (Avoid splitting gc into
4233 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
4235 * gtk/gtk.h gtk/gtkfontsel.[ch]:
4236 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
4238 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
4241 - Restored gtk_entry_adjust_scroll to static
4242 - Changed text positioning code so that we always
4243 display as large a portion of the text as possible.
4245 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
4247 * gtk/gtktext.c (gtk_text_finalize): Free internal
4248 structures of text widget. Also, unreference pixmaps
4251 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
4253 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
4254 3.3.1 bug workaround to number keys starting at 1.
4256 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
4258 * docs/gtk_tut.sgml: Fixed urls for complete example
4259 source for scribble+widget-writing examples.
4261 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
4263 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
4264 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
4265 specs of the form c #abcdef [ more keys ] properly.
4267 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
4269 * gtkspinbutton.h gtkspinbutton.c testgtk.c
4270 (gtk_spin_button_set_shadow_type):
4271 New API to set the shadow type of the arrow panel.
4273 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
4275 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
4276 code for drawing the child in two places at once. Unfortunately,
4277 not only does it not work anymore (because reparenting has
4278 been fixed), but it also triggers reparent/expose loops
4281 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
4282 an unecessary unrealize.
4284 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
4286 * gdk/gdkwindow.c (gdk_window_reparent): Update the
4287 old and new parents' child window lists properly.
4289 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
4292 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
4293 and GtkSideType, to be consistent with the rest of Gtk's enum
4294 definitions. wrapped the enum definitions with the G_ eunm wrappers.
4295 spelled out the GTK_ANCHOR_* enum values, since single letters don't
4296 work out corectly as nick-names (left the old values as aliases).
4297 some signdness corrections (border-width, spacing), could stand more.
4299 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4301 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
4304 * examples/packer/pack.c, examples/packer/Makefile: Added
4307 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
4309 * gtk/gtktext.c (remove_cache_line): Fixed broken
4312 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
4313 Check bounds before deleting.
4315 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
4317 * autogen.sh: Support ACLOCAL_FLAGS
4319 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
4321 * gtk-config.in: Added missing quotes.
4323 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
4325 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
4327 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
4329 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
4330 G_COMPILED_WITH_DEBUGGING.
4332 * configure.in (fd_set): Explain check better.
4334 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
4335 the version from which gtk+'s libtool forked. Needed for people
4336 who use post-1.2 alphas of libtool.
4338 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
4340 * glib/* Moved to glib module
4342 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
4343 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
4345 configuration changes for the above:
4347 - Use AM_PATH_GLIB by default to find glib; also accept
4348 a --with-glib option for using an uninstalled glib.
4350 - Put --enable-debug information into config.h so
4351 that we rebuild when it changes. (was in glibconfig.h)
4353 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
4355 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
4357 * gtk/gtknotebook.h (struct _GtkNotebookClass):
4358 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
4359 added missing argument (according to Joseph Coleman's bug report)
4361 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
4362 function to fix notebook focus handling
4364 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
4366 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
4367 glib/gutils.c glib/testglib.c glib/gdataset.c
4368 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
4369 gtk/gtktext.c gtk/gtkbindings.c:
4371 renamed g_const_pointer => gconstpointer
4373 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
4375 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
4376 invoked with (NULL, NULL); (this worked sometime ago).
4378 * gtk/gtktypeutils.h:
4379 * gtk/gtktypeutils.c: enum and flags type creation can now be done
4380 through gtk_type_register_enum() and gtk_type_register_flags(),
4381 which allow to specify the enum value arrays directly.
4382 the NULL terminated value arrays can be retrived through
4383 gtk_type_enum_get_values() and gtk_type_flags_get_values();
4384 (gtk_type_children_types): new function to query derived types.
4386 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
4388 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
4389 environment to genmarshal.pl.
4390 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
4391 rule), and removed it where not needed (in the dependencies).
4393 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
4395 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
4397 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
4398 was just g_direct_hash.
4400 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
4402 * configure.in: x_libs=, not $x_libs=. Enough said.
4403 (Case only hit for --disable-xshm)
4405 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
4407 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
4408 when testing for X libraries, don't replace them. Because
4409 the user might have specified the path to the X libraries
4410 themself before running configure.
4412 * examples/**.c: Changed all gpointer * to gpointer
4414 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
4416 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
4417 fleur_cursor field. Now the cursor is created/destroyed on demand
4418 by the routines that need it.
4420 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
4421 (gtk_handle_box_motion): The fleur cursor is created and destroyed
4424 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
4426 * gtk/gtktypeutils.h:
4427 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
4428 gtk_enum_set_values to gtk_type_enum_get_values and
4429 gtk_type_enum_set_values respectively, since they are actually type
4432 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
4435 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
4437 * gtk/gtkselection.h:
4438 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
4439 gtk_selection_data_free.
4441 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
4442 for "selection_received", which was completely bogus.
4443 * other fixups to gtk_signal_new() calls all over the place.
4445 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
4446 * gtk/gtktypebuiltins_vars.c: type variable implementations.
4447 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
4449 * gtk/gtktypebuiltins_evals.c: enum value arrays.
4450 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
4452 * gtk/gtk.defs: generated file with scheme syntax for type definitions
4453 of gtk and gdk structures and enums.
4454 * gtk/gtktypeutils.h:
4455 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
4456 macros anymore (this fixes binary incompatibility with new enum
4459 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
4460 key bindings for this widget.
4461 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
4465 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
4466 again. new functions gtk_object_class_user_signal_new () and
4467 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
4468 flag on the signal creation.
4470 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
4472 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
4474 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
4480 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
4482 * reworked enum value array generation code. gtk.defs is a generated
4485 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
4487 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
4488 check menu items in the compatibility code (this required me to remove
4489 the "<check>" part from the menu item name, grrr).
4491 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
4493 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
4494 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
4496 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
4498 * gtk/gtkitemfactory.h:
4499 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
4500 additions to the dumping code to feature GtkPatternSpec.
4501 even found a bug to fix in the original code ;)
4503 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
4505 * gtk/gtkitemfactory.c: support different types of callbacks, to
4506 maintain existing code.
4508 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
4510 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
4512 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
4513 this should eventually be done by gentypeinfo.el somewhen.
4514 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
4516 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
4517 enum values of an enum type.
4525 brought enum/flags definitions in sync, added a few more enum
4526 definitions for bindings and pattern matching.
4528 * some more macro and GtkType fixups in various places.
4530 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
4531 as a key-release modifier for the binding system.
4533 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
4535 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
4536 was a stale list pointer that is already present in GtkMenuShell.
4538 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
4539 GtkMenuShell::selection_done which is emitted after the menu shell
4540 poped down again and all possible menu items have been activated.
4542 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
4544 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
4545 before activation of the menuitem, so the menu is actually taken off the
4546 screen prior to any menu item activation.
4548 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
4552 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
4553 the emission of the "add-accelerator" signal on a widget. this is
4554 usefull to prevent accelerator installation on certain widgets.
4556 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
4557 labels left justified, by setting their alignment. stop accelerator
4558 installation for the menu items, since we use dynamic menus.
4560 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
4562 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
4563 should *really* use GtkItemFactory. this is only for preserving source
4564 compatibility where possible, use of GtkMenuFactory is deprecated as of
4567 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
4568 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
4569 missed this possibility when i added gtk_object_class_add_user_signal
4572 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
4574 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
4576 * gtk/gtkaccelgroup.h:
4577 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
4579 * gtk/gtkaccellabel.h:
4580 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
4581 display of the accelerators associated with a certain widget.
4583 * gtk/gtkitemfactory.h:
4584 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
4585 parsing and accelerator handling.
4587 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
4589 (gtk_menu_map): removed the allocation code.
4590 (gtk_menu_size_allocate): care for redrawing of children and resize
4591 our widget->window correctly.
4592 (gtk_menu_key_press): feature the new accelerator groups.
4594 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
4595 submenu if neccessary.
4597 * gtk/gtkmenuitem.c:
4598 * gtk/gtkcheckmenuitem.c:
4599 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
4603 (gdk_keyval_from_name):
4604 (gdk_keyval_name): new functions for keyval<->key-name associations.
4605 (gdk_keyval_to_upper):
4606 (gdk_keyval_to_lower):
4607 (gdk_keyval_is_upper):
4608 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
4609 regards to their cases.
4611 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
4613 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
4614 widget's class path.
4615 (gtk_widget_path): new function to calculate a widget's name path.
4617 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
4618 pattern matching, features reversed pattern matches.
4620 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
4622 * examples/extract.sh, examples/extract.awk:
4623 New files to automagically extract code examples from the
4626 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
4628 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
4629 * gtk/gtkcontainer.c (gtk_container_focus_move):
4630 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
4632 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
4634 * docs/gtk_tut.sgml: minor changes to support auto
4635 extraction of example code
4637 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
4639 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
4640 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
4642 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
4644 * docs/gtk_tut.sgml:
4645 - new section on Events
4646 - change all delete_event callbacks to include
4647 a GdkEvent parameter
4648 - clean up the formatting
4650 * examples - helloworld.c, helloworld2.c, notebook.c,
4651 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
4652 rulers.c, table.c, wheelbarrow.c: change all delete_event
4653 callbacks to include a GdkEvent parameter.
4655 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
4657 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
4658 field of crossing events.
4659 (struct _GdkEventCrossing): Added the following fields: time, x,
4660 y, x_root, y_root, mode, focus, state.
4662 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
4663 crossing event structure.
4665 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
4666 changes to the crossing event structure.
4668 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
4670 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
4672 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
4674 * docs/gtk_tut.sgml:
4675 - GtkTooltips, update to current API
4676 - change all 'gpointer *data' to 'gpointer data'
4677 - other minor changes
4679 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
4681 * configure.in (LDFLAGS): Bomb out with a moderately
4682 helpful message if detection of X libraries fails.
4684 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
4687 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
4688 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
4690 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
4691 gtk/gtksignal.c gtk/gtktext.c:
4693 Fixups for warnings from adding const to type of GHashFunc,
4696 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
4697 ansi-warnings fixups.
4699 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
4701 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
4702 Locate child at (border_width,border_width), not
4703 (2*border_width,2*border_width). [ The border is _outside_
4706 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
4707 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
4709 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
4711 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
4714 1998-05-22 <sopwith@redhat.com>
4716 * gtk/gtkeventbox.c: Pass size_allocate on to the child
4717 regardless of whether it is visible or not. Also
4718 locate child at (border_width,border_width), not (0,0)
4720 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
4722 * gtk/gtkhandlebox.c: Added style_set handler.
4724 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
4725 [ From: Chris Lahey <clahey@umich.edu> ]
4727 * gtk/gtkeditable.c, gtk/gtkeditable.h,
4728 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
4729 and set_position functions to get and set the cursor position.
4731 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
4732 signal status. Make GtkText do user-controlled insertion
4733 and deletion through the Editable widget so that these
4734 signals are properly emitted.
4736 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
4737 display asterisks instead of empty space when visible = FALSE)
4739 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
4741 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
4744 1998-05-21 <sopwith@redhat.com>
4746 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
4747 custom routine for loading images specified in gtkrc's.
4749 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
4751 * configure.in: Use pthread_attr_init() as a test function,
4752 since most of the rest of -lpthread is macros on DU4.
4754 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
4756 * gtk/gtkcombo.c: implemented completion in the entry.
4758 1998-05-18 <sopwith@moebuis.labs.redhat.com>
4760 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
4762 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
4764 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
4765 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
4766 to be of runtype GTK_RUN_LAST.
4768 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
4771 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
4774 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
4776 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
4777 text retrived from GtkEntry. only intercept the Tab key if there
4778 was some text to complete.
4780 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
4782 Basic thread-awareness:
4784 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
4786 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
4787 gdk_threads_[init/enter/leave] for applications, plus
4788 gdk_threads_wake to wake the mainloop thread out of
4791 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
4793 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
4795 * gtk/testgtk.c (list_clear): Account for the fact
4796 that gtk_list_clear_items is not inclusive. (Clears
4799 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
4801 * gdk/gdk.c: include gdkkeysyms.h always
4804 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
4806 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
4807 the visibility_notify_event method and changed method order.
4809 1998-05-14 <sopwith@moebuis.labs.redhat.com>
4811 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
4813 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
4815 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
4816 from Olli Helenius <ollhel@batman.jytol.fi>.
4818 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
4820 (gtk_type_set_chunk_alloc): new function to allow allocation of new
4821 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
4824 * gtk/gtkobject.c (gtk_object_finalize): free an object through
4827 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
4829 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
4830 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
4832 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
4834 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
4835 GPOINTER_TO_UINT fixes.
4837 * gtk/gtksignal.c: Include <string.h> for memset.
4839 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
4840 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
4842 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
4843 Cleanups, comments and the ability to have rulers with
4844 a reversed direction.
4846 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
4848 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
4849 that Sopwith missed when changing stat => lstat.
4851 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
4853 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
4854 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
4855 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
4857 * gdk/gdk.c: Print sizeof() results
4858 as g_print("%ld", (glong)sizeof(foo)), to deal with
4859 sizeof() being long on Alpha's.
4861 * gtk/testgtk.c: include <string.h> for strlen
4863 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
4864 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
4866 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
4867 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
4869 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
4871 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
4872 (From: Christopher James Lahey <clahey@umich.edu>)
4874 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
4877 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
4878 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
4879 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
4880 the default relief for the toolbars buttons. Added an
4881 toggle for the toolbar test in testgtk.c.
4883 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
4885 * docs/gtk-config.1: Rewritten and hopefully improved.
4887 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
4890 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
4892 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
4894 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
4895 GtkPreview's visual and colormap, otherwise things can BadMatch.
4897 * gtk/testgtk.c (create_color_preview):
4898 (create_gray_preview): Removed pushing/popping of visual/colormap
4899 now that GtkPreview does things correctly.
4901 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
4902 (gtk_color_selection_draw_wheel): Pick the style from the correct
4903 place (the colorsel->wheel_area widget) so that the GCs will match
4904 with where we are going to paint to.
4906 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
4907 of visual/colormap now that GtkColorSelection does things the
4910 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
4912 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
4913 previously unused window->need_resize flag to mark if a window's
4914 descendents changed size while the window was not visible. In this
4915 case, when the window becomes visible, we reallocate everything,
4916 since we didn't keep track of what actually changed.
4918 (Fixes bug where changing the popdown strings of a
4919 combo to something of the same length caused them to
4920 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
4922 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
4924 [security audit by Alan Cox]
4926 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
4927 exceed maximum assumed size.
4929 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
4930 not exceed maximum assumed size.
4931 (gtk_menu_factory_remove): likewise.
4932 (gtk_menu_factory_find_recurse): likewise.
4934 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
4936 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
4937 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
4938 redrawn if that is still neccessary. don't allow queueing of already
4940 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
4941 widgets which are in the queue can be destroyed safely, handle
4942 requeueing properly.
4943 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
4944 widgets which are in the queue can be destroyed/unrealized safely.
4946 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
4948 * gtkfaq.sgml: add question on multi-threading,
4951 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
4953 * configure.in (cflags_set): preserve automake CFLAGS.
4955 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
4956 and libgdk-1.1.la. this means we need to change certain portions of
4957 the Makefile.am on major/minor version bumps.
4959 * ltmain.sh: the -release option is not required anymore.
4961 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
4962 of the first argument to be of type GtkObject. unconditionally compile
4963 this function. removed __GNUC__ dependancy of the gtk_object_ref and
4964 gtk_object_unref macro wrappers for this function.
4966 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
4970 (gtk_object_data_try_key):
4971 (gtk_object_data_force_id): these are now macros substituting the old
4972 functions. we just use the corresponding g_dataset_* functions for
4973 key->id associations. (this is to assure unique key<->id associations).
4975 1998-05-10 Stefan Jeske <stefan@gtk.org>
4977 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
4980 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
4982 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
4984 * configure.in (LIBS): Try to figure out if this
4985 is Digital Unix and we need -std1 to get the
4988 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
4990 * docs/gtk_tut_it.sgml: update of Italian tutorial
4991 translation from Daniele Canazza <dcanazz@tin.it>
4993 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
4995 * gtk/gtkfeatures.h.in: new file used as template for
4996 * gtk/gtkfeatures.h: new file to define macros indicating newly
4997 introduced features, such as GTK_HAVE_SIGNAL_INIT.
5000 (gtk_signal_emitv_by_name):
5002 new functions to emit signals with an already provided parameter set.
5003 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
5004 (gtk_signal_real_emit): prototype changes, so this functions always
5005 gets its parameters and signal structure as arguments.
5006 (gtk_signal_emit): provide the signal structure and parameter list for
5007 gtk_signal_real_emit.
5008 (gtk_signal_emit_by_name): likewise.
5010 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
5012 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
5013 signal connections through unsetting GTK_CONNECTED.
5014 (gtk_signal_handler_insert): reflect the presence of signal connections
5015 through setting GTK_CONNECTED.
5016 (gtk_signal_real_emit): only check for handler emissions if the object
5017 has the GTK_CONNECTED flag set.
5018 (gtk_signal_handler_pending): don't check for pending handlers if the
5019 GTK_CONNECTED flag is not set for this object.
5021 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
5022 a GtkObject has signal handler connections.
5024 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
5025 set for this object call gtk_signal_handlers_destroy().
5027 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
5028 multiple processing of macro args.
5030 * gtk/gtktypeutils.c:
5033 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
5035 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
5037 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
5038 draw-queue when we are done.
5040 (gtk_widget_queue_draw/_queu_resize): Always return
5041 FALSE and avoid having two idles at the same time.
5043 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
5045 * gtk/gtktext.c: Various fixes to make sure cache
5046 lines are freed if line_start_cache doesn't point to the
5047 beginning of the cache.
5049 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
5051 * style_set improvements for GtkText and GtkEntry
5053 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
5055 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
5058 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
5060 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
5061 data chunks through a global object data structure list. unlink
5062 object data before invoking its destroy function.
5063 (gtk_object_finalize): slight modification to allow usage of object
5064 data during object finalization.
5066 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
5068 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
5069 signal names, e.g. "signal-name" is now an alias for "signal_name".
5070 (gtk_signal_handler_new): allocate handlers through a global handler
5071 structure list, that's faster than memchunks.
5072 (gtk_emission_new): allocate emissions through a global emission
5073 structure list, that's faster than memchunks.
5075 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
5077 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
5079 * ltmain.sh: added a new commandline flag -postfix similar to -release,
5080 but will immediately change the library name.
5083 * gtk/Makefile.am: specify -postfix and -version-info
5085 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
5086 GTK_BINARY_AGE. calculate LT_* variables for libtool.
5088 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
5090 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
5091 background (fg_set -> bg_set confusion).
5093 1998-05-06 Stefan Jeske <stefan@gtk.org>
5095 * gtk/testgtk.c (unselect_all): Removed code that caused an
5098 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
5100 * gtk/gtksignal.c: reimplemented the signal storage system to use a
5101 linear array rather than a hash table.
5102 be carefull *not* to keep any GtkSignal pointers across invokations
5103 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
5104 general code cleanups, made all allocations through memchunks.
5105 (gtk_signal_lookup): we now do the lookup of signals through a key_id
5106 for the signal names to avoid multiple hashing of the signal name on
5107 lookups for the several hirarchy levels of an object.
5109 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
5111 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
5112 to speed things up and remove code duplication.
5114 Reintegrated buffer overflow patches, and added
5115 some extra paranoia.
5117 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
5119 * gdk/gdk.c (gdk_event_translate): A guint * was
5120 being passed where X expected a Keysym *, and
5121 keysyms are long's on Alpha Linux. This was causing
5122 segfaults in Xlib, apparently because of alignment.
5123 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
5125 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
5127 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
5128 set GDK_EXPOSURE_MASK for DrawingAreas
5130 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
5132 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
5133 (superceded by RC file reparsing capabilities)
5135 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
5136 events. (Shouldn't be sent to the InputOnly leader, which
5137 it is now by gdk_event_send_clientmessage_toall
5139 * gtk/testgtk.c: Added extra button to rcfiles test
5140 to send out _GDK_READ_RCFILES events.
5142 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
5144 * gtk/gtkselection.c (gtk_selection_clear): Fixed
5145 reversed conditionals that caused segfault on some
5148 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
5150 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
5151 cast to GTK_OBJECT for gtk_object_ref.
5153 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
5155 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
5156 checking for signal initialization in gtksignal.c.
5158 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
5159 a long debugging period ;)
5161 1998-05-05 Stefan Jeske <stefan@gtk.org>
5163 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
5164 New function to wrap XSetDashes; modified gtkctree.c to use it.
5166 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
5168 * configure.in: Added $x_libs in the other_libraries field in the
5169 check for XShapeCombineMask.
5171 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
5173 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
5175 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
5176 linear array rather than a hash table. it actually speeded up testgtk
5177 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
5178 pointers across invokations of gtk_type_node_next_and_invalidate() and
5179 therefore gtk_type_unique()!
5181 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
5182 inheritance of a class pointer.
5183 (GTK_OBJECT): modifications for speedups.
5184 (GTK_IS_OBJECT): likewise.
5185 (GTK_OBJECT_CLASS): likewise.
5186 (suggested by owen).
5188 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
5190 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
5192 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
5193 since its derivation changed 4 month ago ;(. showed up with the unique
5194 type name checking code in gtk_type_unique().
5196 * random guint->GtkType and macro fixups.
5198 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
5200 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
5201 Configure events that would result in a negative
5204 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
5206 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
5207 "glibconfig.h" and another about writing another IRC
5210 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
5212 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
5213 parameters to log are doubles. Digital Unix apparently
5214 is missing the argument in its prototype.
5216 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
5218 * gtk/gtklabel.c (gtk_label_state_changed): Don't
5219 force a clear until the widget is actually on
5222 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
5224 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
5225 to make this consistent with the gtk-1-0 tree.
5227 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
5229 * configure.in acheader.h gdk/gdkwindow.c
5230 Check for Shape extension both on the client and server
5231 side. (And, more importantly, check for the shape extension
5232 so we may include -lXext even when compiling with --disable-xshm)
5234 Don't set override_redirect on all shaped windows. It isn't
5237 * gdk/gdkwindow.c: Set ->colormap to NULL for root
5238 and foreign windows. Use this to check if we
5239 need to get the colormap from X.
5241 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
5243 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
5244 between the default and the button always in GTK_STATE_NORMAL.
5246 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
5249 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
5251 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
5252 Fix a buffer overflow on pixmaps that claim to have
5253 more than 31 characters per pixel.
5255 (gdk_pixmap_read_string): Don't wrap around strings longer
5256 than half of address space ;-)
5258 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
5259 that were used for printing integers.
5266 int foo (void) { ... }
5268 Even where there were proper prototypes elsewhere.
5270 * gdk/gxid.c (handle_claim_device): Some extra checks.
5271 It isn't safe against being fed bad X id's, but at
5272 least it should be safe against deleting all your
5275 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
5277 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
5278 to set the adjustments value when there is no current emission.
5279 [ Removed by mutual agreement owt 5/3/1998 ]
5281 * gtk/gtksignal.c: added new functions to retrive the number of
5282 existing emissions for a certain signal.
5283 (gtk_signal_n_emissions): new function.
5284 (gtk_signal_n_emissions_by_name): new function.
5286 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
5288 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
5289 set the current focus_child of a container, does proper referencing and
5290 adjusts the vadjustment/hadjustment associated with the focus widget.
5292 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
5293 containers via gtk_container_set_focus_child.
5295 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
5298 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
5299 child since not every child removal goes through this function (this
5300 showed up after gtk_container_set_focus_child() started to reference the
5301 focus_child of a container).
5303 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
5304 of a container from gtk_container_remove into this place.
5306 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
5308 * gtk/gtksignal.c: added new functions to operate on intermediate
5309 function pointers. implemented incremental blocking.
5310 (gtk_signal_disconnect_by_func): new function.
5311 (gtk_signal_handler_block_by_func): new function.
5312 (gtk_signal_handler_unblock_by_func): new function
5314 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
5316 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5317 Always show the scrollbars when the policy is
5318 GTK_POLICY_ALWAYS...
5320 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
5322 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
5323 "value_changed" if we really passed a new value.
5324 (gtk_adjustment_changed): new function to emit the "changed" signal.
5325 (gtk_adjustment_set_value): new function to emit the "value_changed"
5328 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
5330 * gtk/gtkcombo.c: Further changes to the way the window
5331 is popped up so that it will be compatible with
5332 auto-scrolling in the future.
5334 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
5336 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
5337 the combo-list is empty since that will cause the combo to operate
5338 on a non existing GtkList window.
5339 (gtk_combo_get_pos): provide the combo list with a usfull default
5341 (gtk_combo_popup_button_press): grab the focus.
5342 (gtk_combo_activate): grab the focus.
5344 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
5346 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
5347 function to reset the RC styles for a heirarchy
5349 Clear the window background if necessary in
5350 gtk_window_style_set.
5352 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
5353 rereads all previously read RC files.
5355 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
5356 (Should it just be called gdk_get_toplevels?)
5358 * gtk/testgtk.c: New test to reload RC files.
5360 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
5363 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
5364 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
5365 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
5366 the GTK_ prefix (this solution involved less changes in the
5367 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
5368 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
5369 from lars & stefan to support the derivation of GtkCtree.
5373 initial import of a tree widget derived from gtkclist, courtesy
5374 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
5377 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
5379 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
5381 (gtk_list_insert_items):
5382 (gtk_list_remove_items_internal):
5383 (gtk_list_clear_items):
5384 remove a possible pointer grab, we might get thrown into a loop
5386 (gtk_list_button_press): grab the pointer *before* selecting the child,
5387 because selection of items may cause the lists children to change,
5388 resulting in a grab release.
5389 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
5391 (gtk_list_shutdown): remove all children from the list.
5392 (gtk_real_list_unselect_child):
5393 (gtk_real_list_select_child): *always* put our internal structures into
5394 sane state *before* signal emisions (i.e. list->selection updates prior
5395 to gtk_list_item_[de]select() calls).
5397 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
5398 focused child walks out of the window.
5399 removed CAN_FOCUS for the combo arrow's button since it doesn't react
5400 to keyboard events ("clicked" connection is missing).
5402 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
5404 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
5405 getting colormap for FOREIGN windows to go along with
5406 Raster's fix for visuals.
5411 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
5413 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5414 Check to catch the case when the viewport fits in either
5415 direction or both, instead of flip-flopping infinitely.
5417 Only show/hide the scrollbars once at the end.
5419 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
5421 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
5422 Include the scrollbars in the foreach call.
5423 (gtk-fortier-980405-0.patch;
5424 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
5427 really should also include its tabs, but that might cause
5428 problems for programs if they
5430 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
5432 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
5433 resize if the size actually changed.
5434 (gtk-johannes-980414-0.patch ;
5435 johannes@nada.kth.se (Johannes Keukelaar) )
5437 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
5439 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5440 ltmain.sh ltconfig config.sub config.guess:
5442 Reverted back to libtool-1.2 (plus minor patches) so as not to
5443 force the issue for everyone else.
5445 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
5447 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5448 Updated to libtool 1.2a.
5450 * gtk/gtkclist.c: Draw the in-between lines with style->base
5451 instead of style->white.
5453 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
5455 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
5456 Cache the colormap and children of a window locally
5457 instead of fetching them from the server when needed.
5458 Huge performance difference for creating/destroying
5461 * gtk/gtkstyle.c: Find the depth from the cached
5462 visual, instead of asking the server.
5464 * gtk.m4: Distribute the new version which tries to
5465 figure out what went wrong and give helpful error
5468 * ltmain.sh ltconfig config.sub config.sh:
5469 Updated to libtool 1.2a
5471 * gtk/gtktext.c: Fixed a bug where the drawn level
5472 was being messed up when the text was scrolled
5475 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
5477 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
5478 the filesystem under you (fix from Josh)
5480 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
5482 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
5483 if the viewport already exists before iterating over it, maybe we
5484 haven't been constructed yet.
5486 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
5488 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
5489 the GtkBin widget already has a child.
5491 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
5492 check that child->parent == NULL;
5494 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
5496 * gtk/gtkselection.c (gtk_selection_clear): Only return
5497 FALSE when the clear event is been rejected, not when
5498 widget has already lost the selection. (Which should
5499 only happen when we are setting the selection to another
5502 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
5504 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
5506 Removed the "check visibility after gtk_widget_unparent" bug
5507 in hopefully the last three places.
5509 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
5511 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
5514 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
5516 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
5517 for CAN_FOCUS widgets.
5519 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
5520 adjustments for the table.
5521 (create_list): feature automatic adjustment of the scrolled window to
5522 always contain the focused child.
5523 (create_main_window): keep the focussed button always inside of the
5526 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
5527 adjustments, to contain the allocation of the currently focused child.
5528 (gtk_container_set_focus_hadjustment): new functin to set the
5529 horizontal focus adjustment.
5530 (gtk_container_set_focus_vadjustment): new functin to set the vertical
5533 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
5534 clamp the currents adjustment page into a specific range.
5536 * random GtkType fixups for gtk_*_get_type() functions.
5538 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
5540 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
5541 Account for the fact that gtk_tree_item_remove_subtree
5542 will be called recursively.
5544 Handle removing a collapsed subtree.
5546 (From Andy Dustman <adustman@comstar.net>)
5548 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
5549 root tree when removing items from a non-previously
5552 * gtk/testgtk.c: Added a remove_subtree button.
5554 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
5556 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
5557 before object removing data. This change fixes a bug where
5558 removing the last weak references would cause it to be
5561 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5563 * gdk/Makefile.am: Removed mostly useless dependency that
5564 was causing problems for SGI's make, when used with
5565 the 'make dist' form of GTK+. (Dependency caused dependencies
5566 to be redone when BUILT_SOURCES changed)
5568 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
5570 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
5573 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
5574 to gtkitem.c so dragging can also work in lists.
5576 * gtk/gtklist.[ch]: Track child enter events and use
5577 those to allow dragging the selection.
5579 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
5581 * gtk/gtktext.c: Try enabling background pixmaps for editable text
5582 widgets. There is a bit of flashing, but not too bad. If you
5583 don't want the flashing, you can always not set a background
5586 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
5588 * gtk/gtktext.c: Fixed a bug where the drawn level
5589 was being messed up when the text was scrolled
5592 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
5594 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
5595 bug: There is no need to set the ExposureMask in the XGrabPointer
5596 (this caused DnD programs to crash).
5598 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
5600 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
5601 field to be of type guint.
5602 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
5604 (gtk_accelerator_table_install): keep a per object list of accelerator
5605 tables that refer to this object.
5606 (gtk_accelerator_table_remove): remove the accelerator table from the
5608 (gtk_accelerator_table_clean): warn if there are any object references
5609 left in an accelerator table upon destruction.
5610 (gtk_accelerator_tables_delete): new function to delete object
5611 references from the accelerator tables associated with this object.
5613 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
5614 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
5615 of an accelerator can be prevented by gtk_signal_emit_stop().
5616 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
5617 so there are no stale pointers in accelerator tables left.
5619 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
5621 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
5622 visible before we unparent it.
5624 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
5626 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
5627 running_timeouts list with the tmp_list link itself, not with a new
5628 GList structure pointing to our link. that would fill up memory and
5629 causes the GList.data fields of the running_timeouts list to point to
5630 GList structures and not GtkTimeoutFunction structures which is a
5632 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
5635 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
5637 * gtk/gtkradiomenuitem.h:
5638 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
5639 ala gtk_radio_button_set_group.
5640 (gtk_radio_menu_item_init): assure that we always have at least a group
5641 that points to self.
5643 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
5644 added g_return_if_fail() statements.
5645 (gtk_radio_button_init): assure that we always have at least a group
5646 that points to self.
5648 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
5650 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
5652 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
5654 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
5655 (Damon Chaplin), which i got wrong when applying Damon's patch the last
5658 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5660 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
5661 that when we are running with a non-installed colormap,
5662 in 8-bit pseudo-color, we actually are using the system
5663 visual. (Fixes *Bad Match* errors on Digital Unix machines
5664 with multiple 8-bit pseudo-color visuals)
5666 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
5668 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
5669 by whoever thought that randomly changing ints to unsigned int
5670 without reviewing the code was a good idea. It is, btw not
5671 mentioned in the ChangeLog as usual, but I know it was not Elliot
5672 the culprit this time.
5674 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
5676 * Released GTK+ 1.0.0