1 Wed Dec 2 01:39:02 1998 Tim Janik <timj@gtk.org>
4 * gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
6 * incremented version number to 1.1.6 and made Gtk
7 dependant on GLib 1.1.6.
9 * gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
10 from guint16 to gint16, since sizes bigger than 32767 are not supported
11 anyways, and aritmethics with intermediate negative values are possible
14 Tue Dec 1 00:00:04 1998 Tim Janik <timj@gtk.org>
16 * gtk/gtkscrolledwindow.c:
17 implementation of GTK_POLICY_NEVER functionality, added rationales
18 on the policy and size requisition handling at the top.
19 (gtk_scrolled_window_size_request):
20 we assume a default minimum for our child's width and height
21 if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
22 specified the dimension explicitely.
23 (gtk_scrolled_window_size_allocate):
24 do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.
26 * gtk/gtkviewport.c (gtk_viewport_size_request): report the real
27 size we require (including the child).
30 (gtk_clist_size_request): report the real size required.
32 * gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.
34 * gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
35 need to be a static variable.
37 Mon Nov 30 22:41:25 1998 Tim Janik <timj@gtk.org>
49 * gtk/gtkscrolledwindow.h:
50 * gtk/gtkscrolledwindow.c:
51 s/scroll_adjustements/scroll_adjustments/
52 s/scroll_adjustments/set_scroll_adjustments/g
54 Tue Dec 1 22:45:58 1998 Lars Hamann <lars@gtk.org>
56 * gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
58 * gtk/gtkclist.c (gtk_clist_row_move): new public function.
59 emit a row_move signal
60 (real_row_move): move source_row to dest_row
61 (gtk_clist_swap_rows): use gtk_clist_row_move calls.
62 (gtk_clist_columns_autosize): resize all columns to their optimal
64 * gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
66 * gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
68 Tue Dec 1 02:40:22 PST 1998 Manish Singh <yosh@gimp.org>
72 * gtk/Makefile.am: Put -DFOO stuff into Makefile.am INCLUDES.
73 Separate vars for each, for granularity.
75 Tue Dec 1 02:19:54 1998 Tim Janik <timj@gtk.org>
77 * gtk/gtkenums.h: fixed a stupid error of mine about the run type
80 1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
82 * {gdk,gtk}/*.c: Make read-only data structures "static const" to
83 allow them to be shared, mainly including (but not limited to) the
84 GtkTypeInfo structures for each class.
86 * gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
88 Mon Nov 30 12:17:10 1998 Jeff Garzik <jgarzik@pobox.com>
91 Surround debug variable with #ifdef to silence gcc.
93 * gtk/gtknotebook.c (gtk_notebook_reorder_child):
94 Added initializer to quiet gcc warning.
95 Added assertion to check for null pointer deref.
97 Mon Nov 30 10:11:29 1998 Tim Janik <timj@gtk.org>
99 * gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
100 system specific includes.
102 * gtk/gtksignal.c: asured that stop and restart emissions are also
103 checked and processed for not connected objects. fixed up restart
104 emission administration. invoke emission hooks after emission, hooks
105 are not supposed to muck around with the current emission, and
106 may also not cause emission restarts. fixed up stop emission
109 Mon Nov 30 06:20:36 1998 Tim Janik <timj@gtk.org>
111 * gtk/testgtk.c: added an event watcher for enter/leave based on
112 signal emission hooks.
114 * gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
115 GTK_RUN_NO_HOOKS signal.
118 * gtk/gtksignal.c: implemented emission hooks, new hooks can be added
119 to a signal with gtk_signal_add_emission_hook or
120 gtk_signal_add_emission_hook_full, and can be removed again with
121 gtk_signal_remove_emission_hook.
123 * gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
124 an appropriate mask for signal runtypes for a long time now.
125 added GTK_RUN_NO_HOOKS value, which is used to flag signals
126 that do not allow the running of signal hooks.
128 1998-11-26 Michael Krause <m.krause@tu-harburg.de>
130 * gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
131 argument a gint: switch_page signal delivers valid page numbers
134 Sun Nov 29 06:12:01 1998 Tim Janik <timj@gtk.org>
136 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_[hv]adjustment):
139 * gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
140 check, people must use gtk_type_init().
141 fixed up type allocation for foreign fundamentals.
144 * gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
145 for internal use by containers, that want to assign specific composite
146 names to their composite children.
147 added gtk_widget_get_composite_name() which will return a newly
148 allocated string, containing the composite name of a widget. valid
149 composite names can only be retrived from widgets that have a parent
150 assigned and are flagged as GTK_COMPOSITE_CHILD.
152 * gtk/gtkcontainer.h:
153 * gtk/gtkcontainer.c: added a new function
154 gtk_container_child_default_composite_name() which will return a
155 newly allocated string, holding the composite name of a containers
156 child. a default implementation is provided which will compose the
157 composite name out of the widgets type and its sequential children
158 id. this implementation can be overidden through a new class function
161 Sat Nov 28 10:57:59 1998 Owen Taylor <otaylor@redhat.com>
163 * gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
164 expose_event handler - we had two expose_event
167 Sat Nov 28 03:13:42 1998 Tim Janik <timj@gtk.org>
169 * gtk/gtkscrolledwindow.h:
170 * gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
171 it inherits from GtkBin now.
173 * gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
175 (gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
176 added check so a child gets only drawn if it's visible.
179 * gtk/gtkwidget.c: removed gtk_widget_draw_children().
182 * gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
185 * gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
186 added internal function gtk_widget_reset_shapes() from gtkstyle.c.
189 * gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
190 argument, changed callers.
192 * gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
193 it will issue a warning now.
195 * gtk/gtkcompat.h: new file to #define aliases for historic
198 * changed 8 function names for consistency and provided aliases to keep
199 source compatibility in gtkcompat.h:
200 (gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
201 (gtk_container_set_border_width): renamed from gtk_container_border_width
202 (gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
203 (gtk_packer_configure): renamed from gtk_packer_set_child_packing
204 (gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
205 (gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
206 (gtk_scale_get_value_width): renamed from gtk_scale_value_width
207 (gtk_window_set_position): renamed from gtk_window_position
209 * renamed a few recently added funtions for consistency:
210 (gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
211 (gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
212 (gtk_progress_configure): renamed from gtk_progress_reconfigure.
214 Fri Nov 27 18:57:20 PST 1998 Manish Singh <yosh@gimp.org>
216 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add_with_viewport):
217 check for existing viewport first, and don't add one if there
220 Sat Nov 28 00:06:49 1998 Tim Janik <timj@gtk.org>
223 * gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
224 gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
225 and gtk_widget_unlock_accelerators.
228 * gtk/gtklayout.c: implemented incremental freezing facility.
231 * gtk/gtktext.c: implemented incremental freezing facility.
234 * gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
238 deprecated gtk_entry_adjust_scroll().
240 * random GtkType, macro and indentation fixes.
242 Fri Nov 27 22:50:15 1998 Tim Janik <timj@gtk.org>
245 * gtk/gtkclist.c: implemented incremental freezing facility, added
246 a new class member (*refresh)() which takes over the thaw
247 functionality. the clist FROZEN flag got removed on the way.
248 * gtk/gtkctree.c: adaptions to feature the clist refresh functionality
249 and incremental freezing.
251 * gtk/gtkcalendar.c: implemented incremental freezing facility.
253 Fri Nov 27 11:41:27 1998 Raph Levien <raph@gimp.org>
255 * gdk/gdkinputcommon.h (gdk_input_common_init): Fixed it so that
256 it still includes the core pointer in gdk_input_devices even
257 if the XInput extension is not present in the X server.
259 Fri Nov 27 12:17:15 1998 Owen Taylor <otaylor@redhat.com>
261 * gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
262 get the source widget of a drag.
264 * gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
265 to restrict certain targets to the same widget or to
266 the same application.
268 * gtk/testdnd.c: Test gtk_drag_get_source_widget().
270 Thu Nov 26 19:11:46 1998 Lars Hamann <lars@gtk.org>
272 * gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
273 * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
274 instead of GTK_TYPE_POINTER in signal definitions.
275 (patch from James Henstridge <james@daa.com.au>)
277 Thu Nov 26 18:48:44 1998 Lars Hamann <lars@gtk.org>
279 * gtk/gtkclist.c (set_cell_contents)
280 * gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
281 if auto.resize == TRUE
283 * gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
284 don't draw tab, if show_tabs == FALSE
285 (bug reports from Alexis Mikhailov / Dave Cole)
286 (gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
287 the focus rectangle, not the hole tab.
289 Thu Nov 26 03:18:08 1998 Tim Janik <timj@gtk.org>
294 * gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
295 Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
297 * gtk/maketypes.awk: changed underline substitution, so we get
298 GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
299 * gtk/makeenums.pl: likewise.
300 * gtk/gtkctree.c: adapted type names accordingly.
302 Tue Nov 24 11:31:06 1998 Owen Taylor <otaylor@redhat.com>
304 * docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
306 * gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
307 some code duplication.
309 * gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
310 and child widgets when scrolling greater than 32k pixels.
312 * testgtk.c: Modified layout test to test scrolling over
315 Tue Nov 24 11:11:05 1998 Owen Taylor <otaylor@redhat.com>
317 * gtk/gtklayout.[ch]: Fixed up copyright message.
319 * gdk/gdkrgb.c (DM): Make the dither matrix constant
322 * gtk/gtkdnd.c: Make cursor bitmaps const.
324 * gdk/gdk.h gdk/gdkpixmap.c: Added const to
325 gdk_pixmap/bitmap_create_from_data.
327 Tue Nov 24 07:46:09 1998 Tim Janik <timj@gtk.org>
329 * docs/Changes-1.2.txt: added a section on scrolled windows and
332 1998-11-24 Andrew T. Veliath <andrewtv@usa.net>
334 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Include radio
335 buttons when setting relief for button items.
336 (gtk_toolbar_set_button_relief): Same.
338 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
340 * gdk/Makefile.am, gtk/Makefile.am:
341 Removed DEFS "+=" mess that breaks recent automakes.
342 INCLUDES is the correct way to add to CFLAGS from Makefile.am.
344 * gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
345 gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
346 gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
348 Include "config.h" instead of "../config.h".
349 Now that DEFS works again, automake will automatically pass us
350 the location of config.h in -I.
352 Mon Nov 23 22:10:09 1998 Owen Taylor <otaylor@redhat.com>
354 * gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
355 gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
357 Added layout widget for scrolling arbitrarily big areas.
358 Added plug/socket widgets for interprocess embedding.
360 These widgets still, at some point, need to be
361 made more pure in their use of GDK, as opposed
364 * gtk/testgtk.c: Added test for layout widget.
366 1998-11-23 Jeff Garzik <jgarzik@pobox.com>
368 * gtk/gtkclist.c: (gtk_clist_swap_rows): Bugfix from
369 Brandon Long <blong@fiction.net> - do the right thing with first
370 and last, which are the absolute values of row arguments row1
373 Mon Nov 23 04:24:55 PST 1998 Manish Singh <yosh@gimp.org>
375 * gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
376 default adjustment (from 0 to 100) instead. I'm not sure if this
377 is the correct level for the fix, but gtk_progress_bar_new()'s
378 original default behavior is restored.
380 1998-11-23 Martin Baulig <martin@home-of-linux.org>
382 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
383 we can check for latest GTK features.
385 1998-11-23 Havoc Pennington <hp@pobox.com>
387 * gtk/gtktoolbar.c: (gtk_toolbar_set_relief):
388 (gtk_toolbar_insert_element): When setting relief, also affect
391 Sun Nov 22 20:37:06 PST 1998 Manish Singh <yosh@gimp.org>
393 * gtk/gtkobject.h: remove extraneous comma
395 Mon Nov 23 05:21:50 1998 Tim Janik <timj@gtk.org>
397 * gtk/gtkcontainer.c:
398 (gtk_container_add_with_args):
399 (gtk_container_addv):
400 (gtk_container_add): removed assertements for constructed containers
401 again, since this essentially breaks the "child" arg.
403 * gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
404 reference count, we don't need to reference toplevels that already have
407 * gtk/gtkscrolledwindow.c: check for the composites existance in
408 _forall since we might not be already constructed.
410 Sun Nov 22 14:34:58 CST 1998 Shawn T. Amundson <amundson@gtk.org>
412 * Released GTK+ 1.1.5
414 * configure.in: require GLib 1.1.5
416 Mon Nov 23 03:21:17 1998 Tim Janik <timj@gtk.org>
418 * gtk/gtktext.c (gtk_text_destroy): disconnect hadj & vadj, not
420 (gtk_text_finalize): only unref the current_font if we have
423 Sat Nov 21 18:41:13 CST 1998 Shawn T. Amundson <amundson@gtk.org>
430 docs/gtk-config.1: Version incremented to 1.1.5
432 Sun Nov 22 16:21:28 1998 Tim Janik <timj@gtk.org>
434 * gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
435 ::text_yalign, ::activity_mode.
437 * gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
438 ::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
440 (gtk_progress_bar_new):
441 (gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
442 (gtk_progress_bar_construct): deprecated.
444 * gtk/gtkvscrollbar.c:
445 (gtk_vscrollbar_draw_step_back):
446 (gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
447 gtk_paint_arrow, to be consistent with hscrollbar.
450 added construct args ::hadjustment, ::vadjustment.
451 added args ::line_wrap, ::word_wrap.
452 (gtk_text_class_init): added scroll_adjustments signal.
453 (gtk_text_new): use gtk_widget_new.
454 (gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
455 so we don't screw the reference counts and don't leave signals connected.
456 (gtk_text_destroy): disconnect adjustments signals.
457 (gtk_text_finalize): unref adjustments.
459 * gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
460 added args ::indent, ::spacing, ::show_stub, ::reorderable,
461 ::use_drag_icons, ::line_style and ::expander_style.
462 (gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
465 * gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
467 removed ::vadjustment and ::hadjustment args, introduced
468 ::scroll_adjustments signal.
469 added ::shadow_type, ::selection_mode and ::row_height args.
470 added n_columns construct arg.
471 (gtk_clist_construct): call gtk_object_constructed().
472 (gtk_clist_set_row_height): if height is passed as 0,
473 revert to automatic height calculation.
474 (gtk_clist_destroy): before unrefing the adjustments, disconnect our
477 Fri Nov 21 22:34:58 1998 Tim Janik <timj@gtk.org>
479 * gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
481 (gtk_widget_destroy): assert that we only destroy constructed widgets.
483 * gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
484 to identify args that may only be used for construction.
485 GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
487 * gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
488 at the end if the object is not fully constructed.
489 (gtk_object_newv): likewise.
490 (gtk_object_destroy): assert that we only destroy constructed objects.
491 (gtk_object_init): setup GTK_CONSTRUCTED from the
493 (gtk_object_default_construct): new function to complete default
494 construction of an object by applying missing construtor args with
495 default values of 0, 0.0 or NULL.
496 (gtk_object_constructed): new function to mark an object as being
497 constructed (used from within constructors).
499 * gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
500 so it is immediatedly available for the caller.
502 * gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
503 the object initilizer (GtkObjectInitFunc takes a second arg now, the
504 real klass), and asure that object initializers may temporarily alter
507 Fri Nov 20 08:00:30 1998 Tim Janik <timj@gtk.org>
509 * gtk/testgtk.c: change all occourances of gtk_container_add (
510 scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
511 for widget!=(clist, ctree, text, viewport).
514 (gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
515 to add children to the scrolled window.
517 * gtk/gtkscrolledwindow.h:
518 * gtk/gtkscrolledwindow.c:
519 changed scrolled_window->viewport to scrolled_window->child, and use
520 gtk_widget_scroll_adjustements() to set the scroll adjustments for the
521 widget, we do not create an additional viewport anymore.
522 added ::hadjustment and ::vadjustment constructor args.
523 (gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
524 (gtk_scrolled_window_set_hadjustment):
525 (gtk_scrolled_window_set_vadjustment): new functions that superceed
526 gtk_scrolled_window_construct.
527 (gtk_scrolled_window_construct): deprecated this function.
529 * gtk/gtkhscrollbar.c:
530 * gtk/gtkvscrollbar.c:
533 support a constructor arg "::adjustment", and use gtk_widget_new() for
536 * gtk/gtkrange.c: added ::update_policy arg.
537 (gtk_range_set_adjustment): if adjustment is passed in as NULL, create
538 a default adjustment so this function can be used for derived widgets
539 that depend on the adjustment's existance.
540 (gtk_range_destroy): disconnect the adjustment signal, so we don't
541 get called after we got destroyed, we don't destroy the adjustment
542 in here, because it might have been provided from another widget.
544 * gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
545 (gtk_viewport_destroy): same as gtk_range_destroy.
547 * gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
550 * gtk/gtkwidget.c: changed gtk_widget_activate() to return a
551 gboolean, indicating whether this widget supports activation.
552 added gtk_widget_scroll_adjustements() to set the scrolling
553 adjustments of a widget.
555 Wed Nov 19 01:22:42 1998 Tim Janik <timj@gtk.org>
557 * gtk/gtkoptionmenu.c:
558 (gtk_option_menu_remove_contents):
559 (gtk_option_menu_update_contents): removed
560 gtk_container_[un]block_resize() pairs.
563 * gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
564 be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
567 * *.c: made deprecated functions issue a message:
568 gtk_clist_set_border, gtk_container_block_resize,
569 gtk_container_unblock_resize, gtk_container_need_resize,
570 gtk_object_class_add_user_signal, gtk_spin_button_construct,
571 gtk_scrolled_window_construct.
572 removed non-functional functions:
573 gtk_container_disable_resize, gtk_container_enable_resize,
574 gtk_clist_set_policy.
576 Wed Nov 18 22:54:36 1998 Tim Janik <timj@gtk.org>
578 * gtk/gtkbox.c (gtk_box_init):
579 * gtk/gtkdrawingarea.c (gtk_drawing_area_init):
580 * gtk/gtkeventbox.c (gtk_event_box_init):
581 * gtk/gtkfixed.c (gtk_fixed_init):
582 * gtk/gtkframe.c (gtk_frame_init):
583 * gtk/gtkhandlebox.c (gtk_handle_box_init):
584 * gtk/gtkpacker.c (gtk_packer_init):
585 * gtk/gtkmisc.c (gtk_misc_init):
586 * gtk/gtkpreview.c (gtk_preview_init):
587 * gtk/gtkprogress.c (gtk_progress_init):
588 * gtk/gtkprogressbar.c (gtk_progress_bar_init):
589 * gtk/gtkseparator.c (gtk_separator_init):
590 * gtk/gtktable.c (gtk_table_init):
591 * gtk/gtkviewport.c (gtk_viewport_init):
592 * gtk/gtkalignment.c (gtk_alignment_init):
593 removed setting of the GTK_BASIC flag.
597 removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
599 * miscellaneous GtkType and macro fixups.
601 Sat Nov 21 18:53:13 1998 Owen Taylor <otaylor@redhat.com>
603 * gdk/gdkwindow.c (gdk_window_get_deskrelative_origin):
604 Fixed so it at least works with window managers other
605 than Enlightenment, though it probably needs to be
608 1998-11-21 Andrew T. Veliath <andrewtv@usa.net>
610 * gtk/gtkhandlebox.[ch]: Add shadow_type and
611 gtk_handle_box_set_shadow_type function (plus a
612 GtkHandleBox::shadow arg) to allow configuration of shadow in the
615 Thu Nov 19 23:47:38 CST 1998 Shawn T. Amundson <amundson@gtk.org>
617 * gtk/gtkcalendar.c: Fix for marking days from
618 Dan Reish <dreish@izzy.net>.
620 Thu Nov 19 00:15:27 1998 Lars Hamann <lars@gtk.org>
622 * gtk/gtkctree.c (gtk_ctree_node_nth): return the nth GtkCTreeNode
623 in row_list. (from Samuel Solon <ssolon@usa.net>)
625 * gtk/gtkclist.c (gtk_clist_get_column_title): return column title
626 (gtk_clist_get_column_widget): return column widget
628 Wed Nov 18 11:54:57 1998 Owen Taylor <otaylor@redhat.com>
630 * gtk/gtkdnd.c (gtk_drag_find_widget): Accept drops
631 that are sent to a toplevel but are not within the
634 * gdk/gdkdnd.c gdk/gdk.h: Added support for a
635 XdndProxy atom which proxies the drag to another window.
637 1998-11-17 Federico Mena Quintero <federico@nuclecu.unam.mx>
639 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, now
640 that it is not needed.
642 Tue Nov 17 1998 The Rasterman <raster@redhat.com>
643 * gdk/gdk.h, gdk/gdkwindow.c: Added gdk_window_get_deskrelative_origin
644 function to correctly determine gdk window position relative to
645 its "root window" - contains check for an Enlightenment
647 * gtk/gtkhandlebox.c: changed gdk_window_get_origin ->
648 gdk_window_get_deskrelative_origin to get the origin of dragged
649 handleboxes correctly. Now it works correctly with E.
651 Tue Nov 17 1998 Tuomas Lukka <lukka@iki.fi>
653 * gtk/gtktypeutils.c: Fix vital bug where LOOKUP was used when
654 getting types even though we were not using real type names,
655 just the index. This caused random crashes when more than
656 256 types were defined.
658 1998-11-17 Martin Baulig <martin@home-of-linux.org>
660 * gtk/genmarshal.pl: Put output files in the current directory
661 and not in the $(srcdir) since the VPATH is ignored for built
664 Tue Nov 17 01:37:53 PST 1998 Manish Singh <yosh@gimp.org>
667 * gtk/Makefile.am: check for unchanged autogenerated files, so
668 we don't rebuild everything just for adding a new function
670 Mon Nov 16 19:19:00 CST 1998 Shawn T. Amundson <amundson@gtk.org>
673 gtk/gtkpixmap.c: Pixmaps now grey out when insensitive,
674 code thanks to GNOME stock by Eckehard Berns. New function
675 gtk_pixmap_set_build_insensitive to provide ability to turn
678 Tue Nov 17 00:06:29 1998 Lars Hamann <lars@gtk.org>
680 * gtk/gtknotebook.h (struct _GtkNotebook): new flags : homogeneous;
681 new guints : tab_hborder, tab_vborder; marked tab_border deprecated
682 (struct _GtkNotebookPage): new flags : expand, fill, pack
684 * gtk/gtknotebook.h/c
685 (gtk_notebook_set_homogeneous_tabs): new function. set homogeneneous
687 (gtk_notebook_set_tab_border): set tab_h/vborder to tab_border
688 (gtk_notebook_set_tab_hborder): new function. set tab_hborder
689 (gtk_notebook_set_tab_vborder): new function. set tab_vborder
690 (gtk_notebook_query_tab_label): new function. get tab_label widget.
691 (gtk_notebook_set_tab_label): new function. set tab_label widget.
692 (gtk_notebook_set_tab_label_text): new function. set tab_label text.
693 (gtk_notebook_query_menu_label): new function. get tab_label widget.
694 (gtk_notebook_set_menu_label): new function. set tab_label widget.
695 (gtk_notebook_set_menu_label_text): new function. set tab_label text.
696 (gtk_notebook_set_tab_label_packing): new function. set tab_label
697 fill, expand, fill_type
698 (gtk_notebook_query_tab_label_packing): new function. get tab_label
699 fill, expand, fill_type
701 (gtk_notebook_real_page_position): return logic page number
702 (gtk_notebook_search_page) search next/prev logic page
703 (gtk_notebook_update_labels): set logic page number.
704 (gtk_notebook_page_compare): renamed gtk_notebook_find_page
705 (gtk_notebook_set/get_child_arg): new args CHILD_ARG_TAB_EXPAND,
706 CHILD_ARG_TAB_FILL, CHILD_ARG_TAB_PACK
707 (gtk_notebook_button_press) (gtk_notebook_key_press)
708 (gtk_notebook_focus) (gtk_notebook_pages_allocate)
709 (gtk_notebook_calc_tabs) (gtk_notebook_switch_focus_tab)
710 use gtk_notebook_search_page
711 (gtk_notebook_page_allocate): fixed allocation bug
712 (gtk_notebook_set/get_arg): new args TAB_HBORDER, TAB_VBORDER.
713 (gtk_notebook_init): unset GTK_NO_WINDOW flag
714 (gtk_notebook_size_request): check whether page->child is visible.
715 changes due to tab h/vborder, homogeneous tabs
716 (gtk_notebook_paint): don't draw invisible tabs
717 (gtk_notebook_switch_page): calculate page_num if it's less than 0
718 (gtk_notebook_append_*) (gtk_notebook_prepend_*)
719 (gtk_notebook_insert_page): removed sanity checks
721 * gtk/testgtk.c (create_notebook): extended Notebook sample a bit.
723 Mon Nov 16 15:10:33 1998 Owen Taylor <otaylor@redhat.com>
725 * gtk/gtktext.c: Optimizations for [advance/decrement]_mark_n.
726 (gtk-mailund-980718-0, Thomas Mailund Jensen <mailund@daimi.aau.dk>)
728 * gtk/gtkfixed.c: Removed gtk_fixed_umap, which was
729 broken. (GtkWidget's default unmap handler should work fine).
730 Pointed out by Patrice Fortier <Patrice.Fortier@aquarel.fr>
732 Mon Nov 16 00:59:26 PST 1998 Manish Singh <yosh@gimp.org>
734 * gtk/gtkmenubar.[ch]: added shadow_type setting and
735 gtk_menu_bar_set_shadow_type function to allow shadow
736 configurability for menubars
738 * gtk/gtkviewport.h: use GtkShadowType enum instead of generic
741 Mon Nov 16 00:17:53 1998 Tim Janik <timj@gtk.org>
743 * gtk/gtktypeutils.c (gtk_type_new): relookup type node after
744 class creation and parent class' object initializer.
746 1998-11-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
748 * gtk/gtkpaned.c (gtk_paned_realize): Destroy the cursor after we
749 have assigned it to the window -- there is no point in keeping it around.
750 (gtk_paned_unrealize): No need to destroy the cursor here.
752 * gtk/gtkpaned.h (struct _GtkPaned): Removed the cursor field, as
755 Fri Nov 13 11:22:38 1998 Owen Taylor <otaylor@redhat.com>
757 * gdk/gdkpixmap.c: New function gdk_pixmap_foreign_new().
758 (gtk-blizzard-981005-0.
759 Christopher Blizzard <blizzard@applied-theory.com)
761 * gdk/gdk.h gdk/gdkx.h: Moved gdk_window_foreign_new and
762 gdk_pixmap_foreign_new to gdkx.h.
764 Fri Nov 13 16:06:48 1998 Owen Taylor <otaylor@redhat.com>
766 * gtk/Makefile.am: Added rules to generate an empty
767 GTK+ theme called "Default" upon installation.
769 * gtk/gtkrc.c (gtk_rc_parse_style): Fix inheritance
770 of fonts and fontsets.
771 (gtk-matsu-980924. Takashi Matsuda matsu@arch.comp.kyutech.ac.jp)
773 * gtk/gtkmain.c: Change test to detect glibc's
774 utf8 based mb* functions to be more specific.
776 * gtk/gtkwindow.[ch] gtk/gtkfixed.c: Indentation
779 Fri Nov 13 16:43:36 1998 Lars Hamann <lars@gtk.org>
781 * gtk/gtktogglebutton.c (gtk_toggle_button_realize): don't
783 (gtk_toggle_button_map) (gtk_toggle_button_unmap): show/hide
784 event_window if draw_indicator is set
785 (gtk_toggle_button_set_mode):
787 Thu Nov 12 15:33:54 PST 1998 Manish Singh <yosh@gimp.org>
789 * gtk/gtkitemfactory.c: cast NULL to GtkItemFactoryCallback to
790 ensure proper type (SunPro cc complains)
792 * gtk/gtklist.c: removed bogus '*' from "*GTK_CONTAINER_CLASS"
794 * gtk/gtktogglebutton.c: use our own draw method so we get proper
795 redraws on active state
797 Thu Nov 12 00:26:13 1998 Lars Hamann <lars@gtk.org>
799 * gtk/gtkstyle.c (gtk_default_draw_box_gap): use GtkPositionType
802 * gtk/gtknotebook.c (gtk_notebook_draw_tab): fixed gap_side for
805 Wed Nov 11 19:54:58 1998 Lars Hamann <lars@gtk.org>
807 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init)
808 (gtk_scrolled_window_set_arg) (gtk_scrolled_window_get_arg):
809 added ARG_WINDOW_PLACEMENT
811 * gtk/gtkclist.c (size_allocate_columns): resize column if column
812 button > column width and auto_resize is set
813 (real_clear) (column_auto_resize) (gtk_clist_optimal_column_width):
814 consider column button width of auto resized columns
815 (gtk_clist_parent_set): removed
817 * gtk/gtkctree.c (gtk_ctree_insert_node): call column_auto_resize.
818 (auto_resize_columns): auto_resize all columns
819 (real_tree_collapse) (gtk_ctree_remove_node): call auto_resize_columns
820 (column_auto_resize): respect column button width of auto resized
823 1998-11-10 Martin Baulig <baulig@merkur.uni-trier.de>
825 * gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_4): Define this so
826 we can check for latest GTK features.
828 Mon Nov 9 00:39:20 1998 Lars Hamann <lars@gtk.org>
830 * gtk/gtkenums.h : new enum GtkCornerType
831 * gtk/gtkscrolledwindow.h (struct _GtkScrolledWindow): added
833 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_placement):
834 new method to set window_placement.
835 (gtk_scrolled_window_viewport_allocate)
836 (gtk_scrolled_window_size_allocate): few changes due to
838 * gtk/testgtk.c (remove_selection): fixed while loop.
840 Sat Nov 7 21:55:00 PST 1998 Manish Singh <yosh@gimp.org>
842 * gtk/gtkclist.c: check if column[i].button is valid before calling
843 gtk_widget_intersect on it in gtk_clist_draw
845 * gtk/gtkdnd.c: removed unused variable empty_bits
847 * gtk/gtkrc.c: we should use gslist_* functions with GSLists...
849 * gtk/gtktypeutils.[ch]: makes more send for gtk_type_is_a to return
850 a boolean (thanks to Elrond for noticing this)
852 1998-11-07 Jay Cox <jaycox@earthlink.net>
854 * gtk/gtkwindow.c: forward declaration for gtk_window_paint
855 * gdk/gdkxid.c: declare xid_ht static
856 * examples/*/Makefile: get the link ordering right.
858 Sat Nov 7 16:31:56 1998 Stefan Jeske <stefan@gtk.org>
860 * gtk/gtkclist.c (gtk_clist_realize): Set background of
861 title button window to GTK_STATE_NORMAL instead of
862 GTK_STATE_SELECTED to avoid ugly flicker.
864 Fri Nov 6 23:29:40 1998 Lars Hamann <lars@gtk.org>
866 * gtk/gtkclist.c (real_clear) (adjust_adjustments): resize clist
867 if adjustments are NULL and list size has changed
868 (gtk_clist_size_request): return real list requsition,
869 if adjustments are NULL.
870 (size_allocate_columns): use button->requisition.with, if column
872 (list_requisition_width): new function. return full list width.
873 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): do not
874 auto create adjustments.
875 (gtk_clist_motion) (move_vertical) (move_horizontal):
876 check adjustment != NULL.
878 Thu Nov 5 12:06:16 1998 Owen Taylor <otaylor@redhat.com>
880 * gtk/gtkcheckbutton.c (gtk_check_button_draw_focus): Queue
881 a clear/redraw, not just a redraw, so the focus
882 gets undrawn properly.
884 * gtk/gtktogglebutton.c (gtk_toggle_button_unrealize):
885 Chain to gtk_widget_unrealize() instead of duplicating
888 Wed Nov 4 14:34:51 1998 Owen Taylor <otaylor@redhat.com>
890 * gdk/gdk.c gdk/gdkprivate.h gdk/gdkwindow.c: Removed
891 last vestiges of old DND.
893 Tue Nov 3 12:27:52 1998 Owen Taylor <otaylor@redhat.com>
895 * gtk/gtkentry.c: Restored inner border to entries,
896 erase cursors to background image.
898 Fri Oct 30 12:09:21 1998 Owen Taylor <otaylor@redhat.com>
900 * gtk/gtkentry.c gtk/gtkstyle.[ch]: removed paint_entry() -
901 it was identical to paint_flat_box().
903 * gtk/gtkstyle.c: Coding style fixups.
905 * gtk/gtkwindow.c (gtk_window_move_resize): removed useless
908 * gtk/gtkframe.c gtkstyle.[ch] gtknotebook.c:
909 Change 'side' for paint_[box/shadow]_gap and paint_extension
910 to be GtkPositionType instead of a random int.
912 * gtk/gtkaspectframe.c (gtk_aspect_frame_paint): Use
913 "frame" as detail - an aspectframe should draw identical
916 Tue Oct 27 09:58:11 1998 Owen Taylor <otaylor@redhat.com>
918 * gdk/gdkwindow.c (gdk_window_merge_child_shapes): renamed
919 from combine_child_shapes().
921 * gdk/gdkwindow.c: Merge propagate_shapes() and
922 propagate_combine_shapes() to remove code duplication.
924 Thu Nov 5 14:31:57 PST 1998 Manish Singh <yosh@gimp.org>
926 * gdk/gdk.c: sometimes we get a KeyRelease before a KeyPress in
927 gdk_event_translate, and the USE_XIM buffer isn't allocated yet.
928 So allocate some mem if it's not already done.
930 * clist scrollbar merges from HEAD
932 Tue Nov 3 13:16:36 PST 1998 Manish Singh <yosh@gimp.org>
934 * gtk/Makefile.am: remove explict -ldl, gmodule takes care of that
936 * gtk/gtkdnd.c: start TARGET_MOTIF_SUCCESS from 0x40000000 instead
937 of 0x80000000, so we stay within the bounds of a postive signed
938 int (it broke some compilers)
941 * gtk/gtkoptionmenu.c: merges from HEAD to make option menus work
942 when some of the menuitems are hidden
944 * gtk/gtkthemes.h: don't include dlfcn.h explictly, gmodule takes
947 * gtk/gtkwidget.c: add a dummy continue after the line label
948 next_rect, since some compilers don't like label: }
950 Sun Nov 1 20:05:55 PST 1998 Manish Singh <yosh@gimp.org>
952 * Okay, so we need the X11R6 keysyms so programs don't have to
953 worry about them. They don't conflict anyway. Reverted the #ifdef
956 * gdk/Makefile.am: remove the BUILT_SOURCES rule, and make a
957 special rule for them (X-derived-headers)
959 Sun Nov 1 05:30:32 PST 1998 Manish Singh <yosh@gimp.org>
961 * gdk/Makefile.am: changed the awk scripts to generate gdkcursors.h
962 and gdkkeysyms.h into sed scripts, since the awk scripts weren't
963 portable, and we really shouldn't be using awk anyway.
966 * makekeysyms.awk: bye bye
968 * gtk/gtkaccelgroup.c
971 * gtk/gtkwindow.c: don't use X11R6 keysyms if they aren't there
973 Sat Oct 31 15:22:14 PST 1998 Manish Singh <yosh@gimp.org>
975 * gdk/Makefile.am: do the same built sources trick for gdkcursors.h
976 and gdkkeysyms.h. Remove those files from CVS.
978 Sat Oct 31 14:44:01 PST 1998 Manish Singh <yosh@gimp.org>
980 * gdk/gdk.c: move prototype of gdk_wm_protocols_filter outside
981 of the USE_XIM #ifdef
983 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
984 even with --include-deps. Slightly different from timj's fix, to avoid
985 circular dependency with gtkmarshal.c
990 * gtk/gtkfontsel.[ch]
994 * gtk/testgtk.c: merges from HEAD
997 * gtk/gtkradiomenuitem.c
998 * gtk/gtktreeitem.c: cleanups
1000 Wed Oct 28 23:32:19 PST 1998 Manish Singh <yosh@gimp.org>
1002 * gdk/gdkrgb.c: Oops. s/BIGENDIAN/BIG_ENDIAN/
1004 Wed Oct 28 19:04:49 PST 1998 Manish Singh <yosh@gimp.org>
1006 * configure.in: AIX has libpthreads, to make sure you can have
1007 more than one thread. Also add -D_THREAD_SAFE, and reorder
1008 configure.in so CFLAGS doesn't get clobbered when we actually
1011 * gdk/gdkimage.c: initialize the bpp and byte_order fields properly
1014 * gtk/testdnd.c: removed unused variable "buf"
1016 Mon Oct 26 16:46:15 1998 Owen Taylor <otaylor@redhat.com>
1018 * gtk/gtkcontainer.c (gtk_container_unregister_toplevel):
1019 remove_link(), not remove()
1021 Thu Oct 22 02:27:30 PDT 1998 Manish Singh <yosh@gimp.org>
1023 * gdk/gdkrgb.c: use glib endian stuff
1025 * configure.in: don't need to check for endianness anymore
1027 * gtk/gtkstyle.h: removed #pragma }, causing a silly warning
1029 Wed Oct 21 17:44:27 1998 Owen Taylor <otaylor@redhat.com>
1031 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Reset
1032 all toplevel widgets, not toplevel windows. (I.e.,
1033 plugs should be reset)
1035 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Yes, we
1036 _do_ need to notify the other toplevels - by the time
1037 the get the client messages, the RC file dates will
1040 * gtk/gtkcontainer.h: Added a function call to list
1041 every toplevel widget.
1043 * gdk/gdk.c (gdk_event_send_client_message_to_all_recurse):
1044 Don't send client messages to _every_ window on display!
1046 Tue Oct 20 16:21:04 1998 Owen Taylor <otaylor@redhat.com>
1048 * gtk/gtkdnd.c (gtk_drag_source_event_cb): Don't start drags
1049 when dragging across widgets, only in drags
1052 Tue Oct 20 15:59:49 1998 Owen Taylor <otaylor@redhat.com>
1054 * gtk/gtkdnd.c (gtk_drag_source_info_destroy):
1055 Emit "drag_end" signal at end of drag.
1057 Tue Oct 20 13:07:54 1998 Owen Taylor <otaylor@redhat.com>
1059 * gtk/gtkwindow.c (gtk_window_read_rcfiles): Look
1060 for "gtk-embedded" data currently set by
1061 GtkSocket, and use that to forward client message
1062 on to embedded windows. Only reset our own toplevel -
1063 the others will handle themselves. (Now that
1064 GtkMenus live in GtkWindows)
1066 Mon Oct 19 16:40:40 1998 Owen Taylor <otaylor@redhat.com>
1068 * gdk/gdkdnd.c (get_client_window_at_coords_recurse): Modify
1069 client window finding code so that it works with
1070 WM's other than fvwm.
1072 Sun Oct 18 22:48:27 1998 Owen Taylor <otaylor@redhat.com>
1074 * gtk/gtkdrawwindow.c (gtk_draw_window_get_type): Added
1075 the "GtkDrawWindow" class, which is a descendent
1076 of the Window class which leaves its background alone.
1077 Essentially, a toplevel drawing area, though it does
1078 allow adding a child.
1080 Sat Oct 17 00:40:51 1998 Owen Taylor <otaylor@redhat.com>
1082 * gtk/gtkrc.c (gtk_rc_style_init): Duplicate bg_pixmap_name when
1083 merging RC styles. Report new share/themes path for
1084 themes directory. Deref theme engines when appropriate.
1086 * gtk/gtkclist.c: Set all backgrounds in _style_set().
1087 Make sure that pixel for xor_gc is never 0.
1089 * gtk/gtkctree.c: Choose colors for plus/minus more
1090 carefully, in a hopefully style-independent fashion.
1091 (Still needs a bit more work)
1093 * gtk/gtkwidget.c: Don't send expose events to widgets
1094 which are about to be resized and redrawn. (Needs a
1097 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Avoid
1098 drawing on tabs for newly allocated, un-sized
1099 pages - we'll get the size wrong.
1101 Thu Oct 1 17:38:07 1998 Owen Taylor <otaylor@redhat.com>
1103 * gtk/gtkwidget.c (gtk_widget_redraw_queue_remove): Fixed
1104 up stupidities in last commit.
1106 Thu Oct 1 14:25:43 1998 Owen Taylor <otaylor@redhat.com>
1108 * gtk/gtkwidget.c: When handling queued resizes, account
1109 for handleboxes, where the widget heirarchy is different
1110 than the window heirarchy by just queueing a resize on
1111 the entire handlebox if the detached child is changed.
1113 - Remove widgets from the redraw queue when reparenting,
1114 even if not unrealizing. We queue a resize/redraw in
1117 Mon Sep 28 21:07:01 EDT 1998 The Rasterman <raster@redhat.com>
1118 * gtk/gtkstyle.c: added check to see if the widget has been shaped
1119 byt the app via gtk_widget_shape_combine_mask and if it has does
1120 not reset the shape on theme change.
1122 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
1124 * gtk/gtkfilesel.c: Keep a list of directories in which we never
1125 want to stat the entries (like /afs), and assume everything in
1126 those directories is a subdirectory.
1128 - When following a path, try to open components even when
1129 we don't find them in their parent's directory to
1130 support automounters.
1132 Fri Sep 11 15:36:33 1998 Owen Taylor <otaylor@redhat.com>
1134 * gdk/gdkinputgxi.h (gdk_input_gxi_grab_pointer): Hopefully
1135 now at least compiles again.
1137 * gdk/gdk.c (gdk_event_translate): Don't pass events
1138 on destroyed widgets to the gdk_input layer.
1140 Thu Sep 3 19:45:34 1998 Owen Taylor <otaylor@redhat.com>
1142 * gtk/gtkthemes.c: Use g_module instead of dlopen()
1144 Thu Sep 3 19:30:11 1998 Owen Taylor <otaylor@redhat.com>
1146 * gtk/gtktooltips.c (gtk_tooltips_expose): Check
1147 if we've changed widgets since the expose event
1150 Mon Aug 31 15:33:13 1998 Owen Taylor <otaylor@redhat.com>
1152 * gtk/gtkstyle.h (struct _GtkStyle): Reordered a bit
1153 to restore approximate bin compatibility with the
1154 non-themes branch. (This does break bin compat
1155 within the themes branch.)
1157 Sun Aug 30 16:48:27 1998 Owen Taylor <otaylor@gtk.org>
1159 * gtk/gtklabel.c (gtk_label_set): Eliminate a
1160 gdk_window_clear_area() that snuck in with the
1161 menu underlines merge.
1163 Mon Aug 24 23:37:26 1998 Owen Taylor <otaylor@redhat.com>
1165 * gtk/gtktext.c: Fixed some remaining background drawing,
1166 merges from main branch, cleanups.
1168 Mon Aug 24 10:55:51 1998 Owen Taylor <otaylor@redhat.com>
1170 * gtk/gtknotebook.c (gtk_notebook_draw_tab): Don't
1171 dereference NULL focus tab.
1173 * gtk/gtkscale.c (gtk_scale_[un]map): Add map/unmap
1174 functions since we need to both show/hide and
1175 queue a redraw. (There's some duplication of drawing here,
1176 we probably should only be queuing a redraw on the
1177 "value" portion of the scale.)
1179 Fri Aug 21 19:02:30 1998 Owen Taylor <otaylor@redhat.com>
1181 * gtk/gtkrange.[ch] gtk/gtkhscale.c gtk/gtkvscale.[ch]: Fit scales
1182 into the theme-drawing framework. We do this by making them,
1183 like check/radio-buttons, no-window widgets with subwindows. We
1184 then move the value by calling gtk_widget_queue_clear() and only
1185 redraw the value in our draw() / expose() handler. A virtual
1186 function clear_background is added which queues a clear on the
1187 "background" portion of the widget.
1189 Fri Aug 21 13:04:27 1998 Owen Taylor <otaylor@redhat.com>
1191 * gtk/gtktext.c (mark_bg_gc): Make background colors work
1192 again. (We can't always paint the background with a
1193 paint() function - only do that for selected text)
1195 Mon Aug 17 20:31:01 1998 Owen Taylor <otaylor@redhat.com>
1197 * gtk/gtktearoffmenuitem.c gtk/gtkclist.[ch] gtk/gtkctree.[ch]
1198 gtk/gtklabel.c gtk/gtkmenu.c: Merges from main branch.
1200 * Makefile.am (SRC_SUBDIRS): Removed themes from SRC_SUBDIRS.
1201 the themes can't be built as part of the same build since
1202 they depend on gdk_imlib.
1204 Fri Aug 14 12:44:30 1998 Owen Taylor <otaylor@redhat.com>
1206 * gtk/gtkthemes.c (gtk_theme_engine_get): Removed sample engine code
1209 * configure.in ltconfig.in ltmain.sh gdk/Makefile.am gtk/Makefile.am
1212 - Upgrade to libtool-1.2b + patch to add shared library dependencies
1213 for Linux. (Needs to be extended to other platforms where they
1216 - Check for -ldl so this branch should build on all platforms, though
1217 themes will work on all platforms they could work on.
1219 - Use -version and -release simultaneously: sonames stay as they are
1220 in the current scheme, but -lgtk-1.1 changes to -lgtk.
1222 - Added in extra -l flags to library LDFLAGS so we get shared library
1223 dependencies against X libs and -ldl. (But not libgtk against
1224 libgdk or libglib yet, since dependencies against uninstalled
1225 libraries aren't portable)
1227 Fri Aug 21 16:10:38 EDT 1998 The Rasterman <raster@redhat.com>
1228 * gtkrc.c - added api calls to find module and theme paths from gtk.
1229 nuked gtk_install_prefix global.
1231 Fri Aug 21 12:36:46 EDT 1998 The Rasterman <raster@redhat.com>
1232 * fixed gtk_install_prefix global.
1234 Thu Aug 20 19:27:49 EDT 1998 The Rasterman <raster@redhat.com>
1235 * added gtk_install_prefix global const variabel to find where gtk is
1238 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
1239 * added ~/.gtk/lib/themes/engines/ to the default searchpath for
1242 Thu Aug 20 18:27:29 EDT 1998 The Rasterman <raster@redhat.com>
1243 * made gtkrc scanner append dir that gtkrc is read from to pixmap path.
1245 Mon Aug 10 23:03:55 1998 The Rasterman <raster@redhat.com>
1246 * Fixed minor problem in gtkhandlebox.c with drawing, and some
1247 notebook stuff. Also pixmap theme is now "clean" again.
1249 Mon Aug 10 23:03:55 1998 Owen Taylor <otaylor@redhat.com>
1250 * gtk/gtkwidget.c (gtk_widget_clip_rect): Fixed up
1251 queued area resizing once more.
1253 Mon Aug 10 23:09:30 EDT 1998
1254 * Added a few drawing fixes for notebook and other widgets. finished
1255 pixmap theme up to the level that can be supported so far. (need to
1256 add path discovery 9ie where is the rc fiel from - add to pixmap
1257 path so we can get theimages from there too). then we can package
1258 themes. After that need to add to theme seartch path stuff in users
1261 Thu Aug 6 16:49:25 1998 Owen Taylor <otaylor@redhat.com>
1263 * gtk/gtktooltips.c (gtk_tooltips_expose): Draw into a
1264 drawing area, draw in an expose handler.
1266 * gtk/gtknotebook.c (gtk_notebook_expose): Check for
1269 Wed Aug 5 16:13:15 1998 Owen Taylor <otaylor@redhat.com>
1271 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel): Moved
1272 creation of GC's so that they will be set before
1273 they are used for map events (why are they used there?)
1275 * gtk/gtkwidget.c: Fixed mistake that caused widgets to
1276 be queued in multiple times in the queue.
1278 Wed Aug 5 14:23:52 1998 Owen Taylor <otaylor@redhat.com>
1280 * gtk/gtkstyle.c (gtk_default_draw_shadow): Don't set
1281 clip rects (or do anything) for shadow_none.
1283 Wed Aug 5 13:14:57 1998 Owen Taylor <otaylor@redhat.com>
1285 * gtk/gtkbutton.c (gtk_button_paint): Restored paint function.
1286 Yes, it was needed. draw() and expose() are _not_
1289 Sat Aug 1 17:44:31 EDT 1998 EDT 1998 The Rasterman <raster@redhat.com>
1290 * Wheeeeeeeeeeeeeeee fixed radiobittons to work in gimp again.
1292 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
1293 * YES YES YES YES YES clist borders work again! YES! YES YES! gimme
1294 more baby oooh yeah more more MORE YES YES.
1296 Fri Jul 31 19:45:12 EDT 1998 The Rasterman <raster@redhat.com>
1297 * hopefully fixed problem wiht togglebuttons acting like
1298 radiobuttons in gtktogglebutton.c
1300 Thu Jul 30 23:36:46 EDT 1998 The Rasterman <raster@redhat.com>
1301 * fixed another drawing buglet in the frame drawing code (actually
1302 in the clearing code but anyway in gtkstyle.c)
1304 Thu Jul 30 19:23:48 EDT 1998 The Rasterman <raster@redhat.com>
1305 * Fixed warning from colorsel widget...
1307 Thu Jul 30 19:10:42 EDT 1998 The Rasterman <raster@redhat.com>
1308 * Fixed defautl drawing code to no longer clobber the original style
1309 pixmap bgs as it did and added a helper funciton og gtkstyle.c to
1312 Thu Jul 30 18:09:21 1998 Owen Taylor <otaylor@redhat.com>
1314 * gtk/gtkrc.c gtk/gtkstyle.c: More mm fixups
1316 * gtk/gtktooltips.c: Pass a widget (the window) to the
1317 drawing function instead of the GtkTooltips.
1319 Thu Jul 30 17:27:10 1998 Owen Taylor <otaylor@redhat.com>
1321 * gdk/gdkwindow.c: Abstract out checking for shape
1322 extension into a function.
1324 * gtk/gtkwindow.c: Fix up gtk_window_expose()/draw().
1325 Remove extra callls to gtk_window_draw().
1327 Thu Jul 30 11:18:43 1998 Owen Taylor <otaylor@redhat.com>
1329 * gtk/gtkstyle.c gtk/gtkrc.c: Memory management fixups.
1331 * themes/th_main.c: Moved messages around so they are
1332 printed before destroying strings.
1334 Wed Jul 29 16:56:07 1998 Owen Taylor <otaylor@redhat.com>
1336 * gdk/gdk.c: Fairly simple implementation of expose compression.
1337 (No GraphicsExpose compression yet, always compress
1338 with the equivalent of XtCompressMultiple - no compression
1339 of Expose events across non-Expose events)
1341 * gdk/gdk.h gdk/gdkrectangle.c: gdk_rectangle_union()
1342 Find rectangle bounding two rectangles.
1344 * gtk/gtkstyle.c: Set clip rects for a few extra GC's
1345 in gdk_default_draw_shadow()
1347 Wed Jul 29 16:03:20 EDT 1998 The Rasterman <raster@redhat.com>
1348 * Fixed drawing functions to handle switching themes on the fly
1349 gracefully and look decent.
1351 Tue Jul 28 22:52:10 EDT 1998 The Rasterman <raster@redhat.com>
1352 * Added all the theme drawing code to all widgets, fixed up minor
1353 nigglies in some widgets when it comes to themes, seem to be
1354 running into some funky behavior with clipping rects in GC's. Too
1355 many files to list here. (all files that now use gtk_paint_* are
1358 Tue Jul 28 22:49:16 1998 Owen Taylor <otaylor@redhat.com>
1360 * themes/th_main.c themes/th_draw.c gtk/testgtkrc:
1361 Set up the demo theme so it is loaded from the RC file.
1363 * themes/th_draw.c: Alleviate the hardcoded paths a wee
1364 bit. (use $HOME/themes/)
1366 * gtk/gtkthemes.[ch] gtk/gtkmain.c: Load engines specified in
1367 the RC file via dlopen()
1369 Tue Jul 28 20:30:56 1998 Owen Taylor <otaylor@redhat.com>
1371 Internal handling of styles and RC styles pretty much
1372 completely reworked for Theme work.
1375 - Added routines for virtualization of RcStyle and Style handling.
1376 - Temporary "sample" inline theme-engine. (Does nothing
1377 but print out a few messages.
1380 - Made GtkRcStyle public, added flags to tell if particular
1381 colors have been set.
1382 - RC Styles are "transparent", and the final style for
1383 a widget is the composition of all matching styles
1384 - Added pointer to GtkThemeEngine, and gpointer engine_data
1385 to RC style and style.
1386 - Parse "engine" keyword, load the appropriate theme engine
1387 and call the engine's parser.
1390 - Keep a GtkRcStyle * in styles created from Rc Styles.
1391 - Load up images from RC file at style attachment time.
1392 - Call ->engine->foo() at appropriate times.
1393 - Don't use a GCache. All incarnations for a style are
1394 just linked together in a list, depend on the RC style
1395 code to find the existing copy.
1397 Tue Jul 28 14:41:54 1998 Owen Taylor <otaylor@redhat.com>
1399 * gtk/gtkwidget.[ch]: Added the concept of queued redraws
1400 of partial areas. This can be done either relative
1401 to the existing windows (gtk_widget_queue_clear[_area]())
1402 or relative to the future allocation of the widget
1403 (gtk_widget_queue_draw[_area]).
1405 The initial implementation is pretty braindead, but
1408 * gtk/gtkwidget.[ch]: Removed calls to gdk_window_clear_area()
1409 in favor of gtk_widget_queue_clear().
1411 * gtk/gtklabel.[ch] gtk/gtkpixmap.[ch]: Removed needs_clear
1412 flags in favor of gtk_widget_queue_clear()
1414 Tue Aug 4 19:12:14 1998 Owen Taylor <otaylor@redhat.com>
1416 * gtk/gtkwidget.c (gtk_widget_idle_draw): Fixed up
1417 handling of partially clipped areas.
1419 Thu Nov 5 18:52:35 1998 Lars Hamann <lars@gtk.org>
1421 * gtk/gtkclist.h (struct _GtkCListClass)
1422 * gtk/gtkclist.c (gtk_clist_class_init): removed scrollbar_spacing.
1424 Thu Nov 5 16:00:32 1998 Lars Hamann <lars@gtk.org>
1426 * gtk/gtkclist.h (struct _GtkCList): removed vscrollbar, hscrollbar,
1427 vscrollbar_policy, hscrollbar_policy. added h/vadjustment.
1429 * gtk/gtkclist.c (gtk_clist_class_init): added new args types
1430 "hadjustment" & "vadjustment"
1431 (gtk_clist_set_arg) (gtk_clist_get_arg): new object class
1432 set/get_arg functions
1433 (gtk_clist_construct): don't create/adjust scrollbars.
1434 (gtk_clist_set_hadjustment) (gtk_clist_set_vadjustment): new functions
1435 to set h/vadjustments
1436 (gtk_clist_get_vadjustment) (gtk_clist_get_hadjustment): new functions
1437 to query h/vadjustments
1438 (create_scrollbars): removed.
1439 (create_adjustments): replacement for create_scrollbars
1440 (gtk_clist_new): call gtk_clist_new_with_titles
1441 (gtk_clist_new_with_titles): don't warn on titles == NULL
1442 (move_horizontal): use CLAMP instead
1443 (gtk_clist_set_policy): deprecated method.
1444 use gtk_scrolled_window_set_policy instead.
1445 (vadjustment_value_changed): use clist->vadj.
1446 (adjust_scrollbars): renamed to adjust_adjustments
1447 (adjust_adjustments): former adjust_scrollbars
1448 (gtk_clist_destroy): unref adjustments
1449 (gtk_clist_size_allocate) (gtk_clist_map) (title_focus)
1450 (gtk_clist_unmap) (gtk_clist_size_request) (gtk_clist_focus)
1451 (gtk_clist_size_allocate) (gtk_clist_forall): don't use scrollbars
1452 (gtk_clist_thaw) (real_insert_row) (real_remove_row)
1453 (gtk_clist_set_row_height) (real_resize_column):
1454 call adjust_adjustments
1455 (gtk_clist_moveto): return if clist has no adjustments yet.
1456 (gtk_clist_parent_set): new GtkWidget::parent_set function.
1457 Autogenerate h/vadjustments if needed.
1458 (move_horizontal) (move_vertical): some cleanups
1460 * gtk/gtkviewport.c (gtk_viewport_set_arg) (gtk_viewport_new):
1461 call only gtk_viewport_set_h/vadjustment and let these functions
1463 (gtk_viewport_set_hadjustment) (gtk_viewport_set_vadjustment):
1464 generate a new adjustment if needed
1466 * gtk/gtkscrolledwindow.h ((struct _GtkScrolledWindow):
1467 use a guint bitfield for h/vscrollbar_policy and h/vscrollbar_visible
1469 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
1470 queue_resize if visibility of scrollbars changes
1471 (gtk_scrolled_window_remove): only call container_remove with
1472 scrolled_window->viewport automatically if viewport was autogenerated
1473 (gtk_scrolled_window_add): add widget as scrolled_window->viewport.
1474 auto create a viewport only if widget does not take h/vadjustments.
1475 (gtk_scrolled_window_construct): don't generate a viewport
1477 (gtk_scrolled_window_forall): call callback with viewport in any case
1478 (gtk_scrolled_window_set_arg): call gtk_container_add in case of
1480 (gtk_scrolled_window_size_allocate) (gtk_scrolled_window_size_request)
1481 (gtk_scrolled_window_map) (gtk_scrolled_window_unmap): check
1485 (create_ctree) (export_ctree) (create_clist): use a scrolled_window
1486 in conjunction with clists/ctrees
1488 * gtk/gtkfilesel.c (gtk_file_selection_init): use a scrolled_window
1489 in conjunction with clists
1491 * gtk/gtkfontsel.c (gtk_font_selection_init): use a scrolled_window
1492 in conjunction with clists
1494 Wed Nov 4 21:52:57 1998 Lars Hamann <lars@gtk.org>
1496 * gtk/gtkctree.c (gtk_ctree_unlink): fix focus_row adjustment
1497 (gtk_ctree_remove_node): select focus_row if needed
1498 (cell_size_request): only get pixmap size if pixmap != NULL
1500 Wed Nov 4 04:30:37 1998 Tim Janik <timj@gtk.org>
1502 * gtk/gtkwidget.c: added a bunch of checks for widget != NULL and
1503 GTK_IS_WIDGET (widget):
1505 Wed Nov 4 02:02:07 1998 Lars Hamann <lars@gtk.org>
1507 * gtk/gtkclist.c (real_remove_row) (sync_selection): set correct
1508 focus_row after a remove_row call.
1510 Sun Nov 1 21:00:06 GMT 1998 Austin Donnelly <austin@greenend.org.uk>
1512 * gtk/gtkoptionmenu.c
1513 * gtk/gtkmenushell.c: make option menus work when some of the
1514 menuitems are hidden - previously, option menu would popup too
1517 1998-10-31 Raja R Harinath <harinath@cs.umn.edu>
1519 * gtk/gtkfeatures.h.in: Remove `#pragma }'.
1521 * gdk/gdki18n.h: Update to use new `glib' widechar defines.
1523 * configure.in (CFLAGS): Don't use test -z "echo .. | grep". Use
1525 (wchar.h, wctype.h, iswalnum): Duplicate widechar tests from `glib'.
1526 (GDK_WLIBS): New variable. Lists extra libraries needed to use
1528 * gtk-config.in (--libs): List $GDK_WLIBS, too.
1530 Sat Oct 31 03:11:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>
1532 * Released GTK+ 1.1.3
1538 * docs/gtk-config.1: updated for v1.1.3
1542 * docs/Makefile.am: Includes new 'make release' as well as
1543 'make sanity'. Also handles html and text creation from html,
1544 and puts them into the distribution
1546 * docs/Makefile.sgml: removed, similar functionality is now in
1547 the Makefile.am file
1549 * docs/.cvsignore: ignore html and text directories
1550 * docs/glib.texi: removed (now in glib dist)
1552 Fri Oct 30 20:02:36 1998 Lars Hamann <lars@gtk.org>
1554 * gtk/gtklist.c (gtk_list_remove_items_internal):
1555 free undo_un/selection, unselect list_item before disconnect
1557 (gtk_list_destroy): removed. gtk_list_shutdown clears the list
1559 (gtk_list_signal_item_select) (gtk_list_signal_item_deselect)
1560 (gtk_list_signal_item_toggle) (gtk_list_signal_scroll_horizontal)
1561 (gtk_list_signal_toggle_focus_row) (gtk_list_signal_select_all)
1562 (gtk_list_signal_unselect_all) (gtk_list_signal_undo_selection)
1563 (gtk_list_signal_start_selection) (gtk_list_signal_end_selection)
1564 (gtk_list_signal_toggle_add_mode) (gtk_list_signal_scroll_vertical)
1565 (gtk_list_signal_extend_selection) (gtk_list_signal_focus_lost):
1566 new functions. These functions are signal connected to inserted
1567 list_items, to handle key bindings and GtkItem::de/select/toggle
1570 * gtk/gtklistitem.c (gtk_list_item_class_init): added missing
1571 gtk_object_class_add_signals call.
1572 (gtk_list_item_toggle_focus_row) (gtk_list_item_select_all)
1573 (gtk_list_item_unselect_all) (gtk_list_item_undo_selection)
1574 (gtk_list_item_start_selection) (gtk_list_item_end_selection)
1575 (gtk_list_item_extend_selection) (gtk_list_item_scroll_horizontal)
1576 (gtk_list_item_scroll_vertical) (gtk_list_item_toggle_add_mode):
1577 removed. These functions are handled via connected
1578 gtk_list_signal_* functions now
1580 Fri Oct 30 05:24:43 1998 Tim Janik <timj@gtk.org>
1582 * gtk/Makefile.am: cause the built sources to be rebuild when possible,
1583 even with --include-deps:
1584 $(libgtk_la_SOURCES): $(BUILT_SOURCES)
1586 Fri Oct 30 01:56:08 1998 Tim Janik <timj@gtk.org>
1588 * gtk/gtkobject.c (gtk_object_remove_no_notify): renamed from
1589 gtk_object_data_set_destroy to fit the gtkobject.h API.
1591 * applied patch from Damon Chaplin <DAChaplin@email.msn.com>:
1594 Added support for an extra 'base' filter which an application can
1595 set to restrict the fonts available to the user (e.g. a terminal
1596 program only wants the user to be able to select fixed-width fonts).
1597 The type of font (bitmap/scalable/scaled bitmap) is now
1598 also a part of the filter, so that an application can
1599 request that only scalable fonts are shown.
1600 There are new functions to set the base & user filters.
1601 I've also stopped the up/down key press signals getting
1602 to the clists since the font selection widget handles
1603 them itself. It acted a bit strangely before.
1605 Sun Oct 25 20:27:02 1998 Tim Janik <timj@gtk.org>
1607 * gtk/gtkmain.c (gtk_init): support an environment variable
1608 GTK_MODULES= which takes a colon sperated list of module names
1609 automatically loaded at gtk_init() startup.
1611 Sun Oct 25 08:04:33 1998 Tim Janik <timj@gtk.org>
1613 * gtk/gtkwidget.c: added more g_return_if_fail() statements.
1615 Thu Oct 22 22:40:35 1998 Lars Hamann <lars@gtk.org>
1617 * gtk/gtkctree.c (gtk_ctree_destroy): removed. gtk_clist_destroy
1620 Thu Oct 22 16:22:55 1998 Lars Hamann <lars@gtk.org>
1622 * gtk/gtkclist.c (COLUMN_FROM_XPIXEL): samll fix for invisible
1625 Thu Oct 22 02:29:53 1998 Tim Janik <timj@gtk.org>
1627 * gtk/gtkfilesel.h: GtkType and macro fixups
1628 * gtk/gtkfilesel.c (gtk_file_selection_complete): set a pattern
1629 for the file selection widget to try a completion on (set the
1632 Wed Oct 14 14:34:04 1998 Tim Janik <timj@gtk.org>
1634 * gtk/gtkmain.c: implement idle functions via GHook. this gives a
1635 slight speed improvement and lessens code duplication.
1637 Tue Oct 20 14:53:28 1998 Owen Taylor <otaylor@redhat.com>
1639 * gtk/gtkdnd.c: Always send "drag_leave" to dests
1640 without GTK_DEST_DEFAULT_MOTION.
1642 Tue Oct 20 11:55:24 1998 Owen Taylor <otaylor@redhat.com>
1644 * gdk/gdk.c (gdk_event_translate): Handle DestroyNotify
1645 on destroyed windows so we clear the XID table properly.
1646 Finish up restructure of return value handling that
1647 was half-done before.
1649 Tue Oct 20 12:57:10 1998 Owen Taylor <otaylor@redhat.com>
1651 * gdk/gdk.c (gdk_send_clientmessage_to_all): Hunt
1652 the window tree more comprehensively, so that we find
1653 client windows hidden under non-toplevels.
1655 Tue Oct 20 12:43:04 1998 Owen Taylor <otaylor@redhat.com>
1657 * gtk/gtkselection.c (gtk_selection_data_set):
1658 Maintain the null-termintation guarantee, even when
1659 data = NULL, length = 0. (Warn on data = NULL,
1662 Mon Oct 19 16:41:44 1998 Owen Taylor <otaylor@redhat.com>
1664 * gtk/gtkwidget.h (struct _GtkWidgetClass): Add in coordinates
1665 into function prototype for drag_data_received.
1667 Tue, 20 Oct 1998 11:33:10 +0200 Paolo Molaro <lupus@debian.org>
1669 * gtk/gtkdnd.h,gtk/gtkdnd.c: delete is a reserved word in c++.
1671 Mon Oct 19 23:44:41 1998 Lars Hamann <lars@gtk.org>
1673 * gtk/gtkclist.c: rearranged some functions
1674 (gtk_clist_set_column_auto_resize): new function. toggle auto_resize
1676 (gtk_clist_set_column_resizeable): if resizeable disable auto_resize
1677 (gtk_clist_set_border): deprecated function, use
1678 gtk_clist_set_shadow_type instead.
1679 (gtk_clist_set_shadow_type): replacement for gtk_clist_set_border
1680 (adjust_scrollbars): some cleanups
1681 (select_row) (unselect_row): removed. replaced by equivalent
1682 gtk_signal_emit calls
1683 (add_style_data): removed, use gtk_clist_style_set instead
1684 (gtk_clist_style_set): fill in size data, after style was set.
1685 (set_cell_contents) (gtk_clist_set_shift) (gtk_clist_set_row_style)
1686 (gtk_clist_set_cell_style): auto_resize columns if needed
1687 (column_auto_resize): resize column if needed for auto_resize
1688 (real_clear): disable auto_resize while list destroy
1689 (resize_column): removed
1691 * gtk/gtkctree.c : (gtk_ctree_remove_node)
1692 (gtk_ctree_set_line_style) (gtk_ctree_set_expander_style)
1693 (gtk_ctree_node_set_row_style) (gtk_ctree_node_set_cell_style)
1694 (set_cell_contents) (gtk_ctree_node_set_shift) (gtk_ctree_set_spacing)
1695 (real_tree_move) (gtk_ctree_set_indent) (gtk_ctree_insert_node)
1696 (real_tree_collapse) (real_tree_expand) (column_auto_resize):
1697 auto_resize columns if needed
1698 (gtk_ctree_collapse_recursive) (gtk_ctree_collapse_to_depth)
1699 (real_clear): disable auto_resize while processing the tree
1701 * gtk/testgtk.c (create_clist) (create_ctree): set auto_resize
1704 Mon Oct 19 08:31:36 1998 Owen Taylor <otaylor@redhat.com>
1706 * gtk/gtkdnd.c (gtk_drag_selection_received): Fixed
1707 typo - look for right atom on transfer failures.
1709 Sun Oct 18 20:52:22 1998 Owen Taylor <otaylor@gtk.org>
1711 * gtk/gtkwidget.c gtkmarshal.list: Change signal
1712 for drag_data_get to match the use that was being
1713 made of it everywhere else...
1715 Sun Oct 18 18:16:39 1998 Owen Taylor <otaylor@gtk.org>
1717 * gdk/gdk.c gdkprivate.h: Added a modular client-message-filter
1718 mechanism, that is used for the DND messages.
1720 Removed all the old DND code.
1722 * gdk/gdkcolormap.c gdk/gdkcolormap.h: Add a function to
1723 get the visual of a given colormap.
1725 * gtk/gtkcolorsel.c: Conversion to new DND, drag
1728 * gdk/gdk.h gdk/gdkdnd.c: The low-level
1729 X oriented portions of drag and drop protocols.
1730 Sending and receiving client messages, and navigating
1733 * gdk/gdkimage.c: added a gdk_flush() when destroying
1734 SHM images to hopefully make it more likely that
1735 X will gracefully handle the segment being destroyed.
1737 * gdk/gdkprivate.h gtk/gtkdebug.h: Add new
1738 DND debugging flags.
1740 * gtk/gtkeditable.[ch]: Updates for the selection handling
1743 * gtk/gtkselection.[ch]: Added GtkTargetList, a
1744 refcounted data structure for keeping track of lists
1745 of GdkAtom + information. Removed selection_handler_add
1746 in favor of a "drag_data_get" signal.
1748 * gtk/gtkdnd.[ch] gtk/gtk.h: New files - highlevel (event loop
1749 dependent) parts of the DND protocols, display of drag icons,
1750 drag-under highlighting, and the "default handlers".
1752 * gtk/gtkinvisible.[ch]: New widget - InputOnly offscreen
1753 windows that are used for reliable pointer grabs and
1754 selection handling in the DND code.
1756 * gtk/testdnd.c: New test program for new DND. (Old
1757 DND tests in testgtk still need to be converted.)
1759 * gtk/testselection.c: Use the new selection API.
1761 * docs/dnd_internals: Start at describing how
1762 all the new code works inside.
1764 * docs/Changes-1.2.txt: New file describing source-incompatible
1765 changes in GTK+-1.2.
1767 Sat Oct 17 22:50:34 1998 Owen Taylor <otaylor@gtk.org>
1769 * gdk/gdkwindow.c (gdk_window_remove_filter): Free
1770 the right list node.
1772 * gdk/gdkwindow.c (gdk_window_init): Add gdk_root_parent
1773 to the XID table so we can receive events on it.
1775 Wed Oct 14 12:57:40 1998 Owen Taylor <otaylor@redhat.com>
1777 * gdk/gdk.c gdk/gdk.h (gdk_event_get_time): New function
1778 to get the timestamp from a generic event.
1780 Fri Oct 9 13:16:04 1998 Owen Taylor <otaylor@redhat.com>
1782 * gtk/gtkwidget.c (gtk_widget_add_events): Added function
1783 that safely adds additional events to a widget's event
1784 mask, even if the widget has previously been realized.
1785 (We can do this, but not remove events from the event
1788 Fri Oct 2 17:35:35 1998 Owen Taylor <otaylor@redhat.com>
1790 * gdk/gdkproperty.c (gdk_property_get): Allow type == 0,
1791 for AnyPropertyType.
1793 Fri Oct 2 10:32:21 1998 Owen Taylor <otaylor@redhat.com>
1795 * gdk/gdkproperty.c (gdk_atom_intern): Add client-local
1798 Thu Sep 24 20:33:54 1998 Owen Taylor <otaylor@redhat.com>
1800 * gdk/gdk.c (gdk_event_send_clientmessage_toall): serial
1803 Thu Sep 17 14:23:03 1998 Owen Taylor <otaylor@redhat.com>
1805 * gdk/gdk.c (gdk_event_translate): Removed printing
1806 of unknown window lookup warnings. (Made it
1807 a GDK_NOTE) - they happen in many circumstances.
1809 Tue Sep 8 12:38:43 1998 Owen Taylor <otaylor@redhat.com>
1811 * Call XFilterEvent() on events we get for unknown
1812 windows, since it may be the window Xlib uses to
1813 communicate with the IM.
1814 (From Yung-Ching Hsiao <yhsiao@cae.wisc.edu>)
1816 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
1818 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
1821 Thu Aug 27 12:03:14 1998 Owen Taylor <otaylor@redhat.com>
1823 * gtk/gtksignal.c (gtk_signal_newv): Improve warning
1824 message for return_value + GTK_RUN_FIRST.
1826 1998-10-18 Martin Baulig <martin@home-of-linux.org>
1828 * gtk/gtktext.c (gtk_text_set_line_wrap): new function to toggle
1829 line wrapping like gtk_text_set_word_wrap () toggles word wrapping.
1831 Fri Oct 16 15:59:02 1998 Lars Hamann <lars@gtk.org>
1833 * gtk/testgtk.c (insert_row_clist) (create_clist): change a few cell
1834 styles of inserted row
1835 (change_style): change style of focus_row
1837 * gtk/gtkclist.c (gtk_clist_get_row_style) (gtk_clist_set_row_style)
1838 (gtk_clist_get_cell_style) (gtk_clist_set_cell_style): new functions
1839 to set/get row/cell styles.
1840 (gtk_clist_realize): attach row and cell style, allocate row colors.
1841 (gtk_clist_unrealize): detach row and cell styles.
1842 (get_cell_style): new function. get correct cell style.
1843 (draw_cell_pixmap): new function.
1844 (draw_row): draw cells with row or cell styles.
1845 (row_new): set cell and row styles to NULL.
1846 (row_delete): detach & unref cell and row styles.
1848 * gtk/gtkctree.c (ctree_detach_styles) (ctree_attach_styles):
1849 new functions to attach/detach styles and allocate colors.
1850 (gtk_ctree_realize) (gtk_ctree_unrealize): attach/detach cell and row
1851 styles of invisible nodes.
1852 (draw_cell_pixmap): new function.
1853 (get_cell_style): new function. get correct cell style.
1854 (gtk_ctree_draw_expander): new function. draw tree expander.
1855 (gtk_ctree_draw_lines): new function.draw tree lines.
1856 (draw_row): draw cells with row or cell styles.
1857 (row_new): set cell and row styles to NULL.
1858 (row_delete): detach & unref cell and row styles.
1859 (gtk_ctree_node_get_row_style) (gtk_ctree_node_set_row_style)
1860 (gtk_ctree_node_get_cell_style) (gtk_ctree_node_set_cell_style):
1861 Analogons of GtkCList functions
1862 (gtk_ctree_set_spacing): new function. set spacing between
1863 tree expander and cell contents
1864 (gtk_ctree_set_expander_style): new function. set expander style
1866 (ctree_is_hot_spot): few changes due to draw_row modifications.
1868 Wed 14 Oct 1998 10:17:13 +0200 Paolo Molaro <lupus@debian.org>
1870 * gtk/gtkcombo.c: try completion on MOD1-TAB.
1871 Handle case when the combo->list is empty.
1873 Mon Oct 12 07:51:34 1998 Tim Janik <timj@gtk.org>
1875 * gtk/gtksignal.c (gtk_signal_handlers_destroy): only unref those
1876 handlers that have not yet been disconnected (finally managed to
1877 trigger the gtk_signal_handler_unref() paranoid warning).
1879 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1881 * gtk/gtkwidget.c (gtk_widget_get_arg): fixed default value for x, y,
1882 width and height which is -1 and not -2.
1884 Sat Oct 10 00:50:53 PDT 1998 Manish Singh <yosh@gimp.org>
1887 * autogen.sh: we need libtool 1.2b now
1889 Sat Oct 10 03:37:50 1998 Tim Janik <timj@gtk.org>
1891 * gtk/gtktable.c (gtk_table_set_child_arg): take the left, right, top
1892 and bottom attach arguments as mandatory and readjust the table size
1893 and opposing edge accordingly if required. this way the order in which
1894 the arguments are set doesn't matter.
1896 Thu Oct 8 15:53:59 1998 Owen Taylor <otaylor@redhat.com>
1898 * gtk/gtktypeutils.c (gtk_type_class_init): Fixed warning
1899 message to print out parent class name correctly.
1901 Thu Oct 8 07:07:10 1998 Tim Janik <timj@gtk.org>
1905 removed functions gtk_object_set_data_destroy and
1906 gtk_object_set_data_destroy_by_id.
1907 added functions gtk_object_remove_no_notify and
1908 gtk_object_remove_no_notify_by_id which will remove a certain data
1909 portion without invokation of its destroy notifier, this should only
1910 be used in very controled circumstances.
1912 Wed Oct 7 23:59:37 1998 Lars Hamann <lars@gtk.org>
1914 * gtk/gtkclist.c (gtk_clist_set_column_resizeable): added
1915 size_allocate_title_buttons call
1916 (gtk_clist_realize): changed initial column.window position
1918 Wed Oct 7 20:27:28 1998 Lars Hamann <lars@gtk.org>
1920 * gtk/gtkctree.h (struct _GtkCTree): removed xor_gc, use clists
1922 * gtk/gtkctree.c (create_xor_gc): removed
1923 (gtk_ctree_button_press): set correct line_attributes for
1924 clist->xor_gc on drag start
1925 (gtk_ctree_button_release): reset clist->xor_gc
1927 Wed Oct 7 05:15:36 1998 Tim Janik <timj@gtk.org>
1930 * gdk/gdk.h: removed all occourances of #pragma } and #pragma {
1931 which were in place to fixup emacs' cc-mode indentation.
1932 putting (c-set-offset 'inextern-lang 0) into ~/.emacs is the
1933 proper way to achive this and doesn't produce problems for
1934 stupid pragma-related compiler bugs. ;)
1936 Wed Oct 7 00:59:46 1998 Lars Hamann <lars@gtk.org>
1938 * gtk/gtkclist.h: new signal GtkCList::resize_column.
1939 * gtk/gtkclist.c (draw_row): don't draw invisible columns
1940 (size_allocate_title_buttons) (size_allocate_columns):
1941 skip invisible columns
1942 (new_column_width): take min/max_width into account
1943 (gtk_clist_button_release) (gtk_clist_motion):
1944 changes due to changed new_column_width function
1945 (LIST_WIDTH): changed define to inline function.
1946 (real_resize_column): class function for resize_column signal
1947 (gtk_clist_motion): fixed autoscrolling for column resizes
1948 (gtk_clist_set_column_visibility): don't hide last visible column,
1949 changed visible arg to gboolean
1950 (gtk_clist_set_column_min_width)(gtk_clist_set_column_max_width):
1951 new functions : set min/max width of a column
1952 (gtk_clist_set_column_resizeable): new function : enable/disable
1953 column resize operations by mouse
1955 * gtk/gtkctree.c (draw_row): don't draw invisible columns
1956 (ctree_is_hot_spot): return FALSE if tree_column is invisible
1957 (draw_xor_line) (draw_xor_rect): draw full rectangle/line if
1958 tree_column is invisible
1959 (gtk_ctree_find_all_by_row_data)
1960 (gtk_ctree_find_all_by_row_data_custom): new function from
1961 Ronan Bourlier <ronan@radioss.com>. Returns a GList of all
1962 GtkCTreeNodes with row->data == data.
1964 Tue Oct 6 14:05:00 1998 Tim Janik <timj@gtk.org>
1966 * gtk/testgtk.c (cb_tree_destroy_event): use g_free to free g_malloced
1967 memory (Martin Pool <mbp@wistful.humbug.org.au>).
1969 Mon Oct 5 15:26:30 1998 Raph Levien <raph@gimp.org>
1971 * gdk/gdkrgb.c (gdk_rgb_convert_0888_br): Fixed a few long's that
1972 should have been guint32. Thanks to Tristan Colgate for finding it.
1974 Sun Oct 4 22:47:22 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1976 * gtk/gtkcalendar.h:
1977 gtk/gtkcalendar.c: More changes:
1978 - The day with focus is now seperated from the day selected
1979 - The day with focus has the xor's line around it
1980 - The selected day is now standard selected style
1981 - The week names and week numbers are now also drawn
1983 - Space now selects the day which has focus
1985 Sun Oct 4 17:55:52 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
1987 * gtk/gtkcalendar.h:
1988 gtk/gtkcalendar.c: Some significant changes, including:
1989 - No longer draw focus around entire widget, only around
1990 the day which has focus
1991 - Draw relief around entire widget like originally planned
1992 - Show header and day names by default
1993 - Move data private to the widget out of GtkCalendar struct
1994 and only point to it with a gpointer
1995 - Remove some old unused variables from GtkCalendar struct
1997 Sun Oct 4 17:45:43 BST 1998 Tony Gale <gale@gtk.org>
1999 * docs/gtk_tut.sgml: update I've had sat around:
2000 - Grammar patch from James R. Van Zandt <jrv@vanzandt.mv.com>
2001 - Range Widget update from David Huggins-Daines <bn711@freenet.carleton.ca>
2002 - New Toolbar section from Jacek Wojdel <J.C.Wojdel@cs.tudelft.nl>
2004 1998-10-01 Martin Baulig <martin@home-of-linux.org>
2006 * gtk/gtkclist.h (GtkCListColumn): Added `visible'.
2008 * gtk/gtkclist.c (gtk_clist_set_column_visibility): New function.
2009 Makes it possible to individually show and hide columns.
2010 (size_allocate_columns): Adapted to keep track of hidden columns.
2011 (size_allocate_title_buttons): Likewise.
2013 Sat Oct 3 17:54:48 1998 Tim Janik <timj@gtk.org>
2015 * gtk/gtkargcollector.c (GTK_ARG_COLLECT_VALUE): for unknown foreign
2016 fundamental types, collect an argument of the type returned from
2017 gtk_type_get_varargs_type(). removed the first macro argument which
2018 was just the same as the fundamental type of the *arg passed to
2020 * gtk/gtkarg.c (gtk_args_collect):
2021 * gtk/gtksignal.c (gtk_signal_collect_params): changed callers.
2023 * gtk/gtktypeutils.h:
2024 * gtk/gtktypeutils.c: new functions gtk_type_set_varargs_type() and
2025 gtk_type_get_varargs_type() to set and query the varargs collect
2026 type used for a fundamental type, registered outside of Gtk.
2028 * gtk/gtkmisc.c (gtk_misc_class_init): changed object arguments
2029 GtkMisc::xalign and GtkMisc::yalign from GTK_TYPE_DOUBLE to
2032 * gtk/gtkframe.c (gtk_frame_class_init): changed object arguments
2033 GtkFrame::label_xalign and GtkFrame::label_yalign from GTK_TYPE_DOUBLE
2036 Sat Oct 3 01:25:24 1998 Lars Hamann <lars@gtk.org>
2038 * gtk/gtkctree.c (gtk_ctree_insert_gnode) (real_tree_collapse)
2039 (gtk_ctree_link) (gtk_ctree_unlink) (real_tree_expand):
2040 fixes for assignment errors with GTK_CTREE_NODE_NEXT/PREV
2042 (real_tree_expand) (real_tree_collapse):
2043 don't expand/collapse a leaf
2045 Fri Oct 2 16:10:36 1998 Tim Janik <timj@gtk.org>
2047 * gtk/gtktypeutils.c (gtk_type_enum_find_value): make sure we don't
2048 segfault when looking up a non-existant value name (reported by
2049 Pablo <pcj+gtk@primenet.com>).
2051 Thu Oct 1 10:40:20 1998 Tim Janik <timj@gtk.org>
2053 * gtk/gtkclist.h (gtk_clist_prepend):
2054 * gtk/gtkclist.c (gtk_clist_prepend): new function.
2055 (gtk_clist_insert): added g_return_val_if_fail()
2056 statements. accept a row parameter < 0 or > clist->rows to indicate
2058 (real_clear): first clean up all internal pointers and lists (e.g.
2059 clist->row_list or clist->rows), then delete the distinct rows. this
2060 is required because of destroy notifiers, we need to have all internal
2061 structures updated and be reentrant.
2063 * gtk/gtkcalendar.h:
2064 * gtk/gtkcalendar.c: removed the `gtk_calendar_' prefix from the
2065 GtkCalendarClass signal methods.
2066 GtkType and macro fixups, put `void' into () prototypes, avoid C++
2067 style comments, indentation fixes, fixed some g_return_if_fail()
2069 (gtk_calendar_paint_header):
2070 (gtk_calendar_paint_day_names):
2071 (gtk_calendar_paint_week_numbers):
2072 (gtk_calendar_paint_main): made these static functions.
2073 (gtk_calendar_select_month):
2074 (gtk_calendar_select_day):
2075 (gtk_calendar_mark_day):
2076 (gtk_calendar_unmark_day):
2077 (gtk_calendar_get_date): signedness corrections, use guints
2079 (gtk_calendar_size_request): removed unused variables.
2081 Wed Sep 30 13:11:09 1998 Tim Janik <timj@gtk.org>
2083 * gtk/gtkitemfactory.c (gtk_item_factory_add_item): list all
2084 widgets in the ->widgets_by_action list that have a callback
2085 defined (not only those with a callback_action!=0).
2087 Sun Sep 27 22:02:48 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2089 * gtk/gtkcalendar.h:
2091 examples/calendar/gcalendar.c: remove HAVE_FEATURES stuff
2093 Sun Sep 27 02:18:06 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2095 * gtk/gtkcalendar.h:
2097 examples/calendar: Added gtkcalendar widget and demo
2099 Sat Sep 26 06:15:34 1998 Tim Janik <timj@gtk.org>
2101 * gtk/gtkclist.c (gtk_clist_sort):
2103 (gtk_clist_unselect_all):
2104 (gtk_clist_select_all): adde g_return_if_fail() statements.
2106 Sat Sep 26 04:46:22 1998 Tim Janik <timj@gtk.org>
2108 * configure.in: set binary age and interface age to 0.
2110 * gtk/gtkspinbutton.h:
2111 * gtk/gtkspinbutton.c: changed gtk_spin_button_construct to
2112 gtk_spin_button_configure. gtk_spin_button_construct is still defined
2113 as an alias for gtk_spin_button_configure for source compatibility,
2114 but actuall use is deprecated.
2115 typeness corrections, i.e. gint->gboolean and gint->guint.
2116 added object arguments: GtkSpinButton::value, GtkSpinButton::wrap,
2117 GtkSpinButton::shadow_type, GtkSpinButton::update_policy,
2118 GtkSpinButton::numeric, GtkSpinButton::snap_to_ticks,
2119 GtkSpinButton::adjustment, GtkSpinButton::digits and
2120 GtkSpinButton::climb_rate.
2121 GtkType and macro fixups.
2123 Sat Sep 25 23:33:55 1998 Tim Janik <timj@gtk.org>
2125 * gdk/gdkwindow.c (gdk_window_get_root_origin): new function to get
2126 the *real* geometry position of a window, taken possible window
2127 manager offsets into account.
2128 this has been succesfully tested with fvwm, fvwm-2, bowman, olwm,
2129 olvwm, twm, ctwm, mlvwm, windowmaker and enlightenment.
2130 it does fail though for amiwm which adds windows to a pseudo root
2131 window, and for icewm by a small offset because it defines the
2132 geometry position whithin its border.
2134 * gtk/testgtk.c: added "saved position" test to figure how
2135 gdk_window_get_root_origin() interacts with window managers (repopup
2136 this window to figure ;).
2138 Wed Sep 23 06:09:19 1998 Tim Janik <timj@gtk.org>
2140 * configure.in: update to Gtk+ version 1.1.3, binary age 1,
2145 (gtk_object_unref): check for ->ref_count to be greater than 0 (the
2146 existing code was buggy in letting ->ref_count==0 pass through and
2147 then failing the living_objs_ht assertion).
2149 * gtk/gtkclist.c (draw_row): fix chopping bug for right justified
2150 pixtext fields (Roman Pozlevich <roma@botik.ru>).
2152 Mon Sep 21 23:53:18 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2154 * Released GTK+ 1.1.2
2156 Mon Sep 21 01:12:44 1998 Jay Cox (jaycox@earthlink.net)
2158 * gtk/Makefile.am: use $(PERL) instead of perl
2159 * gtk/gtkcolorsel.c: render properly in non-square aspect ratios.
2160 also much faster to render.
2162 Mon Sep 21 07:44:30 1998 Tim Janik <timj@gtk.org>
2164 * gtk/gtkobject.c (gtk_object_class_add_signals): reallocate
2165 the required memory block, rather than allocating it newly from
2166 scratch and doing a full-blown block copy on it.
2168 Mon Sep 21 02:30:06 1998 Tim Janik <timj@gtk.org>
2170 * NEWS file update for upcoming release of Gtk+ version 1.1.2,
2171 binary age 0, interface age 0.
2173 * gtk/gtkmain.c (gtk_init): enforce gtk-modules to always be resident.
2175 Sun Sep 20 18:21:46 1998 Owen Taylor <otaylor@redhat.com>
2177 * ltmain.sh: Patch to libtool-1.2b to make --disable-static
2180 Sun Sep 20 09:52:39 1998 Owen Taylor <otaylor@gtk.org>
2182 * HACKING: indent other than GNU indent should be OK
2185 * gtk/genmarshal.pl gtk/Makefile.am: Call indent on file
2186 instead of piping through indent. If indent wasn't
2187 found in ./configure don't bother indenting at
2190 Fri Sep 18 19:11:10 1998 Owen Taylor <otaylor@redhat.com>
2192 * gdk/gdk.h: Add names to prototype for gdk_image_new_bitmap.
2194 Fri Sep 18 18:54:59 1998 Jay Cox (jaycox@earthlink.net)
2196 * gtk/Makefile.am: use $(AWK) instead of awk
2198 1998-09-18 Raja R Harinath <harinath@cs.umn.edu>
2200 * gtk/Makefile.am (gdk_headers):
2201 Remove references to $(top_srcdir).
2202 (gtk.defs, gtktypebuiltins{.h,_vars.c,_ids.c,_evals.c}): Simplify.
2203 * gtk/makeenums.pl (parse_entries): Don't look for $srcdir.
2205 Fri Sep 18 19:58:24 1998 Tim Janik <timj@gtk.org>
2207 * gtk/gtkobject.h (struct _GtkObject): changed gpointer object_data; to
2208 GData*object_data to cure compiler warnings.
2210 Thu Sep 17 19:06:47 PDT 1998 Manish Singh <yosh@gimp.org>
2214 * mkinstalldirs: updated to latest automake version
2216 1998-09-17 Raja R Harinath <harinath@cs.umn.edu>
2218 * gtk/Makefile.am (source_headers): Move `gtkfeature.h' ...
2219 (gtkinclude_HEADERS): ... here.
2220 (gtk.defs): Pass `g' flag to sed, to replace all occurances.
2222 Thu Sep 17 10:49:51 1998 Raph Levien <raph@gimp.org>
2224 * HACKING: added GNU indent, as it is now required to successfully
2225 build gtk+. Should this be detected in autoconf, possibly?
2227 Tue Sep 15 14:57:30 1998 Owen Taylor <otaylor@redhat.com>
2229 * Makefile.am gtk-config.in l*: Update to libtool-1.2b,
2230 change library versioning scheme to drop LT_RELEASE
2231 from the -l line, while keeping it in the soname.
2233 Tue Sep 15 14:10:33 1998 Owen Taylor <otaylor@redhat.com>
2235 * configure.in Makefile.in: define a MAINT-like variable REBUILD
2236 which is set if Perl and awk are found, and autogenerated sources
2237 can be rebuilt. Remove the auto-generated sources from
2240 Add dependencies so that the autogenerated sources are
2241 rebuilt if the files they depend on change.
2242 (This unfortunately currently results in the entire
2243 gtk/ directory being rebuilt when any header changes.
2244 Moving all enums to gtkenums.h would fix this.)
2246 Thu Sep 17 05:12:48 1998 Tim Janik <timj@gtk.org>
2248 * gtk/gtkobject.h: added gtk_object_set_data_destroy and
2249 gtk_object_set_data_destroy_by_id functions to set the destroy
2250 function pointer for an existing data portion.
2252 * gtk/gtkobject.c: removed the GtkObjectData implementation and
2253 made all gtk_object_*data* functions use the GLib equivalents.
2255 1998-09-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
2257 * gtk/gtktoolbar.c (gtk_toolbar_insert_element): Test whether type
2258 is not equal to GTK_TOOLBAR_CHILD_RADIOBUTTON before checking that
2259 (widget != NULL), otherwise radio button insertion will not work
2260 -- the widget argument is NULL for the first radio button in the
2263 Tue Sep 15 13:09:24 1998 Owen Taylor <otaylor@redhat.com>
2265 * gdk/gdkimage.c (gdk_image_new): Reverted global changes
2266 of g_new to malloc(), added back in the one place where
2267 it actually mattered. #include <stdlib.h>.
2269 * gdk/gdkrgb.c: g_malloc() to malloc() as above.
2271 Tue Sep 15 11:30:03 1998 Owen Taylor <otaylor@redhat.com>
2273 * gtk/gtkfilesel.c: Keep a list of directories in which we never
2274 want to stat the entries (like /afs), and assume everything in
2275 those directories is a subdirectory.
2277 - When following a path, try to open components even when
2278 we don't find them in their parent's directory to
2279 support automounters.
2281 Tue Sep 15 11:06:13 1998 Owen Taylor <otaylor@redhat.com>
2283 * gtk/gtkwindow.c (gtk_window_move_resize): Don't request
2284 a new size from the WM if we asked for the same size
2285 before and our request was rejected.
2287 * gtk/gtkwindow.c (gtk_window_configure_event): If
2288 in response to a request, we get a configure event
2289 with unchanged dimensions, send a synthetic expose
2290 since ForgetGravity won't expose our window.
2292 Mon Sep 14 14:28:24 1998 Owen Taylor <otaylor@redhat.com>
2294 * gtk/gtktext.c (adjust_adj): Change the way we
2295 set the adjustments on resize so that it tries to
2296 keep the beginning of the text in approximately
2299 Removed assertion that the above change made invalid.
2301 Thu Sep 10 22:19:35 1998 Owen Taylor <otaylor@redhat.com>
2303 * gtk/gtktext.c: - Save first_cut_pixels when switching
2304 sizes, so that if we switch to the _same_ size,
2305 we don't move lines around.
2307 - Make sure that the text area always has a size of at
2308 least 1x1, then do all computations when realized.
2310 - When fetching lines in recompute_geometry, make
2311 sure we fetch enough lines to cover the screen.
2313 Mon Sep 14 21:47:35 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2315 * gdk/gdkimage.c: changed g_new()s to malloc()s and
2316 g_free()s to free()s to avoid mixing g_new()s with
2317 free()s. X itself uses free() on some of the
2320 Sat Sep 12 10:44:06 1998 Owen Taylor <otaylor@redhat.com>
2322 * gtkfilesel.c: Maintain a list of directories like
2323 /afs we know contain only directories, and avoid
2324 stat'ing files in those directories. (Because
2325 stat'ing all files in /afs is extremely expensive)
2327 To support automounters, try to open directories,
2328 even if we couldn't find them when reading their
2331 Thu Sep 3 10:29:03 1998 Owen Taylor <otaylor@redhat.com>
2333 * gtk.m4: Conditionalize check for GTK_MAJOR_VERSION,
2334 to allow the same gtk.m4 to work for 1.0.x and
2337 Fri Sep 11 15:25:10 1998 Lars Hamann <lars@gtk.org>
2339 * gtk/gtkclist.c (gtk_clist_set_selectable): new function
2340 to set/unset the selectable flag of a single row.
2341 (gtk_clist_get_selectable): new function
2342 to get the state of the selectable flag
2344 * gtk/gtkctree.c (gtk_ctree_node_set_selectable)
2345 (gtk_ctree_node_get_selectable): clist analogons
2347 Thu Sep 10 17:04:03 1998 Raph Levien <raph@gimp.org>
2349 * gtk/testrgb.c (testrgb_rgb_test): Small changes to the test
2352 * gdk/gdkrgb.c (gdk_rgb_convert_gray4_pack): Fixed some alignment
2353 bugs in the 4bit gray cases.
2355 Wed Sep 9 02:48:44 PDT 1998 Manish Singh <yosh@gimp.org>
2357 * configure.in: added -posix check for NeXTStep
2359 * gtk/testthreads.c: applied part of gtk-joke-980907-0 to use
2360 a unique buffer for each thread.
2362 * docs/gtk-config.1: clarified copyright
2364 Tue Sep 8 05:19:51 1998 Tim Janik <timj@gtk.org>
2366 * gdk/gdk.c (gdk_init): use g_atexit() instead of ATEXIT.
2368 * gtk/gtkmain.c (gtk_init): use g_atexit() instead of ATEXIT.
2370 * gtk/gtkobject.c (gtk_object_init_type): use g_atexit() instead of
2373 * ltconfig: use GLib's ltconfig which honours lcc.
2375 Mon Sep 7 20:09:23 PDT 1998 Manish Singh <yosh@gimp.org>
2377 * configure.in: comment the -std1 check and save LIBS properly
2379 Sun Sep 6 12:36:23 PDT 1998 Manish Singh <yosh@gimp.org>
2381 * gtk/testrgb.c: #include <stdlib.h>
2383 Sat Sep 5 16:01:19 1998 Owen Taylor <otaylor@gtk.org>
2385 * gdk/gdkinputxfree.h gdk/gdk.c gdk/gdkinputgxi.h:
2386 When the pointer is grabbed on an input window,
2387 either explicitely, or through press-grab, and
2388 then grabbed on a non-input window, ungrab the
2391 Sat Sep 5 07:13:19 1998 Tim Janik <timj@gtk.org>
2393 * gtk/gtktypeutils.h: don't include any gdk headers.
2394 added structure definitions for GtkTypeObject and GtkTypeClass,
2395 which cover the very basic fields of GtkObject and GtkObjectClass,
2396 which are actually used by the type system.
2398 * gtk/gtktypeutils.c: don't include gtkobject.h or gtkcontainer.h,
2399 we only refer to our own structures. improved class inheritance
2400 sanity checking a bit.
2402 * gtk/gtkobject.h: placed appropriate comments at the beginnings
2403 of the GtkObject and GtkObjectClass structures, which explain
2404 their relationship to GtkTypeObject and GtkTypeClass.
2406 * gtk/gtktypeutils.h:
2408 moved GTK_STRUCT_OFFSET(), GTK_CHECK_CAST(), GTK_CHECK_CLASS_CAST(),
2409 GTK_CHECK_TYPE() and GTK_CHECK_CLASS_TYPE() macro definitions from
2410 gtkobject.h to gtktypeutils.h.
2414 removed gtk_object_check_cast() and gtk_object_check_class_cast()
2415 functions. to keep source compatibility, we can provide macro aliases
2416 for the corresponding gtk_type_* functions. but then again, people
2417 shouldn't have been using these functions anyways since they were part
2418 of Gtk's internal API.
2420 * gtk/gtktypeutils.h:
2421 * gtk/gtktypeutils.c:
2422 implemented gtk_type_check_object_cast() and gtk_type_check_class_cast()
2423 functions to check GtkTypeObject and GtkTypeClass types.
2425 Thu Sep 3 07:16:54 1998 Tim Janik <timj@gtk.org>
2428 * gtk/gtkctree.c: `const' fixups.
2431 * gtk/gtkclist.c: `const' fixups and some coding style adaptions.
2433 * gtk/gtkctree.c (gtk_ctree_insert_node): don't dereference *text
2434 if it is passed as NULL.
2436 Wed Sep 2 22:41:40 1998 Raph Levien <raph@gimp.org>
2438 * gdk/gdkrgb.c (gdk_rgb_select_conv): Fixed 32bpp image depth
2439 big-endian cases. Added a 4bpp packed gray mode (somewhat
2440 incorrectly hardwired to MSB), which should take care of
2443 Thu Sep 3 04:45:57 1998 Tim Janik <timj@gtk.org>
2445 * gtk/gtkaccelgroup.c (gtk_accel_group_add): plug another small
2446 GtkSIgnalQuery leak.
2448 Thu Sep 3 04:22:20 1998 Tim Janik <timj@gtk.org>
2450 * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
2451 GTK_MENU_DIR_CHILD: check for the existance of
2452 menu_shell->active_menu_item before accessing its child.
2454 GTK_MENU_DIR_NEXT: if we haven't had an active item and still
2455 don't, make a default selection.
2457 Wed Sep 2 00:28:58 1998 Tim Janik <timj@gtk.org>
2459 * gtk/gtkwidget.c (gtk_widget_propagate_state): iterate
2460 the children with _forall for sensitivity changes and with
2461 _foreach on pure state changes. this fixes a lot of the
2462 old inclusions of internal widgets into _foreach calls.
2464 * gtk/gtktree.c: removed gtk_tree_foreach, let gtk_tree_forall
2465 do the work. don't walk the subtrees of first level children.
2467 * gtk/gtktreeitem.c: provide a _forall implementation,
2468 which walks the subtrees as well for include_internals.
2470 * gtk/gtkmenuitem.c: provide a _forall implementation, which walks
2471 the submenus as well for include_internals.
2473 * gtk/gtkscrolledwindow.c: removed gtk_scrolled_window_foreach and
2474 implemented gtk_scrolled_window_forall, which will iterate over
2475 the viewport and the scrollbars for gtk_container_forall or
2476 iterate over the viewports children for gtk_container_foreach.
2482 * gtk/gtkmenushell.c:
2488 * gtk/gtknotebook.c:
2489 removed the old gtk_*_foreach functions and provided gtk_*_forall.
2491 * gtk/gtknotebook.c:
2492 (gtk_notebook_real_switch_page): expose tabs.
2493 (gtk_notebook_page_num): new function to return the page number
2494 of a distinct child.
2495 (gtk_notebook_focus): minor fixups. foxus handling is still screwed
2496 under some circumstances.
2498 * gtk/gtktreeitem.c:
2499 (gtk_real_tree_item_select):
2500 (gtk_real_tree_item_deselect): major fixes.
2501 some general fixups wrt queue_redraw, and tree items not being
2504 * gtk/gtklistitem.c:
2505 (gtk_real_list_item_select):
2506 (gtk_real_list_item_deselect):
2507 (gtk_real_list_item_toggle):
2508 removed unneccessary queue_redraw calls.
2510 Wed Aug 30 09:42:07 1998 Tim Janik <timj@gtk.org>
2512 * gtk/gtkoptionmenu.c: allow optionmenus to have the focus and
2513 automatically popup the menu on space bar.
2515 Wed Aug 26 06:40:34 1998 Tim Janik <timj@gtk.org>
2517 * gtk/gtkcontainer.h:
2518 * gtk/gtkcontainer.c: implemented gtk_container_forall() (as a class
2519 method), which acts similar to gtk_container_foreach(), but iterates
2520 over internal children. the GtkContainer::foreach signal vanished in
2521 favour of a new class method ->forall() that optionally includes
2524 * gtk/gtkclist.c (gtk_clist_init): provide no _foreach implementation
2525 but a _forall implementation, since all child widgets we have are
2527 (column_button_create): set the parent window prior
2528 to gtk_widget_set_parent().
2531 exchanged all calls to gtk_container_foreach() with
2532 gtk_container_forall().
2535 * gtk/gtkwidget.c: added the GTK_COMPOSITE_CHILD, exported through
2536 the GtkWidget::composite_child argument. to have a widget created
2537 with the flag initially, two new functions got added to wrap a widgets
2539 gtk_widget_push_composite_flag() and gtk_widget_pop_composite_flag().
2541 Wed Aug 25 23:37:39 1998 Tim Janik <timj@gtk.org>
2543 * gtk/gtktooltips.h:
2544 * gtk/gtktooltips.c: exported gtk_tooltips_create_window() as
2545 gtk_tooltips_force_window(), so tooltips->tip_window can be accessed
2546 prior to the first tip being set.
2547 don't put an extra reference on the window, since it is a toplevel,
2548 it wont get destroyed from anywhere else.
2550 * overall macro and GtkType fixups.
2552 1998-09-02 Federico Mena Quintero <federico@nuclecu.unam.mx>
2554 * gtk/gtkcolorsel.c: Replaced "foo == TRUE" and "foo == FALSE"
2555 constructs by more forgiving ones. (Does anyone else feel like
2556 the color selector need rewriting?).
2558 Tue Sep 1 10:53:52 1998 Owen Taylor <otaylor@redhat.com>
2560 * gtk/gtkprogress.c (gtk_progress_finalize): Unref
2563 * gtk/gtkmenu.c: Modified reference counting so
2564 that the reference count from the toplevel that
2565 the menu creates to the menu is invisible to the
2568 Mon Aug 31 21:36:31 1998 Raph Levien <raph@gimp.org>
2570 * gdk/gdkrgb.c (gdk_rgb_select_conv): Improved the 24bpp
2571 conversion selection logic, so Suns and other big-endian
2572 machines should get faster conv routines. This is also the
2573 point where 4bpp gray and 1bpp are checked in, although I
2574 wouldn't be surprised if 1bpp is a little buggy. This is
2575 synchronized with the 0.0.7 release of GdkRgb.
2578 * gtk/testrgb.c: Checked in testrgb.c to CVS, and made the
2579 appropriate change to the Makefile.am
2581 Mon Aug 31 15:18:19 1998 Raph Levien <raph@gimp.org>
2583 * gdk/gdkrgb.[ch]: Added a gdk_draw_rgb_image_dithalign function,
2584 which is good for images that scroll (makes the dither patterns
2587 Sat Aug 29 14:50:56 PDT 1998 Manish Singh <yosh@gimp.org>
2590 (gdk_colormap_new) (gdk_colormap_get_system):
2591 quell some warnings with g_hash_table_new
2593 * gtk/gtkaccelgroup.c (gtk_accel_group_add): free the GtkSignalQuery
2594 when we're done with it
2596 * gtk/itemfactory.c:
2597 (gtk_item_factory_from_path):
2598 (gtk_item_factory_create_item): free some strings
2601 (gtk_label_finalize): free label->pattern when done
2602 (gtk_label_parse_uline): null terminate pattern string, delete
2603 some duplicated code
2605 * gtk/testthreads.c: add #include <unistd.h> for sleep()
2607 Tue Aug 25 16:52:47 1998 Owen Taylor <otaylor@redhat.com>
2609 * gtk/gtktext.c (recompute_geometry): Make sure the
2610 mark we pass to line start is the beginning of a
2611 real line, not a wrapped one.
2613 Mon Aug 24 18:37:15 1998 Owen Taylor <otaylor@redhat.com>
2615 * gtk/gtktext.c: Reference count the fonts used in
2618 * gdk/gdk.h gdk/gdkcolor.c: Rename the color allocation
2619 freeing functions to be more consistent, and more
2620 convenient; leave the old names in for backwards compatibility.
2622 * gdk/gdkcolor.c gdk/gdkprivate.h: Reference count the
2623 allocations in pseudo-color colormaps to greatly reduce
2624 calls to XAllocColor. Keep a per-colormap hashtable to
2625 speed up finding if there is an already-allocated matching
2628 * gdk/gdkcolor.c: Don't just match read the system colormap
2629 when the colormap is created, but synchronize our copy
2630 with the system colormap periodically.
2632 * gdk/gdk.c gdk/gdktypes.h gtk/gtkentry.c gtk/gtktext.c:
2633 Change XIM constants names to match GDK conventions
2635 * gtk/testinput.c: Allow the drawing area to get the focus.
2637 * gtk/testgtk.c: Change around the Text test to demonstrates
2638 multiple fonts, use more colors.
2640 * gtk/gtkwidget.c: Improve gtk_widget_get_colormap()/visual()
2641 so they work after a widget is unrealized.
2643 * gtk/gtktext.[ch]: Remove the requirement that the text
2644 widget be realized before adding text (!) Allocate colors
2645 ourself, instead of requiring the caller allocate them.
2646 Allow changing styles to work properly by keeping track
2647 of the values for a certain property are default or
2650 * gtk/gtkmenu.h: Added some comments.
2652 * gtk/gtkentry.c: Changes to match XIM constants.
2654 * gtk/gdk.h gdk/gdkwindow.c: Add gdk_drawable_set_data(),
2655 for adding keyed data to drawables. (Uses g_dataset
2658 * gdk/gdkpixmap.c: Keep track of the colors we allocate,
2659 when creating an XPM - store them as user data for the GdkPixmap,
2660 so we don't leak colors when we create pixmaps from XPM's.
2662 Allocate memory for color information in large blocks instead of
2663 as many little pieces.
2665 Mon Aug 24 11:09:32 PDT 1998 Manish Singh <yosh@gimp.org>
2667 * gdk/gdkrgb.c: removed some unused variables
2670 * gtk/gtkmain.c: #if 0'd out some unused code
2672 * gtk/gtkobject.c: check for NULL object hash table in gtk_object_debug
2674 Mon Aug 24 02:36:53 1998 Tim Janik <timj@gtk.org>
2682 * gtk/gtkcontainer.h:
2683 * gtk/gtkcontainer.c:
2688 (gtk_container_add_with_args):
2689 (gtk_container_child_set):
2690 begin the parameter elipsis (...) after the first argument name. this
2691 change is source compatible, since it was always required, even as NULL.
2693 (gtk_object_args_collect):
2694 (gtk_container_child_args_collect):
2695 changed prototypes to pass first_arg_name, also, pass va_list variable
2696 by value (portability concerns). callers changed.
2698 * gtk/gtkargcollector.c: implemented gtk_arg_collect_value() as
2699 a huge macro GTK_ARG_COLLECT_VALUE() <shrug>. this is needed because we
2700 can't pass va_list variables by reference for portability reasons.
2702 Fri Aug 21 22:40:00 Raph Levien <raph@gtk.org>
2704 * gdk/gdkrgb.c: added calls to gdk_rgb_init in the get_cmap and
2705 get_visual calls, so that it gets implicitly initialized.
2707 Fri Aug 21 13:06:04 1998 Stuart Parmenter <pavlov@gimp.org>
2708 * gtk/gtkfeatures.h.in: added GTK_HAVE_FEATURES_1_1_2 for changes
2709 such as GtkCTree function name changes
2711 Fri Aug 21 02:31:26 1998 Tim Janik <timj@gtk.org>
2714 * gtk/gtkmain.c (gtk_check_version): added a function to perform a
2715 binary version check, returning a static string for error descriptions,
2718 Thu Aug 20 20:08:15 1998 Owen Taylor <otaylor@redhat.com>
2720 * gtk/gtktext.c ([un]draw_cursor): Check to see if we've
2721 computed our geometry yet, and if not, ignore the request.
2723 * gtk/gtktext.c (correct_cache_insert): Fiddled around
2724 some more. All the bug-test codes seem to work at once
2725 now. (fingers crossed...)
2727 Thu Aug 20 13:04:08 PDT 1998 Manish Singh <yosh@gimp.org>
2729 * gdk/gdkrgb.c: silly visual fixes
2731 * gtk/testgtk.c: call gdk_rgb_init so color preview test actually
2734 1998-08-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
2736 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Do not do
2737 anything if the event's window is not the bin window.
2738 (gtk_handle_box_motion): Likewise.
2740 1998-08-19 Raph Levien <raph@gimp.org>
2742 * gtk/testgtk.c (create_color_preview): pushed the colormap and
2743 visual so it would work better with GdkRgb.
2745 1998-08-19 Raph Levien <raph@gimp.org>
2747 * gdk/gdkrgb.c: fixed some bugs in the 565_d mode, and added a
2748 4bpp static_color mode (for vga displays). Also fixed a '64' value
2749 in the dither matrix, which was causing one pixel out of 16k to be
2752 * gtk/gtkpreview.{c,h}: Changed it to work with GdkRgb, gutting
2753 most of the contents. This is an API change - any apps that relied
2754 on the internal structure of GtkPreview will need some change -
2755 most notably in the use of reserved colors. The Gimp needed
2756 changes in this regard.
2758 Wed Aug 19 00:11:14 1998 Tim Janik <timj@gtk.org>
2760 * gtk/gtkmain.c (gtk_init): allow argument parsing in gtk without
2761 G_ENABLE_DEBUG being defined (specifically --gtk-module= and
2762 --g-fatal-warnings), noticed by miguel.
2764 Tue Aug 18 17:54:40 1998 Tim Janik <timj@gtk.org>
2766 * gtk/gtkrc.c (gtk_rc_parse_file): use g_get_current_dir() instead of
2774 * gtk/gtkitemfactory.c:
2775 dropped gdk_progname, use g_get_prgname()/g_set_prgname() instead.
2777 * gtk/gtkselection.c:
2781 * gtk/gtktypeutils.c: indentation fixes due to g_message() use.
2783 * gdk/gdkrgb.c: exchanged occourances of g_print with g_message.
2785 Tue Aug 18 17:22:22 1998 Lars Hamann <lars@gtk.org>
2787 * gtk/gtknotebook.c (gtk_notebook_switch_focus_tab):
2788 * gtk/gtknotebook.c (gtk_notebook_update_labels): fix for sigsegv
2789 in case of show_tabs == NULL
2791 Tue Aug 18 03:54:43 1998 Tim Janik <timj@gtk.org>
2793 * gtk/gtkmain.c (gtk_init): restricted the --g*fatal-* arguments
2794 to --g-fatal-warnings again. this option now causes log levels of
2795 WARNING and CRITICAL to abort().
2804 * gtk/gtktypeutils.c:
2810 * gtk/gtkselection.c:
2813 * gtk/gtktreeitem.c:
2814 did a global search&replace to substitute g_print() calls with
2815 g_message(). libraries shouldn't use printf(), g_print() or
2816 g_printerr() at all.
2817 a bunch of the replacements should probably be wrapped into the
2818 G{D|T}K_NOTE() macros, so they are special cased for debugging
2819 purposes in a sane way, avoiding all the nasty #ifdef DEBUG_MY_TEDDY
2822 * gdk/gdkdnd.c: added copyright notice.
2824 Mon Aug 17 17:28:00 Raph Levien <raph@gtk.org>
2826 * gdk/gdkrgb.c: Further speedups of the 565_d case. It's
2827 impressively fast now - about 4.65 Mpix/s on an IBM TP 600
2828 running a PII 233. It's synced with the 0.0.5 release of
2831 Tue Aug 18 00:29:13 1998 Lars Hamann <lars@gtk.org>
2834 (struct _GtkCListClass): new class methods:
2835 (sort_list) (insert_row) (remove_row) (set_cell_contents)
2838 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2839 removed and replaced by (set_cell_contents)
2840 (set_cell_contents): function for class method set_cell_contents
2841 (real_insert_row): function for class method insert_row
2842 (real_remoce_row): function for class method remove_row
2843 (real_sort_list): function for class method sort_list
2844 (default_compare): fix to avoid problems with cell types != CELL_TEXT
2847 (gtk_ctree_export_to_gnode): new function to export a ctree as gnode
2848 (gtk_ctree_node_is_visible): new function to return visibility state
2850 (gtk_ctree_show_stub): new function to set visibility of root stub
2853 (gtk_ctree_insert) -> (gtk_ctree_insert_node)
2854 (gtk_ctree_remove) -> (gtk_ctree_remove_node)
2855 (gtk_ctree_find_glist_ptr) -> (gtk_ctree_find_node_ptr)
2856 (gtk_ctree_set_text) -> (gtk_ctree_node_set_text)
2857 (gtk_ctree_set_pixmap) -> (gtk_ctree_node_set_pixmap)
2858 (gtk_ctree_set_pixtext) -> (gtk_ctree_node_set_pixtext)
2859 (gtk_ctree_set_shift) -> (gtk_ctree_node_set_shift)
2860 (gtk_ctree_get_cell_type) -> (gtk_ctree_node_get_cell_type)
2861 (gtk_ctree_get_text) -> (gtk_ctree_node_get_text)
2862 (gtk_ctree_get_pixmap) -> (gtk_ctree_node_get_pixmap)
2863 (gtk_ctree_get_pixtext) -> (gtk_ctree_node_get_pixtext)
2864 (gtk_ctree_set_foreground) -> (gtk_ctree_node_set_foreground)
2865 (gtk_ctree_set_background) -> (gtk_ctree_node_set_background)
2866 (gtk_ctree_set_row_data) -> (gtk_ctree_node_set_row_data)
2867 (gtk_ctree_set_row_data_full) -> (gtk_ctree_node_set_row_data_full)
2868 (gtk_ctree_get_row_data) -> (gtk_ctree_node_get_row_data)
2869 (gtk_ctree_moveto) -> (gtk_ctree_node_moveto)
2870 (gtk_ctree_sort) -> (gtk_ctree_sort_node)
2871 (gtk_ctree_is_visibe) -> (gtk_ctree_is_viewable)
2874 (cell_empty) (cell_set_text) (cell_set_pixmap) (cell_set_pixtext):
2875 removed and replaced by (set_cell_contents)
2876 (set_cell_contents): function for class method set_cell_contents
2877 (real_insert_row): function for class method insert_row
2878 (real_remoce_row): function for class method remove_row
2879 (real_sort_list): function for class method sort_list
2880 (default_compare): removed. CTree now also compares two GtkCTreeRows
2881 instead of two GtkCTreeNodes.
2882 (gtk_ctree_unlink): call gtk_ctree_collapse if parent is empty after
2884 (real_tree_expand) (real_tree_collapse): fix for refcounting of
2886 (set_node_info): call gtk_ctree_node_set_pixtext instead of
2887 manipulating the row itself
2889 * gtk/testgtk.c: use renamed functions of GtkCTree.
2890 new sample to show gtk_ctree_export_to_gnode and gtk_ctree_insert_gnode
2893 Mon Aug 17 15:31:38 1998 Tim Janik <timj@gtk.org>
2895 * gtk/gtkmain.c: removed gtk_input_add_interp.
2897 * gtk/gtkeditable.c (gtk_editable_set_position): fixed bogus "return"
2899 (gtk_editable_get_event_time): fix default: case.
2901 * gtk/gtkclist.c (gtk_clist_swap_rows): fixes for lvalue casts.
2903 * gdk/gdkpixmap.c: made a bunch of unexported functions static.
2906 * gdk/gdkvisual.c: include "gdkx.h", since it exports prototypes
2909 * various minor compilation cleanups, such as bogus commas in
2910 enums and similar things.
2912 Mon Aug 17 07:47:43 1998 Tim Janik <timj@gtk.org>
2914 * gtk/gtkmain.c (gtk_init): NULL terminate the arg list to g_strconcat()
2917 Sun Aug 16 23:14:20 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
2919 * NEWS: updated for 1.1.2
2920 * gtk+.spec: version = 1.1.2
2922 Mon Aug 17 05:10:29 1998 Tim Janik <timj@gtk.org>
2924 * gtk/gtkmain.c (gtk_init): don't call module initializers multiple
2925 times. changed --gtk-with-module to --gtk-module at owen's request.
2927 Mon Aug 17 03:47:55 1998 Tim Janik <timj@gtk.org>
2929 * gtk/gtkmain.c (gtk_init): feature a new commandline option
2930 --gtk-with-module=<module> that allows additional loading and
2931 initialization of modules (e.g. GLE).
2933 Mon Aug 17 01:40:00 1998 Tim Janik <timj@gtk.org>
2935 * configure.in: version bump to 1.1.2, binary age 0, interface age 0.
2936 pass "gmodule" to AM_PATH_GLIB, with that we require libgmodule.so now.
2938 * gtk/gtkmain.c (gtk_init): since glib's g_return*_if_fail macros log
2939 with G_LOG_LEVEL_CRITICAL now, i added "--g-fatal-checks",
2940 "--gdk-fatal-checks" and "--gtk-fatal-checks". that makes up six
2941 different *-fatal-* arguments now. this needs to be revised and
2942 compressed to a reasonable amount of arguments.
2944 Sun Aug 16 20:51:59 1998 Tim Janik <timj@gtk.org>
2946 * gtk/gtkmain.c (gtk_init): fatal warning option is split up now,
2947 "--g-fatal-warnings" causes fatal warnings in GLib,
2948 "--gdk-fatal-warnings" causes fatal warnings in Gdk,
2949 "--gtk-fatal-warnings" causes fatal warnings in Gtk.
2951 * gtk/Makefile.am: define G_LOG_DOMAIN for gtk.
2952 * gdk/Makefile.am: define G_LOG_DOMAIN for gdk.
2956 we need ugly #undef G_LOG_DOMAIN at the start of these files currently,
2957 since automake doesn't support per target _CFLAGS yet.
2959 * configure.in: require GLib 1.1.3.
2961 Sat Aug 15 03:19:30 1998 John Ellis <johne@bellatlantic.net>
2963 * gtk/gtkctree.[ch] (gtk_ctree_set_drag_compare_func): New function
2964 to set a callback to test if a node in drag can be dropped onto
2965 it's currrent location.
2966 * gtk/gtkctree.c (set_mouse_cursor),(check_cursor): New functions
2967 to change the pointer when a drag destination is not allowed.
2969 Thu Aug 13 21:06:00 1998 Raph Levien <raph@gtk.org>
2971 * gdk/gdkrgb.c: committing a patch by Ray Lehtiniemi that
2972 speeds up the 565_d case by about 25% total. Thanks Ray!
2974 Thu Aug 13 16:47:44 1998 Owen Taylor <otaylor@redhat.com>
2976 * Changed GtkSignalFunc back to () from (void). (again!)
2978 * Added file README.cvs-commits
2980 Thu Aug 13 09:11:11 BST 1998 Tony Gale <gale@gtk.org>
2982 * docs/gtk_tut.sgml:
2983 - Tidy up of the menufactory example from
2984 Andy Kahn <kahn@zk3.dec.com>
2985 - New section on Range Widgets from
2986 David Huggins-Daines <bn711@freenet.carleton.ca>
2987 - Started a new section on 'Advanced Event and Signal
2988 Handling' - used an email from Owen.
2989 - New appendix on Gdk Event Types
2990 - Added the tictactoe full example code to the
2991 'Code Examples' appendix
2993 Tue Jul 21 12:42:01 1998 Owen Taylor <otaylor@redhat.com>
2995 * gdk/gdk.h gdk/gdkfont.c: Added gdk_text/string_extents() -
2996 to calculate all the metrics at once of a string, including
2997 things which weren't calculated before.
2999 * gtk/Makefile.am gtk/gtk.h gtk/gtktearoffmenu.[ch]: New
3000 MenuItem type, that when put as the first thing in a
3001 menu, makes the menu tearoff. Currently drawn as a
3004 * gtk/gtkmenuitem.h gtk/gtkcheckmenuitem.c: Added a flag
3005 "hide_on_activate" to the MenuItem class structure to allow
3006 check and radio buttons to be changed with <Space> without
3009 * gtk/gtkitemfactory.c:
3010 - Create a AccelGroup for each MenuShell we create.
3011 - If an '_' appears before a character 'c' in the path,
3012 then make 'c' an accelerator in the menu's accel group,
3013 and if the menuitem is menubar <alt>C an accelerator
3014 in the itemfactory's accel group. Double '__' inserts
3017 * gtk/gtklabel.[ch]: Add support for a pattern arg -
3018 which is a string. If an '_' appears in this string,
3019 the corresponding position in the label is underlined.
3021 Add gtk_label_parse_uline() convenience function which
3022 takes a string with embedded underlines, sets the
3023 pattern and label, and returns the accelerator keyval.
3025 * gtk/gtkmenu.[ch]: Make menus no longer a toplevel widget.
3026 Instead, they create a GtkWindow and add themselves
3027 to that. (When torn off, another new feature, they
3028 create another GtkWindow to hold the torn off menu)
3030 New function gtk_menu_set_tearoff_state()
3032 * gtk/gtkenums.h gtk/gtkmenushell.[ch] gtk/gtkenums.h:
3033 Added action signals for keyboard navigation of menus.
3035 * gtk/gtkmenushell.c: Key press handler which activates
3036 bindings for navigation, and accelerators, for handling
3037 underline accelerators. Exported functions to select
3038 and activate menu items in a menushell.
3040 * gtk/testgtk.c: Added a new "Item Factory" test which
3041 tests GtkItemFactory and the new keyboard navigation
3044 Tue Aug 11 20:52:58 1998 Tim Janik <timj@gtk.org>
3046 * gtk/gtktypeutils.c (gtk_type_class_init): relookup nodes after
3047 external functions have been called. also relookup nodes after
3048 this function has been invoked.
3050 Tue Aug 11 15:04:52 1998 Owen Taylor <otaylor@redhat.com>
3052 * gtk/gtktext.[ch]: Removed has_cursor, set the cursor
3053 beginning of Text when creating the Text widget.
3055 * gtk/testgtk.c: Grab the focus on the text widget so
3056 as to test out the above.
3058 Tue Aug 11 14:55:00 1998 Owen Taylor <otaylor@redhat.com>
3060 * gtk/gtkeditable.c: Reverted part of timj's change of Jul 16.
3061 ::changed is a notification signal and should have no default
3062 handler. A complete redraw of the Text widget does _not_ need to
3063 be done on every text insertion.
3065 Tue Aug 11 13:07:29 1998 Owen Taylor <otaylor@redhat.com>
3066 (gtk-abilleira-072198-patch)
3068 * gtk/gtkwindow.[ch]:
3069 Add gtk_window_set_modal() which sets a flag; when
3070 set the window does a gtk_grab_add() when the window
3071 is shown, and a gtk_grab_remove() when the window
3074 * gtk/gtkfilesel.[ch]: Test if it is running in modal form and in
3075 that case will run "Create Dir","Delete File" and "Rename File"
3076 dialogs as modal too.
3078 * gtk/testgtk.c: Added a button with an example of creating modal
3079 dialog boxes. Including file selection and color selection standard
3082 Tue Aug 11 00:44:47 1998 Owen Taylor <otaylor@redhat.com>
3084 * gtk/gtkhscrollbar.c gtk/gtkvscrollbar.c gtk/gtktoolbar.c:
3085 Removed CAN_FOCUS by default from scrollbars, button
3086 children of toolbar. (But not GTK_TOOLBAR_CHILD_WIDGET children)
3087 (Scrollbar definitely good change, toolbar bit more questionable)
3089 Tue Aug 11 17:49:33 1998 Tim Janik <timj@gtk.org>
3091 * examples/packbox/packbox.c: #include fixes (reported by Asbjoern
3094 Tue Aug 11 00:35:56 1998 Owen Taylor <otaylor@redhat.com>
3096 * gdk/gdkgc.c gdk/gdktypes.h: Applied gtk-pedersen-980727-0;
3097 added all logical operations to gc->function.
3099 Sun Aug 9 23:31:59 1998 Lars Hamann <lars@gtk.org>
3101 * gtk/gtkclist.c (adjust_scrollbars): Fix for resize bug. Call
3102 gtk_widget_size_allocate instead of gtk_widget_queue_resize
3103 if the visibility state of a scrollbar changes.
3105 Mon Aug 10 12:49:54 1998 Tim Janik <timj@gtk.org>
3107 * gtk/gtkhbbox.h: fixed an #include statement (reported by Eric Kidd).
3109 Thu Aug 6 22:37:21 1998 Stefan Jeske <stefan@gtk.org>
3111 * gtk/gtkclist.c: Renamed my_merge and my_mergesort to
3112 gtk_clist_merge and gtk_clist_mergesort. :)
3114 1998-08-06 Martin Baulig <martin@home-of-linux.org>
3116 * gtk/gtkclist.c: Renamed `merge' -> `my_merge' and
3117 `mergesort' -> `my_mergesort'.
3119 Wed Aug 5 21:12:37 1998 Stefan Jeske <stefan@gtk.org>
3121 * gtk/gtkenums.h: new enum GtkSortType.
3125 Added sorting capabilities to GtkCList. New APIs :
3126 gtk_clist_set_compare_func, gtk_clist_set_sort_column,
3127 gtk_clist_set_sort_type, gtk_clist_sort, gtk_clist_set_auto_sort.
3128 New internal functions : default_compare, merge, mergesort.
3130 (gtk_clist_append): This is just a wrapper for gtk_clist_insert now.
3132 (gtk_clist_insert): Modified to handle gtk_clist_append and the
3133 auto sort flag. Changed the return value from void to gint to
3134 return the row number where the element was actually inserted.
3136 (gtk_clist_swap_rows): Return immediately if auto sort flag is set.
3140 Removed the auto_sort flag, replaced ctree->node_compare with
3141 clist->compare all over the place, modified default_compare to
3142 match clist's needs. Removed API´s : gtk_ctree_set_auto_sort,
3143 gtk_ctree_set_compare_func. Removed GtkCTreeCompareFunc typedef.
3145 * gtk/testgtk.c: Modified clist/ctree samples to demonstrate
3146 sorting. The lists can be sorted by a column by clicking the
3147 corresponding title button.
3149 Tue Aug 4 22:02:49 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
3151 * Released GTK+ 1.1.1
3153 Wed Aug 5 02:57:20 1998 Lars Hamann <lars@gtk.org>
3157 (gtk_ctree_find): changed to return a gboolean
3158 (gtk_ctree_insert_gnode): new function for recursive insertion of a
3160 (gtk_ctree_real_select_recursive): fix for extended selection
3161 (gtk_ctree_sort_recursive): in case node == NULL, sort root nodes too.
3162 (gtk_ctree_set_node_info) (set_node_info): few fixes for expanded flag
3164 Tue Aug 4 16:18:26 1998 Tim Janik <timj@gtk.org>
3166 * configure.in: version bump to 1.1.1, binary age 0, interface age 0.
3167 GLib version 1.1.1 is now required at minimum.
3169 * docs/Makefile.am: added gtk_tut_fr.sgml to EXTRA_DIST (french version
3170 of the Gtk+ tutorial, contributed by Eric Jacoboni <jaco@dotcom.fr>.
3172 Mon Aug 3 19:24:48 1998 Owen Taylor <otaylor@redhat.com>
3174 * gtk/gtktext.c (gtk_text_forward_delete): Undraw the
3175 cursor before (possibly) deleting the cursor's text
3178 * gtk/gtktext.c (correct_cache_delete): More attempts
3179 to clean the line-start cache up after inserting
3180 a property. Among other things, make sure to
3181 fix up text->current_line, since it is used to
3182 refetch the changed lines.
3184 Tue Aug 4 10:59:19 1998 Owen Taylor <otaylor@redhat.com>
3186 * gtk/gtktable.[ch]: Empty rows/columns of the table
3187 should not have been marked as being able to shrink.
3188 (Fixes problem with shrinking scrollbarless GIMP canvases)
3190 1998-08-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
3192 * gtk/gtkctree.c (gtk_ctree_find_by_row_data_custom): New public
3193 function to find a row by its data pointer using a custom
3194 comparison function.
3196 Sun Aug 02 22:58:00 1998 George Lebl <jirka@5z.com>
3198 * gtk/gtkclist.c: draw the buttons during a "draw" as well,
3199 this fixes a bug when the whole widget is made non-sesitive
3200 the buttons weren't redrawn
3202 Mon Aug 3 00:04:09 1998 Lars Hamann <lars@gtk.org>
3204 * gtk/gtkclist.c (abort_column_resize): reset drag_pos after abort
3205 * gtk/gtkclist.c (gtk_clist_key_press): removed a few unneeded lines
3206 * gtk/gtkcombo.c (gtk_combo_list_key_press): fixed compiler warning
3208 Sun Aug 2 03:08:07 1998 Owen Taylor <otaylor@gtk.org>
3210 * gdk/gdkwindow.c (gdk_window_reparent): Change
3211 window_private->parent pointer when reparenting.
3213 Sat Aug 1 22:17:00 1998 Raph Levien <raph@acm.org>
3215 * gdk/gdkrgb.c: made some minor config changes to unify GdkRgb
3216 with the standalone release.
3218 Fri Jul 31 20:45:07 1998 Lars Hamann <lars@gtk.org>
3220 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_motion)
3221 (gtk_clist_button_release) (new_column_width): Few fixes for
3222 column resize. Store resize column in clist->drag_pos.
3224 Thu Jul 31 15:18:36 1998 Lars Hamann <lars@gtk.org>
3228 * gtk/testgtk.c : New typedef GtkCTreeNode, changed all GList *node
3229 to GtkCTreeNode *node.
3231 * gtk/gtklist.h : added extended selection mode and auto scrolling.
3232 (struct _GtkList): removed unneeded variables timer, button,
3233 selection_start_pos, selection_end_pos, scroll_direction, have_grab.
3234 Added new variables undo_selection, undo_unselection, last_focus_child,
3235 undo_focus_child, htimer, vtimer, anchor, drag_pos, anchor_state,
3236 drag_selection, add_mode.
3239 (gtk_list_extend_selection), (gtk_list_start_selection),
3240 (gtk_list_end_selection), (gtk_list_select_all),
3241 (gtk_list_unselect_all), (gtk_list_scroll_horizontal),
3242 (gtk_list_scroll_vertical), (gtk_list_toggle_add_mode),
3243 (gtk_list_toggle_focus_row), (gtk_list_toggle_row),
3244 (gtk_list_undo_selection), (gtk_list_end_drag_selection)
3247 (gtk_list_enter_notify): removed, because auto scrolling now works
3248 with gtk_list_motion_notify
3250 New functions, needed for auto scrolling :
3251 (gtk_list_motion_notify) (gtk_list_move_focus_child)
3253 New functions for extended selection support :
3254 (gtk_list_set_anchor), (gtk_list_fake_unselect_all),
3255 (gtk_list_fake_toggle_row), (gtk_list_update_extended_selection),
3256 (gtk_list_focus_lost)
3258 (gtk_list_set_focus_child): modified gtk_container_set_focus_child
3259 function to support auto scrolling, and avoid out-of-sync errors in
3260 case auf GTK_SELECTION_BROWSE
3261 (gtk_list_focus): modified gtk_container_focus function to avoid out
3262 off sync errors in case auf GTK_SELECTION_EXTENDED
3265 * gtk/gtklistitem.c :
3266 New signal functions for key binding support :
3267 (toggle_focus_row), (select_all), (list_item), (unselect_all)
3268 (list_item), (undo_selection), (start_selection), (end_selection)
3269 (extend_selection), (scroll_horizontal), (scroll_vertical),
3271 (gtk_list_item_realize): added GDK_KEY_PRESS_MASK |
3272 GDK_KEY_RELEASE_MASK
3273 (gtk_list_item_draw_focus): modify gc if parent has add_mode set.
3276 (gtk_combo_popup_button_press): grab pointer for combo->list
3277 (gtk_combo_button_release): ungrab only if combo->popwin HAS_GRAB
3278 (gtk_combo_list_key_press): take care of which child HAS_GRAB
3279 (gtk_comb_init): don't connect combo->button with button_release_event
3281 Thu Jul 30 12:39:36 1998 Lars Hamann <lars@gtk.org>
3283 * gtk/gtkclist.c (gtk_clist_motion): removed a few unneeded lines
3285 Wed Jul 29 23:31:50 1998 Lars Hamann <lars@gtk.org>
3287 * gtk/gtkclist.c (gtk_clist_motion): column resize now works with
3288 horizontal autoscrolling, GtkCTree's 'reorder ability' now works
3289 with horizontal and vertical autoscrolling.
3291 Tue Jul 28 20:32:03 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3293 * gtk/docs/man: new directory
3294 * gtk/docs/man/gtk_button.pod: new file, initial gtk_button man page
3296 Tue Jul 28 00:03:20 1998 Lars Hamann <lars@gtk.org>
3298 * gtk/gtknotebook.c (gtk_notebook_paint): small fix for border drawing
3301 Mon Jul 27 09:18:13 BST 1998 Tony Gale <gale@gtk.org>
3303 * docs/gtk_tut.sgml: GtkTree section from
3304 David Huggins-Daines <bn711@freenet.carleton.ca>,
3305 add a GtkText widget example
3306 * examples/text/* example/tree/* : new examples for the
3307 GtkTree and GtkText widgets
3308 * docs/gtk_tut.sgml: added an appendix to hold complete code
3309 examples that aren't in a full form elsewhere in the
3310 tutorial (e.g. scribble)
3312 Mon Jul 27 00:46:21 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3314 * Released GTK+ 1.1.0
3316 Mon Jul 27 04:18:26 1998 Tim Janik <timj@gtk.org>
3318 * gtkfeatures.h.in: revamped the definitions for 1-1-0, so that all
3319 the new API stuff is reflected in one #define GTK_HAVE_FEATURES_1_1_0.
3321 Mon Jul 27 03:11:20 1998 Tim Janik <timj@gtk.org>
3323 * gtk/gtkbindings.c (binding_compose_params): fixup, so that enum
3324 values are looked up.
3326 * gtk/gtktypeutils.h:
3327 * gtk/gtktypeutils.c: new functions gtk_type_flags_find_value and
3328 gtk_type_enums_find_value to lookup enum values.
3331 * gtk/gtkctree.c: change enum name from GtkCTreeExpansion to
3332 GtkCTreeExpansionType. fixed signal creations to pass the enum
3333 types not just the base type GTK_TYPE_ENUM.
3336 * gtk/gtkclist.c: fixed signal creations to pass the real enum
3337 types not just the base type GTK_TYPE_ENUM.
3339 Sun Jul 26 14:50:07 1998 Stefan Jeske <stefan@gtk.org>
3342 Began cleanup, e.g. use gtk_widget_show_all instead of many
3343 gtk_widget_show's. Completely rewrote the button box sample
3344 (only one window now). Removed "miscellaneous" button.
3346 Sun Jul 26 14:48:14 1998 Stefan Jeske <stefan@gtk.org>
3348 * gtk/gtkvbbox.c (gtk_vbutton_box_size_allocate):
3349 Fixed wrong allocation for GTK_BUTTONBOX_END.
3350 (allocation->x => allocation->y)
3352 Sun Jul 26 14:06:37 1998 Lars Hamann <lars@gtk.org>
3354 * gtk/gtkclist.c (gtk_clist_button_press) (gtk_clist_button_release)
3355 (abort_column_resize) (gtk_clist_key_press): fix for pointer grab
3357 * gtk/gtkctree.c (real_tree_select): added check to avoid double
3359 (gtk_ctree_button_press)
3360 (gtk_ctree_button_release): fix for pointer grab
3362 Sat Jul 25 13:16:00 1998 Damon Chaplin <DAChaplin@msn.com>
3364 * gtk/gtkfontsel.c (gtk_font_selection_get_fonts):
3365 Fixed initialization problem - dirty memory could cause problems.
3366 Also checked that bitmapped fonts can be scaled when showing the
3369 Sat Jul 25 02:25:03 1998 Lars Hamann <lars@gtk.org>
3371 * gtk/gtkctree.c (gtk_ctree_sort_recursive)
3372 (gtk_ctree_sort_recursive): test for node != NULL
3373 (gtk_ctree_is_visible) (gtk_ctree_realize) (gtk_ctree_unrealize)
3374 (gtk_ctree_last) : added sanity checks
3375 * gtk/gtkclist.c (gtk_clist_button_press): removed "no_focus_row"
3377 Fri Jul 24 18:15:49 1998 Lars Hamann <lars@gtk.org>
3379 * gtk/gtkclist.c (toggle_focus_row): mini code cleanup
3381 Fri, 24 Jul 1998 10:56:22 +0200 Paolo Molaro <lupus@debian.org>
3383 * gtk/gtkfeatures.h.in: added GTK_HAVE_ENUM_VALUE_STRUCT.
3385 Thu Jul 23 00:11:39 1998 Tim Janik <timj@gtk.org>
3387 * gtk/testgtkrc: introduce testbindings on C-1 for buttons,
3388 to check out binding priorities. someone should really write
3389 gtkrc-mode for emacs.
3391 * gtk/gtkwidget.c (gtk_widget_class_init): remove ugly bindings test.
3392 * gtk/testgtk.c (main): and move it here ;). this test says something
3393 on release of C-9. (this works only if the mouse pointer is on a
3394 spinbutton and there is no focus widget).
3398 export gtk_rc_parse_color, gtk_rc_parse_state and a new function
3399 gtk_rc_parse_priority to parse path priority types.
3401 feature binding parsing.
3403 Wed Jul 22 23:41:17 1998 Tim Janik <timj@gtk.org>
3405 * gtk/gtkbindings.h:
3406 * gtk/gtkbindings.c: new function gtk_binding_parse_binding() to
3407 feature binding parsing in rc files.
3408 * gtk/gtkbindings.c (gtk_binding_set_new): bug fix.
3409 * gtk/gtkbindings.c (gtk_binding_pattern_compare): bug fix, we used to
3410 order the bindings with lowest priority first.
3412 Wed Jul 22 15:21:08 PDT 1998 Manish Singh <yosh@gimp.org>
3414 * gdk/gdkrgb.c: actually builds and runs properly on big
3415 endian machines now, because we #include config.h. Also
3416 fixed up a compile error in the WORDS_BIGENDIAN case in
3417 gdk_rgb_convert_565_gray. I made the fix by looking at
3418 patterns in the other code; Raph can you verify this?
3420 * gdk/gdkthreads.c: #include <unistd.h> to quell compiler
3423 Wed Jul 22 23:00:44 1998 Lars Hamann <lars@gtk.org>
3425 * gtk/gtkctree.c (tree_select/unselect) (tree_expand/collapse)
3426 (tree_toggle_expansion) (real_select/unselect_row)
3427 (gtk_ctree_select/unselect) : few fixes for gtk_signal_emits
3429 Wed Jul 15 17:44:47 1998 Owen Taylor <otaylor@redhat.com>
3431 * gtk/gtktext.c (new_text_property): We free things from
3432 the text property MemChunk, so it needs to be G_ALLOC_AND_FREE.
3434 * Fix up line start cache when splitting a property
3437 Wed Jul 15 21:15:52 1998 Owen Taylor <otaylor@redhat.com>
3439 * gtk/gtkwidget.c: restauration => restoration
3441 Thu Jul 16 20:11:36 1998 Owen Taylor <otaylor@redhat.com>
3443 * gdk/gdkxid.c (gdk_xid_table_lookup): If xid_ht
3444 hasn't been created yet, don't do the lookup.
3446 1998-07-20 Raph Levien <raph@acm.org>
3448 * gdk/gdkrgb.c: More cleanups in the config process.
3450 1998-07-20 Raph Levien <raph@acm.org>
3452 * gdkrgb.c: Fixed minor config bug preventing big-endian
3453 architectures from working.
3455 Tue Jul 21 06:32:43 1998 Stefan Jeske <stefan@gtk.org>
3457 * gtk/gtkprogressbar.{c,h} gtk/testgtk.c: Fixed wrong size of
3458 activity indicator. It is settable now as a fraction of the
3459 total width/height using gtk_progress_bar_set_activity_blocks.
3460 Renamed gtk_progress_bar_set_number_of_blocks to
3461 gtk_progress_bar_set_discrete_blocks.
3463 Mon Jul 20 21:28:18 1998 Lars Hamann <lars@gtk.org>
3465 * gtk/gtkctree.c (gtk_ctree_post_recursive_to_depth)
3466 (gtk_ctree_pre_recursive_to_depth): new functions, recursive process
3467 tree to specified depth
3468 (gtk_ctree_expand_to_depth): expand tree to specified depth
3469 (gtk_ctree_collapse_to_depth): collapse all nodes with level >= depth
3471 Sun Jul 19 23:51:05 1998 Lars Hamann <lars@gtk.org>
3473 * gtk/gtkclist.c (scroll_vertical): fix for vertical scrolling in case
3474 of GTK_CLIST_ADD_MOD
3475 * gtk/testgtk.c (add1000_clist): changed pixmap
3477 Sat Jul 18 22:59:04 1998 Tim Janik <timj@gtk.org>
3480 * gtk/gtkmain.c: export gtk_binary_age and gtk_interface_age.
3482 * gtk/gtktypeutils.h:
3483 * gtk/gtkitemfactory.h: remove "void" from prototypes again.
3485 Sat Jul 18 00:54:01 1998 Lars Hamann <lars@gtk.org>
3487 * gtk/gtknotebook.c (gtk_notebook_set_child_arg): added support for
3488 CHILD_ARG_MENU_LABEL, CHILD_ARG_TAB_LABEL
3489 (gtk_notebook_get_child_arg): added support for CHILD_ARG_MENU_LABEL,
3491 (gtk_notebook_reorder_child): new funktion to change position of a
3493 (gtk_notebook_draw_arrow): draw left/right arrow with
3494 GTK_SHADOW_ETCHED_IN if focus_tab is first/last tab.
3496 * gtk/gtkstyle.c (gtk_default_draw_arrow):
3497 added GTK_SHADOW_ETCHED_IN/OUT
3499 Sun Jul 19 12:19:16 1998 Stefan Jeske <stefan@gtk.org>
3501 * gtk/gtkprogress.c gtk/gtkprogress.h gtk/gtkprogressbar.c
3502 gtk/gtkprogressbar.h gtk/Makefile.am gtk/gtk.h gtk/testgtk.c:
3503 Introduced generic GtkProgress widget. Derived GtkProgressBar from
3504 GtkProgress. Made GtkProgressBar much more flexible (see testgtk).
3506 Fri Jul 17 23:49:28 PDT 1998 Manish Singh <yosh@gimp.org>
3508 * gtk/gtktypeutils.h
3509 * gtk/gtkitemfactory.h: explicitly specify void in prototype
3511 Fri Jul 17 17:54:02 1998 Lars Hamann <lars@gtk.org>
3513 * gtk/gtkclist.c (scroll_vertical): fix to avoid flicker at begin/end
3516 Fri Jul 17 05:30:47 1998 Tim Janik <timj@gtk.org>
3518 * gtk/gtksignal.c (gtk_handlers_run) (gtk_signal_real_emit):
3519 sropped the approach of copying all signal specific data into a
3520 GtkHandlerInfo structure. we rather keep the signal data on the stack
3521 in gtk_signal_real_emit and pass that over to gtk_handlers_run. this
3522 avoids multiple lookups of the signal pointer and works savely together
3523 with destroy notifiers of handlers.
3525 * gtk/gtkentry.c (gtk_entry_key_press): care for the posssibility that
3526 someone destroys the entry on the ::activate signal.
3528 Fri Jul 17 01:21:32 1998 Tim Janik <timj@gtk.org>
3530 * gtk/gtkarrow.c (gtk_arrow_expose): use misc->xpad for x calculation
3531 instead of ypad (typo).
3532 (gtk_arrow_set): clear all of the arrow's allocation (left a 1 pixel
3533 border around the allocation).
3534 (gtk_arrow_init): the static requisition needs to be setup in this
3535 function rather than gtk_widget_new(), so arrow creation works without
3536 the gtk_arrow_new() constructing.
3537 (gtk_arrow_expose): return TRUE, since we actually handled the expose.
3539 * gtk/gtkwidget.c (gtk_widget_real_size_request): provide a default
3540 implementation for GtkWidget::size_request, so size requisition for
3541 simple statically sized widgets like GtkArrow works.
3543 Thu Jul 16 14:16:16 PDT 1998 Manish Singh <yosh@gimp.org>
3545 * gtk-config.in: minor changes to gtk-config: --cflags doesn't
3546 prepend -I@libdir@/glib/include anymore, since glib-config handles
3547 it; --libs strips out redundant -L<path>'s properly (there was
3548 code in there to do it before, but it didn't work)
3550 Thu Jul 16 18:24:41 1998 Tim Janik <timj@gtk.org>
3552 * gtk/gtknotebook.h:
3553 * gtk/gtknotebook.c: signdness corrections all ove the place.
3554 implementation of object arguments: GtkNotebook::enable_popup,
3555 GtkNotebook::tab_pos, GtkNotebook::tab_border, GtkNotebook::show_tabs,
3556 GtkNotebook::show_border, GtkNotebook::scrollable and GtkNotebook::page.
3557 begun implementation of child args, we have GtkNotebook::tab_label, but
3558 GtkNotebook::menu_label and GtkNotebook::position still lack the
3560 (gtk_notebook_remove_page):
3561 (gtk_notebook_current_page): allow negative indices (-1) as alias for
3565 * gtk/gtkentry.c: GtkType and macro fixups. implementation of object
3566 arguments GtkEntry::max_length and GtkEntry::visibility.
3567 (gtk_entry_adjust_scroll): queue a redraw.
3569 * gtk/gtkeditable.h:
3570 * gtk/gtkeditable.c: GtkType und macro fixups. implementation of
3571 object arguments GtkEditable::text_position and GtkEditable::editable.
3572 new (action) signal GtkEditable::set_editable.
3573 provide a default handler for GtkEditable::changed that queues a redraw.
3576 * gtk/gtktext.c: GtkType und macro fixups. override GtkEditable::
3579 Thu Jul 16 14:42:11 1998 Lars Hamann <lars@gtk.org>
3581 * gtk/gtkctree.c (gtk_ctree_button_release): fix for sigsegv in
3582 case of drag_target == NULL
3583 * gtk/gtkclist.c (gtk_clist_button_press): fix for GTK_2/3BUTTON_PRESS.
3584 Clist did not emit an select_row signal in case of GTK_2/3BUTTON_PRESS.
3585 * gtk/gtkfilesel.c (gtk_file_selection_file_button,
3586 gtk_dir_selection_file_button): fix due to changes in clist's
3589 Thu Jul 16 01:27:15 1998 Tim Janik <timj@gtk.org>
3592 * gtk/gtkwidget.c (gtk_widget_set_usize): handle negative values
3593 similar to gtk_widget_set_uposition(). that is: -1=unspecified,
3594 -2=leave untouched. changed the width/height field of GtkWidgetAuxInfo
3595 to be gint16s rather than guint16s, since that's what the code expected
3596 (for a long time actually).
3598 * gtk/gtkviewport.c:
3599 added support for object arguments: GtkViewport::shadow_type,
3600 GtkViewport::vadjustment and GtkViewport::hadjustment.
3601 (gtk_viewport_add): chain gtk_bin_add.
3603 * gtk/gtkscrolledwindow.c:
3604 added support for object argument: GtkScrolledWindow::hscrollbar_policy,
3605 GtkScrolledWindow::vscrollbar_policy and GtkScrolledWindow::viewport.
3607 * gtk/gtkadjustment.h:
3608 * gtk/gtkadjustment.c:
3613 * gtk/gtkscrolledwindow.h:
3614 * gtk/gtkscrolledwindow.c:
3615 * gtk/gtkviewport.h:
3616 * gtk/gtkviewport.c:
3617 GtkType and macro fixups.
3619 Thu Jul 16 01:10:02 1998 Lars Hamann <lars@gtk.org>
3623 Added focus handling, horizontal and vertical autoscrolling,
3624 extended Selection Mode, key bindings
3625 Added gtk_ctree_toggle_expansion & gtk_ctree_toggle_expansion_recursive
3626 Changed gtk_ctree_scroll_to to gtk_ctree_moveto.
3627 Removed gtk_ctree_clear.
3631 Added focus handling, horizontal and vertical autoscrolling,
3632 extended Selection Mode, key bindings
3634 Wed Jul 15 12:39:27 1998 Raph Levien <raph@acm.org>
3636 * This checkin integrates GdkRgb version 0.0.3 into the Gtk 1.1
3637 source tree. For more information on GdkRgb, please see:
3638 http://www.levien.com/gdkrgb/
3640 * gtk/gtkfeatures.h.in (GTK_HAVE_GDK_RGB): added this feature. It
3641 bothers me slightly that the feature is in gdk, and this file is
3642 in gtk, but it's probably ok.
3644 * gdk/gdk.h: Added an #include of <gdk/gdkrgb.h>
3647 * gdk/gdkrgb.h: Added this module.
3649 * Makefile.am (EXTRA_DIST): Added gdkrgb.c and gdkrgb.h files.
3651 * configure.in: added AC_C_BIGENDIAN test (needed by GdkRgb).
3653 Wed Jul 15 14:20:10 1998 Tim Janik <timj@gtk.org>
3655 * gtk/gtksignal.c (gtk_signal_real_emit): pass only the signal_id
3656 to this function. it needs to relookup the signal multiple times.
3657 this fixes spurious segfaults that could show up with signal intensive
3658 code, when classes are created during a pending emission (which is
3661 Tue Jul 14 19:12:12 1998 Tim Janik <timj@gtk.org>
3663 * gtk/gtkbutton.c (gtk_button_set_arg): don't destroy a buttons
3664 child if it isn't a label.
3666 Tue Jul 14 11:41:38 1998 Tim Janik <timj@gtk.org>
3669 * gtk/gtkseparator.h:
3670 * gtk/gtkhseparator.h:
3671 * gtk/gtkvseparator.h: macro and GtkType fixups.
3673 Tue Jul 14 06:25:46 1998 Tim Janik <timj@gtk.org>
3675 * gtk/testgtk.c (create_cursors): display the current cursor name.
3677 * gtk/gtktypeutils.h:
3678 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): cleanups to
3679 the fundamental type definition. the GtkArg union now only covers
3680 the required storage types for argument values. adapted the GTK_VALUE_*
3681 macro set. handle GTK_TYPE_UCHAR. definiton of type set bounds macros.
3683 * gtk/gtkargcollector.c (gtk_arg_collect_value): clean ups of the
3684 code, fixed int/float collection. fixed a bug in the sanity checking
3685 code for GtkObjects.
3687 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixups of the
3688 argument collection code.
3690 * gtk/gtksignal.c (gtk_signal_collect_params): use the type set bounds
3691 macros when distinguishing the return type.
3693 Mon Jul 13 12:42:51 1998 George Lebl <jirka@5z.com>
3695 * gdk/gdkwindow.h: (gdk_window_reparent) check if old_parent_private
3696 is not NULL before trying to g_list_remove the child. A patch
3697 from Michael Lausch.
3699 Sun Jul 12 16:40:06 1998 Tim Janik <timj@gtk.org>
3701 * gtk/gtkargcollector.c (gtk_arg_collect_value): fix float argument
3702 collection (always casted to doubles upon argument passing).
3704 Sun Jul 12 05:59:26 1998 Tim Janik <timj@gtk.org>
3706 * gtk/gtktypeutils.c (gtk_type_new): call the base classes'
3707 object_init_func for derived objects with the object's ->klass field
3708 still pointing to the corresponding base class, otherwise overridden
3709 class functions could get called with partly-initialized objects.
3710 (change from Tero Pulkkinen <terop@modeemi.cs.tut.fi>).
3712 Sun Jul 12 02:47:35 1998 Tim Janik <timj@gtk.org>
3716 (gtk_object_arg_get_info): new functions which wraps gtk_arg_get_info().
3718 * gtk/gtkcontainer.h:
3719 * gtk/gtkcontainer.c:
3720 (gtk_container_child_arg_get_info): new function which wraps
3723 Fri Jul 10 13:29:53 1998 Tim Janik <timj@gtk.org>
3725 * gtk/gtkcontainer.c:
3726 (gtk_container_arg_get):
3727 (gtk_container_arg_set):
3729 (gtk_object_arg_set):
3730 (gtk_object_arg_get):
3731 strictly check for the associated get/set arg functions. if an
3732 arg is readable or writable, the associated class functions *must*
3735 Fri Jul 10 09:37:50 1998 Tim Janik <timj@gtk.org>
3737 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): only take the
3738 padding into account if there is an accelerator.
3740 Fri Jul 10 05:51:44 1998 Tim Janik <timj@gtk.org>
3742 * gtk/gtkcontainer.c:
3743 (gtk_container_add_with_args): collect the arguments with
3744 gtk_container_child_args_collect, not through gtk_object_args_collect.
3745 (gtk_container_child_set): likewise.
3747 Fri Jul 10 04:20:35 1998 Tim Janik <timj@gtk.org>
3749 * gtk/gtktypeutils.h:
3750 * gtk/gtktypeutils.c: added a new internal type GTK_TYPE_IDENTIFIER
3751 which is derived from GTK_TYPE_STRING.
3753 * gtk/gtkbindings.c: reworked the argument type handling.
3755 Thu Jul 9 21:03:19 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3757 * gtk/gtkpreview.c: add in just enough support for 1 or 4 bits
3758 so that it seems to allow normal operation in those modes,
3759 although you will only see black (GIMP toolbar now pops up,
3760 just don't create a new image and GIMP now works in 4 bit.)
3762 Thu Jul 9 20:20:04 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
3764 * gdk/gdkvisuals.c: 4 bit support, increased available_depths
3765 array, which was too low (?)
3767 Fri Jul 10 00:02:04 1998 Tim Janik <timj@gtk.org>
3769 * gtk/gtkcontainer.h:
3770 * gtk/gtkcontainer.c: deleted most of the argument handling code, since
3771 that is now implemented in gtkarg.c. similar to gtk_object_args_collect,
3772 we now export a new function gtk_container_child_args_collect().
3773 for consistency with the object arguments, a few functions got renamed:
3774 gtk_container_child_arg_get -> gtk_container_child_get,
3775 gtk_container_child_arg_set -> gtk_container_child_set,
3776 gtk_container_child_arg_getv -> gtk_container_child_getv,
3777 gtk_container_child_arg_setv -> gtk_container_child_setv,
3778 gtk_container_add_with_argv -> gtk_container_addv.
3779 note, gtk_container_add_with_args() remained, because its equivalent
3780 would be gtk_container_add(,, ...) which would break all existing code.
3781 (gtk_container_add_child_arg_type): similar to gtk_object_add_arg_type,
3782 we expect the `arg_name' argument to be a const static string now.
3783 (gtk_container_get_child_arg_type): function removed.
3785 Thu Jul 9 07:03:04 1998 Tim Janik <timj@gtk.org>
3787 * gtk/gtkargcollector.c: new file which holds gtk_arg_collect_value().
3788 this is a static inline function that collects command line arguments
3789 from a va_list. this file can just be included in all places that
3790 need this functionality.
3793 * gtk/gtkarg.c: new files which implement most of the argument
3794 handling stuff from gtkobject.c. also collected a few more
3795 gtk_arg_* utility functions from else places.
3798 * gtk/gtkobject.c: moved most of the argument handling code into
3799 gtkarg.c. we now export gtk_object_args_collect() as a non-public
3800 method with a blind va_list pointer.
3801 (gtk_object_add_arg_type): the `arg_name' argument is required to be a
3802 const static string now.
3803 (gtk_object_get_arg_type): function got removed.
3807 (gtk_widget_new): adaptions for gtk_object_args_collect().
3809 * gtk/gtktypeutils.c (gtk_type_init_builtin_types): changed the internal
3810 fundamental type name so as to have a valid prefix, e.g. "bool"->
3811 "gboolean", "string"->"GtkString" and somesuch, left "void" as is,
3812 though that should probably be something like GtkNone since the
3813 type itself is called GTK_TYPE_NONE.
3814 even the internal type names need to avoid name clashes and must live
3815 in their own namespace, several code portions rely on that.
3816 we should relly have typedefs such as typedef gchar* GtkString; so the
3817 fundamental type names can be used for code dumpers just like with all
3820 Wed Jul 8 15:31:28 1998 Tim Janik <timj@gtk.org>
3822 * gtk/gtkbutton.c: handle GTK_RELIEF_HALF, which was introduced to
3823 keep either GTK_STATE_NORMAL for relief buttons (GTK_RELIEF_NONE) or
3824 to still honour GTK_WIDGET_STATE(), e.g. for coloured buttons
3826 (gtk_button_paint): set the background for prelighted buttons with
3827 GTK_STATE_NORMAL only if GTK_RELIEF_NONE.
3828 (gtk_button_draw_focus): if GTK_RELIEF_NONE, use GTK_STATE_NORMAL for
3829 the shadow type (otherwise we get strange shadows for coloured buttons).
3830 (gtk_button_set_relief): queue a redraw after changing
3832 (gtk_button_class_init):
3833 (gtk_button_set_arg):
3834 (gtk_button_get_arg): added object argument "GtkButton::relief".
3836 * gtk/gtkenums.h (enum): added GTK_RELIEF_HALF.
3838 Mon Jul 6 18:30:48 1998 Tim Janik <timj@gtk.org>
3841 * gtk/gtkbutton.c: GtkButtons are now derived from GtkBin. we mirror
3842 GTK_BIN (button)->child to button->child to keep source compatibility.
3844 * gtk/gtkoptionmenu.c:
3846 * gtkcheckbutton.c: don't refer to button->child, but
3847 GTK_BIN (button)->child instead.
3849 Mon Jul 6 12:06:23 BST 1998 Tony Gale <gale@gtk.org>
3851 * docs/gtkfaq.sgml: update anon CVS info
3853 Sat Jul 4 13:16:24 1998 Tim Janik <timj@gtk.org>
3855 * gtk/*.c: changed reversed_[12] to reserved_[12] in gtk_*_get_type
3859 * gdk/gdkvisual.c: check for some pointer values to be != NULL, prior
3862 1998-07-03 Federico Mena Quintero <federico@nuclecu.unam.mx>
3864 * gtk/gtkfeatures.h.in: Added GDK_HAVE_FULL_CROSSING_EVENT, since
3865 I seem to have erroneously added it to gtkfeatures.h (not .h.in).
3867 Fri Jul 3 14:55:31 PDT 1998 Manish Singh <yosh@gimp.org>
3869 * gtk/gtkfeatures.h.in: added GTK_HAVE_RELIEF_STYLE
3871 Wed Jul 1 20:58:46 1998 Tim Janik <timj@gtk.org>
3874 * gtk/gtkwidget.c: temporary implementation of action signal "debug_msg"
3876 * gtk/gtkbindings.c (gtk_binding_entry_add_signal): fixed an off-by-one
3877 error that prevented signal to entry addition for signals with
3880 Wed Jul 1 10:05:36 PDT 1998 Manish Singh <yosh@gimp.org>
3882 * ltconfig: fix for properly detecting shared lib support on
3883 SunPro cc (taken from libtool 1.2.a)
3885 Wed Jul 1 03:33:30 1998 Tim Janik <timj@gtk.org>
3887 * gtk/gtkrc.c: implementation of the "class" keyword for styles.
3889 Tue Jun 30 14:30:37 1998 Tim Janik <timj@gtk.org>
3891 * gtk/gtkrc.c: fixed lookup order for rc styles. the latest defined
3892 rc set pattern is favoured, this is needed for overriding of style
3893 patterns with subsequently parsed rc files.
3895 Tue Jun 30 12:45:19 1998 Tim Janik <timj@gtk.org>
3897 * gtk/gtkrc.c: code overhaul for simplicity and more descriptive
3900 Tue Jun 30 09:24:40 1998 Tim Janik <timj@gtk.org>
3902 * gtk/gtkaccelgroup.c (gtk_accelerator_parse): parse "<Release>"
3904 (gtk_accelerator_name): add "<Release>" to the accelerator name if
3907 * gtk/gtkbindings.c (BINDING_MOD_MASK): take BINDING_MOD_MASK into
3910 * gtk/gtkwidget.c (gtk_widget_real_key_release_event): implemented
3911 default handler for key-release events, which checks for activation
3912 of GDK_RELEASE_MASK key bindings.
3914 * gdk/gdktypes.h (enum): added GDK_RELEASE_MASK to GdkModifierType.
3916 Mon Jun 29 13:39:45 1998 Tim Janik <timj@gtk.org>
3918 * gtk/gtkarrow.h: GtkType and macro fixups.
3919 * gtk/gtkarrow.c: widget argument implementation: "GtkArrow::arrow_type",
3920 "GtkArrow::shadow_type".
3922 Sun Jun 28 11:39:17 1998 Tim Janik <timj@gtk.org>
3924 * gtk/gtkalignment.h:
3925 * gtk/gtkbin.h: GtkType and macro fixups.
3927 * gtk/gtkalignment.c (gtk_alignment_class_init): widget argument
3928 implementation: GtkAlignment::xalign, GtkAlignment::yalign,
3929 GtkAlignment::xscale, GtkAlignment::yscale.
3931 Sun Jun 28 04:29:10 1998 Tim Janik <timj@gtk.org>
3933 * gtk/gtktypeutils.c (gtk_type_class_init): call the base class init
3934 fucntions from all parent types upon class initialization.
3936 * gtk/gtkcontainer.c:
3937 (gtk_container_get_type): announce gtk_container_base_class_init to
3939 (gtk_container_base_class_init): new function to feature base class
3941 (gtk_container_get_child_arg):
3942 (gtk_container_set_child_arg): call the GtkContainerClass get_child_arg
3943 and set_child_arg methods of the class indicated through the argument
3947 (gtk_object_base_class_init): new function to feature base class
3949 (gtk_object_init_type): announce gtk_object_base_class_init to the type
3951 (gtk_object_class_init): setup the get_arg and set_arg pointers for
3954 (gtk_object_getv): call the GtkObjectClass get_arg and set_arg methods,
3955 instead of bothering the type system with this.
3957 * gtk/gtkaccellabel.c:
3959 * gtk/gtkradiobutton.c:
3961 * gtk/gtktogglebutton.c:
3962 * gtk/gtktipsquery.c:
3969 * gtk/gtklabel.c: set the object_class->{g|s}et_arg pointers to the
3970 corresponding gtk_*_{g|s]et_arg functions and updated the gtk_*_get_type
3971 functions wrt GtkTypeInfo initialization. changed a lot of the set/get
3972 arg functions to take a GtkObject argument.
3974 gtk/gtkadjustment.c:
3977 gtk/gtkaspectframe.c:
3980 gtk/gtkcheckbutton.c:
3981 gtk/gtkcheckmenuitem.c:
3989 gtk/gtkdrawingarea.c:
4003 gtk/gtkhscrollbar.c:
4004 gtk/gtkhseparator.c:
4006 gtk/gtkinputdialog.c:
4008 gtk/gtkitemfactory.c:
4016 gtk/gtkoptionmenu.c:
4020 gtk/gtkprogressbar.c:
4021 gtk/gtkradiomenuitem.c:
4026 gtk/gtkscrolledwindow.c:
4028 gtk/gtkspinbutton.c:
4041 gtk/gtkvscrollbar.c:
4042 gtk/gtkvseparator.c: updated the GtkTypeInfo initialization code to
4043 match the modified GtkTypeInfo structure.
4045 Sat Jun 27 23:23:27 PDT 1998 Manish Singh <yosh@gimp.org>
4047 * gtk/testgtk.c: use rand() instead of random() for portability
4049 Sat Jun 27 22:42:28 PDT 1998 Manish Singh <yosh@gimp.org>
4053 * gdk/gdk.c: use native Xlib XConvertCase if it's available
4055 Sat Jun 27 15:44:46 1998 Tim Janik <timj@gtk.org>
4057 * gdk/gdk.c (gdkx_XConvertCase): compatibility function to provide
4058 XConvertCase() functionality from X11R6 on X11R5 systems.
4060 Thu Jun 25 10:50:34 1998 Stefan Jeske <stefan@gtk.org>
4062 * gdk/gdk.h gdk/gdkfont.c: Added functions gdk_text_height,
4063 gdk_string_height, gdk_char_height to retrieve the exact
4066 Thu Jun 25 07:53:51 BST 1998 Tony Gale <gale@gtk.org>
4068 * docs/gtk_tut.sgml: add section on GtkCList widget, contributed
4069 by Stefan Mars <mars@lysator.liu.se>
4070 * examples/clist/clist.c examples/clist/Makefile: example code
4071 for GtkCList widget from the Tutorial
4073 Wed Jun 24 16:38:02 1998 Tim Janik <timj@gtk.org>
4075 * gtk/gtkbin.c (gtk_bin_remove): do not avoid to queue for a resize
4076 if the container is not visible, we might be a toplevel! this holds
4077 for all other base container implementations as well, that are
4078 candidates to derive toplevels from. in general the resizing code will
4079 care about visibility itself.
4080 * gtk/gtkmenushell.c (gtk_menu_shell_remove): likewise.
4081 * gtk/gtkbox.c (gtk_box_remove): likewise.
4083 * gtk/gtkwindow.c (gtk_window_move_resize): save ->use_uposition around
4084 gtk_window_set_hints(), since we haven't calculated the new position
4087 * gdk/gdkwindow.c (gdk_window_get_pointer): take care that *x, *y and
4088 *mask are alway initialized in a sane way, regardless of the return
4091 Wed Jun 24 14:14:32 1998 Tim Janik <timj@gtk.org>
4093 * gtk/gtkcontainer.c: new function gtk_container_child_arg_set, similar
4094 to gtk_container_child_arg_setv, but takes a variable argument list.
4095 new function gtk_container_get_child_arg_type, which is needed by
4096 gtk_object_collect_args.
4098 * gtk/gtkobject.c: changed prototype for gtk_object_collect_args, to
4099 take a function pointer to figure the argument type.
4100 adapted callers to pass gtk_object_get_arg_type.
4101 * gtk/gtkwidget.c: adapted gtk_object_collect_args callers to pass
4102 gtk_object_get_arg_type..
4106 (gtk_packer_reorder_child): new function to change the packing order
4108 (gtk_packer_size_request):
4109 (gtk_packer_size_allocate): take container->border_width into acount.
4111 * gtk/gtkpacker.c: implemented widget arguments:
4112 "GtkPacker::spacing", "GtkPacker::border_width", "GtkPacker::pad_x",
4113 "GtkPacker::pad_y", "GtkPacker::ipad_x", "GtkPacker::ipad_y".
4114 implemented child arguments:
4115 "GtkPacker::side", "GtkPacker::anchor", "GtkPacker::expand",
4116 "GtkPacker::fill_x", "GtkPacker::fill_y", "GtkPacker::use_default",
4117 "GtkPacker::border_width", "GtkPacker::pad_x", "GtkPacker::pad_y",
4118 "GtkPacker::ipad_x", "GtkPacker::ipad_y", "GtkPacker::position".
4120 * gtk/gtkmisc.c (gtk_misc_set_arg): for padding args, set the padding,
4123 * gtk/gtkeventbox.h:
4124 * gtk/gtkeventbox.c: GtkType and macro fixups.
4126 * gtk/testgtk.c (entry_toggle_sensitive): new function to toggle
4127 sensitivity of an entry.
4129 * gtk/gtkstyle.c (gtk_style_new): support normal grey as default color
4130 for insensitive base and text.
4132 * gtk/gtkentry.c (gtk_entry_realize): set the window backgrounds
4133 widget state dependent.
4134 (gtk_entry_style_set): likewise.
4135 (gtk_entry_state_changed): set background color on state changes.
4136 (gtk_entry_draw_text): for non selected text, use state dependent
4139 * gtk/gtktogglebutton.c: support for widget arguments
4140 "GtkToggleButton::active" and "GtkToggleButton::draw_indicator".
4142 Wed Jun 24 08:35:45 1998 Stefan Jeske <stefan@gtk.org>
4144 * gtk/gtkspinbutton.c (gtk_spin_button_spin): Added compatibility
4145 code for 1.0.x-like parameters. Changed internal interface of
4146 gtk_spin_button_real_spin. Several fixes to avoid emission of
4147 "value_changed" where possible.
4149 Tue Jun 23 22:21:33 PDT 1998 Manish Singh <yosh@gimp.org>
4151 * gtk-boxed.defs: s/GkWidget/GtkWidget/
4153 Wed Jun 24 07:47:29 1998 Tim Janik <timj@gtk.org>
4155 * gtk/testgtk.c (create_idle_test): added a frame with radio buttons
4156 to select the resize_mode for the idle-labels container.
4159 * gtk/gtkframe.c: GtkType and macro corrections.
4161 * gtk/gtkradiobutton.c (gtk_radio_button_set_arg): new function to
4162 support widget argument "GtkRadioButton::group".
4164 Tue Jun 23 08:01:09 1998 Tim Janik <timj@gtk.org>
4166 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): queue a resize
4167 unconditionally if resize_mode has changed.
4169 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_init): set
4170 GTK_RESIZE_QUEUE on the scrolled window.
4171 (gtk_scrolled_window_construct): set GTK_RESIZE_PARENT for the vieport.
4173 Tue Jun 23 04:20:30 1998 Tim Janik <timj@gtk.org>
4175 * gtk/gtkcontainer.h:
4176 * gtk/gtkcontainer.c:
4177 (GTK_IS_RESIZE_CONTAINER): new macro to find out if
4178 a given gtkobject is a container with resize_mode==GTK_RESIZE_PARENT.
4179 (gtk_container_queue_resize): new function to queue a container for
4180 a *size* reallocation (doesn't affect its position, and thus its
4181 parent is left untouched usually).
4182 (gtk_container_get_resize_container): new function to retrive the next
4183 most resize container which is not itself queued for a resize.
4184 (gtk_container_idle_sizer): new function to carefully process the
4185 container_resize_queue since it can change during invokation of
4186 gtk_container_check_resize().
4187 (gtk_container_resize_children): total rework of this function to
4188 properly handle resize containers. makes a lot of assumptions whitch
4189 are stated in the comments.
4191 * gtk/gtkcontainer.c:
4192 (gtk_container_real_check_resize): only requeue ourselves if we are not
4194 (gtk_container_clear_resize_widgets): care for automatic deletion of our
4195 resize_widgets list on size_allocate through a handler connection.
4197 * gtk/gtkwindow.c (gtk_window_shutdown): new functionm to reset the
4198 focus and default widget of a window, so to take the burden from
4199 gtk_widget_unparent.
4201 * gtk/gtkviewport.c: removed gtk_viewport_check_resize, which tried
4202 to be clever, but actually messed up the resize_children logic and
4203 caused unneccessary allocations on its whole branch. besides this,
4204 it messed up the display by not invoking a redraw after the allocation.
4206 * gtk/gtktable.c (gtk_table_set_child_arg): reverted recent change, so
4207 that it is the child again that is queued for a resize.
4208 (gtk_table_attach): likewise.
4209 (gtk_table_remove): likewise.
4211 1998-06-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
4213 * gtk/gtkentry.h, gtk/gtkentry.c: Export the
4214 gtk_entry_adjust_scroll. Required if you change the cursor
4215 position and want to sync it up with your code (Midnight Commander
4216 gtk front end needs this).
4218 * gtk/gtktable.c: Deal with tables that have size 0, 0.
4220 Tue Jun 23 12:12:19 BST 1998 Tony Gale <gale@gtk.org>
4222 * examples/README.1ST: new file to explain how the
4223 code examples should be extracted from the tutorial.
4225 Mon Jun 22 18:43:11 1998 Lars Hamann <lars@gtk.org>
4227 * gtk/gtkctree.c (draw_row): added new "line style"
4228 GTK_CTREE_LINES_TABBED
4229 * gtk/gtkctree.c/h (gtk_ctree_find_glist_ptr): new function to
4230 search the glist pointer of an GtkCTreeRow
4232 1998-06-21 Raja R Harinath <harinath@cs.umn.edu>
4234 * gtk/Makefile.am (gtk.defs,gtktypebuiltins*): Remove $(srcdir)
4235 from, and clean up, the dependencies. Generate to intermediate
4236 files to prevent problems with Ctrl-C.
4238 * gtk/genmarshal.pl: Generate `gtkmarshal.[ch]' in $srcdir.
4240 Fri Jun 19 14:46:56 1998 Stefan Jeske <stefan@gtk.org>
4242 * gtk/gtkspinbutton.h gtk/gtkspinbutton.c gtk/testgtk.c:
4243 - Bug fix for precision problem causing occasional double emission
4244 of "value_changed" signal (hopefully works now).
4245 - API change (should be binary compatible) :
4246 new enum GtkSpinType; modified gtk_spin_button_spin to use it.
4247 Modified cursor example appropriately.
4248 To spin by something other than step_/page_increment, use
4249 gtk_spin_button_spin (spin, GTK_SPIN_USER_DEFINED, increment).
4250 - Made GTK_SHADOW_NONE the default. ;)
4251 - Fixed casting of GtkAdjustment* to GtkWidget* in
4252 gtk_spin_button_value_changed.
4254 Fri Jun 19 06:18:19 1998 Tim Janik <timj@gtk.org>
4256 * gtk/gtkcontainer.c (gtk_container_set_resize_mode): fail silently
4257 for toplevels. if resize_mode changes to GTK_RESIZE_PARENT, clear the
4258 resize widget list before queuing the container for a new reize.
4259 (gtk_container_need_resize): changed return value to FALSE, since this
4260 used to indicate that no further resizes are needed.
4261 (gtk_container_set_arg):
4262 (gtk_container_get_arg):
4263 (gtk_container_class_init): implemented GtkContainer::resize_mode
4266 (gtk_container_resize_children): when we walk up the tree of a resize
4267 widget we need to stop if we are the current parent.
4269 * gtk/gtkwidget.c (gtk_widget_queue_resize): flag the resize child with
4270 GTK_RESIZE_NEEDED for container->resize_mode==GTK_RESIZE_IMMEDIATE.
4271 (gtk_widget_hide_all): retrive the toplevel widget from via
4272 gtk_widget_get_resize_container().
4274 Thu Jun 18 23:08:36 1998 Owen Taylor <otaylor@gtk.org>
4276 * gtk/gtklist.c (gtk_list_button_press): Only respond
4277 to selection with button 1. This allows context-sensitive
4278 menus to work correctly.
4280 Fri Jun 19 03:29:04 1998 Tim Janik <timj@gtk.org>
4282 * gtk/gtkaccelgroup.c:
4283 * gtk/gtkbindings.c:
4284 * gtk/gtkcontainer.c:
4285 * gtk/gtkitemfactory.c:
4288 * gtk/gtkwidget.c: replaced some gtk_object_data_force_id with
4289 g_quark_from_static_string calls to save memory.
4291 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): invoke the destroy
4292 function _after_ the new data has been setup.
4293 minor changes to object data functions to feature the GQuark type.
4295 Thu Jun 18 21:13:54 1998 Owen Taylor <otaylor@gtk.org>
4297 * gtk/gtkmain.c (gtk_init): Remove --g-fatal-warnings flag
4300 Thu Jun 18 20:22:28 1998 Owen Taylor <otaylor@gtk.org>
4302 * gtk/genmarshal.pl: Modified to be more idiomatic Perl,
4303 to be more readable perl, to spit out stuff that looks
4304 more like readable C, and to pipe output through indent
4305 so output looks a lot like readable C. No functional
4308 Thu Jun 18 17:43:31 1998 Owen Taylor <otaylor@gtk.org>
4310 * gtk/gtkpixmap.[ch] (gtk_pixmap_set): Clear the background if
4311 necessary when switching to a masked pixmap. (Based on a patch
4312 from Ullrich Hafner <hafner@informatik.uni-wuerzburg.de>)
4314 Thu Jun 18 16:18:10 1998 Owen Taylor <otaylor@gtk.org>
4316 * gtk/gtkeditable.[ch]: Added action signals for keyboard
4317 bindings. (move_cursor, kill_word, etc, etc, etc).
4319 removed the time argument from
4320 gtk_editable_cut/copy/paste_clipboard (source but not
4321 binary incompatible...) Instead get time from
4322 gtk_get_current_event ().
4324 * gtk/gtktext.c gtk/gtkentry.c: Support the new editable
4327 Thu Jun 18 02:52:09 1998 Owen Taylor <otaylor@gtk.org>
4329 Patches from Damon Chaplin <DAChaplin@email.msn.com>:
4331 gtk/gtkfontsel.h: Fixed GtkFontSelectionClass - I forgot to change
4332 parent class to GtkNotebookClass when splitting the widget in
4333 two. Also updated some comments.
4335 gtk/gtkfontsel.c: Fixed bug when toggling 'Allow scaled bitmaps'
4336 button without a font selected.
4338 Fixed bug in set_font_name - I hadn't updated the code to
4339 search for the style in the font_style clist - it was
4340 still assuming the style row was equal to its index,
4341 but it isn't any more.
4343 Changed 'Reset' button on filter page to 'Clear Filter'.
4344 Deleted old code relating to the old 'Filter Fonts' toggle
4345 Updated some comments.
4346 Cleared 'Actual Fontname' if no font is set.
4348 gtk/testgtk.c: Fixed problem when 'OK' button is pressed - it was
4349 destroying the GtkFontSelection instead of the
4350 GtkFontSelectionDialog.
4352 Thu Jun 18 02:15:31 1998 Owen Taylor <otaylor@gtk.org>
4354 * gtk/gtkmain.c (gtk_init): Added --g-fatal-warnings
4355 flag to make all warnings fatal errors.
4357 * gtk/testthreads.c: moved <pthreads.h> include inside
4360 Thu Jun 18 01:37:31 1998 Owen Taylor <otaylor@gtk.org>
4362 * gtk/gtkenums.h gtk/gtkcontainer.[ch] gtk/gtkwidget.c
4363 gtk/gtkmenu.c gtk/gtkviewport.c gtk/gtkwindow.c:
4365 - Added new function gtk_container_set_resize_mode() for
4366 fine-grained control of where resize-queueing is done.
4368 - Removed GtkContainer::need_resize and GtkWindow::move_resize
4369 - Added GtkContainer::check_resize to replace need_resize.
4371 - Added function gtk_container_check_resize() to trigger
4372 queued resizes, and gtk_container_resize_children() to
4373 Figure which children need to be size-allocated. (logic
4374 moved from gtkwindow.c)
4376 - Reorganized code in gtkwindow.c
4378 - Set the resize-mode for viewports so that resizes within
4379 a viewport don't propagate out of it.
4381 1998-06-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
4383 * gtk/gtkfontsel.c: Use pointer<->int conversion macros to avoid warnings.
4385 * gtk/gtkaccellabel.c (gtk_accel_label_accelerator_width): Use
4386 g_return_val_if_fail, because the function *does* return a value.
4388 Thu Jun 18 03:30:06 1998 Tim Janik <timj@gtk.org>
4390 * gtk/gtkaccellabel.h:
4391 * gtk/gtkaccellabel.c: new function gtk_accel_label_accelerator_width to
4392 request the size of the accelerator portion of an accel label.
4393 (gtk_accel_label_size_request): don't request for the accelerators size.
4394 (gtk_accel_label_expose_event): only draw the accelerator if we got
4397 * gtk/gtkmenuitem.c (gtk_menu_item_size_request): request accelerator
4398 width from children.
4400 * gtk/gtkmenu.c (gtk_menu_key_press): when adding an accelerator to an
4401 object (after removal has been requested) check if there is still an
4402 accelerator remaining to avoid adding two accelerators on an object.
4403 this can happen for locked accelerators (or accelerator-frozen widgets).
4404 (gtk_menu_size_request): feature childrens accelerator width in size
4407 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): use
4408 gtk_widget_freeze_accelerators() for dynamically created menu items.
4411 * gtk/gtksignal.c: new function gtk_signal_handler_pending_by_func()
4412 which will return a handler_id > 0 if the specified function is pending
4416 * gtk/gtkwidget.c: remove gtk_widget_stop_accelerator, which was just
4417 a signal handler function to stop accelerator addition.
4418 added gtk_widget_freeze_accelerators and gtk_widget_thaw_accelerators
4419 which will prevent (undo) any accelerators from being added to or
4420 removed from a widget.
4422 Wed Jun 17 21:59:09 1998 Stefan Jeske <stefan@gtk.org>
4424 * gtkspinbutton.h gtkspinbutton.c testgtk.c:
4425 Changed GtkSpinButtonUpdatePolicy enum, added keyboard
4426 acceleration, new API gtk_spin_button_set_snap_to_ticks.
4428 Wed Jun 17 03:47:40 1998 Tim Janik <timj@gtk.org>
4431 * gdk/gdkwindow.c: new function gdk_window_at_pointer() to retrive
4432 the current GdkWindow the pointer is on if there is any.
4434 * gtk/gtktable.c (gtk_table_init): preallocate a table with one row
4435 and one column, so we don't construction logic at all. changed a few
4436 (x < y - 1) to (x + 1 < y), to avoid failing evaluations due to
4439 * gtk/gtkwidget.c (gtk_widget_set_parent): removed left over code
4440 portion, added an additional check for parent != widget.
4442 * more GtkType and macro fixups.
4444 1998-06-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
4446 * gtk/gtkhandlebox.c (draw_textured_frame): Now accepts an extra
4447 "clip" parameter, which is the clipping rectangle to use. This
4448 eliminates the extremely annoying flicker when exposing parts of
4451 Tue Jun 16 14:08:08 PDT 1998 Manish Singh <yosh@gimp.org>
4453 * gtk/gtktable.c: fix from TimJ for off-by-one error in table
4456 Tue Jun 16 06:29:57 1998 Tim Janik <timj@gtk.org>
4458 * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_state): check for
4459 != 0 on the argument.
4462 * gtk/gtktable.c: new function gtk_table_resize() which allowes
4463 shrinking and expanding of tables. implementation of widget arguments
4464 and child arguments. many signedness corrections.
4466 Mon Jun 15 04:15:03 1998 Tim Janik <timj@gtk.org>
4468 * gtk/gtkbox.c (gtk_box_set_child_packing): queue the resize for the box
4469 not only the child, otherwise we might end up taking away other
4470 childrens space after the resize.
4472 * gtk/gtkitemfactory.c (gtk_item_factory_parse_menu_path): if we parse
4473 an unknown menu path from any source, that path must always be flagged
4474 as "modified", since we don't really know whether it has its default
4479 * gtk/gtknotebook.c:
4480 * gtk/gtkmenushell.c:
4484 * gtk/gtkbutton.c: implement gtk_*_child_type functions.
4487 * gtk/gtkbox.c: type corrections for expand, fill, padding and pack_type
4488 arguments. implemented child arguments.
4490 * more GtkType and macro fixups.
4492 Sun Jun 14 16:30:02 1998 Tim Janik <timj@gtk.org>
4494 * gtk/gtkcheckbutton.h: GtkType and macro fixups.
4496 * gtk/gtkclist.h: exported the prototypes for gtk_clist_get_vadjustment
4497 and gtk_clist_get_hadjustment.
4499 * gtk/gtkcontainer.c:
4500 implementation of children arguments, new class member functions
4501 (child_type), (get_child_arg) and (set_child_arg) plus a new field
4503 (gtk_container_child_type): new function which returns the type of a
4504 child that the container expects for its next addition.
4505 (gtk_container_add_child_arg_type): new function to introduce a new
4506 child argument at class creation time.
4507 (gtk_container_query_child_args): new function to query all child
4508 arguments that are supported by a container class.
4509 (gtk_container_child_arg_getv): new fucntion to retrive the value of a
4511 (gtk_container_child_arg_setv): new function to set a child argument for
4512 a certain container and child combination.
4513 (gtk_container_add_with_args):
4514 (gtk_container_add_with_argv): new functions to feature addition of a
4515 new child in combination with the setting of certain child arguments.
4517 * gtk/gtktypeuitils.c (gtk_type_class_init): feature initialization of
4518 GtkContainerClass.n_child_args, similar to the GtkObjectClass members.
4519 this should really be done through class cretion hooks some day.
4521 * gtk/gtkcontainer.c: changed type of border_width from gint16 to
4525 * gtk/gtkpacker.c: renamed all PadX and PadY to pad_x and pad_y to
4526 follow the gtk convention for lower case variable names (important
4527 for language wrappers and widget arguments), and made them guint : 16.
4529 * examples/packer/pack.c: adaptions for the case converted GtkPacker
4532 Fri Jun 12 16:33:23 1998 Tim Janik <timj@gtk.org>
4534 * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): do not
4535 change the character pair for single line comments.
4536 (gtk_item_factory_parse_rc): use the cpair_comment_signle specified in
4537 GtkItemFactoryClass.
4538 (gtk_item_factory_parse_rc_string): likewise.
4540 Mon Jun 15 23:39:44 1998 Owen Taylor <otaylor@gtk.org>
4542 * gtk/gtkfontsel.[ch] (gtk_font_selection_dialog_init): Moved font
4543 lists from the klass structure to a static structure
4544 in gtkfontsel.c; cleans up global the namespace.
4546 Mon Jun 15 22:16:10 1998 Owen Taylor <otaylor@gtk.org>
4548 * gtk/makeenums.pl (parse_entries): Fix (untriggered)
4549 bug with /*< skip >*/ and remove warning.
4551 Mon Jun 15 20:14:09 1998 Owen Taylor <otaylor@gtk.org>
4553 * gtk/Makefile.am: Made the gtkmarshal.* generation
4554 rules maintainer-only.
4556 Mon Jun 15 16:29:45 1998 Owen Taylor <otaylor@gtk.org>
4558 * gdk/gdktypes.h gdk/gdkprivate.h gtk/gtk*.h
4559 gtk/Makefile.am gtk/makenums.pl
4561 Removed out the G_ENUM/FLAGS mechanism in favor
4562 of a perl script that parses the standard headers
4563 (with occasional /*< nick=foo >*/ style overrides)
4564 and extracts the enumerations.
4566 gtk/maketypes.awk: Small improvments to the
4567 translation of names. (Avoid splitting gc into
4570 Mon Jun 15 16:25:44 1998 Owen Taylor <otaylor@gtk.org>
4572 * gtk/gtk.h gtk/gtkfontsel.[ch]:
4573 Damon Chaplin's <DAChaplin@email.msn.com> Font selection widget.
4575 Mon Jun 15 15:58:34 1998 Owen Taylor <otaylor@gtk.org>
4578 - Restored gtk_entry_adjust_scroll to static
4579 - Changed text positioning code so that we always
4580 display as large a portion of the text as possible.
4582 Mon Jun 15 15:42:12 1998 Owen Taylor <otaylor@gtk.org>
4584 * gtk/gtktext.c (gtk_text_finalize): Free internal
4585 structures of text widget. Also, unreference pixmaps
4588 Sat Jun 13 19:14:39 1998 Owen Taylor <otaylor@gtk.org>
4590 * gdk/gdkinputcommon.h (gdk_input_device_new): Change
4591 3.3.1 bug workaround to number keys starting at 1.
4593 Sat Jun 13 11:56:57 1998 Owen Taylor <otaylor@gtk.org>
4595 * docs/gtk_tut.sgml: Fixed urls for complete example
4596 source for scribble+widget-writing examples.
4598 Sat Jun 13 11:48:26 1998 Owen Taylor <otaylor@gtk.org>
4600 * gdk/gdkpixmap.c (gdk_pixmap_extract_color):
4601 Patch from Tom Bech <tomb@ii.uib.no>, to handle color
4602 specs of the form c #abcdef [ more keys ] properly.
4604 Sat Jun 13 10:51:56 1998 Stefan Jeske <stefan@gtk.org>
4606 * gtkspinbutton.h gtkspinbutton.c testgtk.c
4607 (gtk_spin_button_set_shadow_type):
4608 New API to set the shadow type of the arrow panel.
4610 Fri Jun 12 21:20:42 1998 Owen Taylor <otaylor@gtk.org>
4612 * gtk/gtkoptionmenu.c (gtk_option_menu_expose): Removed
4613 code for drawing the child in two places at once. Unfortunately,
4614 not only does it not work anymore (because reparenting has
4615 been fixed), but it also triggers reparent/expose loops
4618 * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Removed
4619 an unecessary unrealize.
4621 Fri Jun 12 21:18:56 1998 Owen Taylor <otaylor@gtk.org>
4623 * gdk/gdkwindow.c (gdk_window_reparent): Update the
4624 old and new parents' child window lists properly.
4626 Fri Jun 12 09:24:47 1998 Tim Janik <timj@gtk.org>
4629 * gtk/gtkpacker.c: renamed enum GtkAnchor and GtkSide to GtkAnchorType
4630 and GtkSideType, to be consistent with the rest of Gtk's enum
4631 definitions. wrapped the enum definitions with the G_ eunm wrappers.
4632 spelled out the GTK_ANCHOR_* enum values, since single letters don't
4633 work out corectly as nick-names (left the old values as aliases).
4634 some signdness corrections (border-width, spacing), could stand more.
4636 Thu Jun 11 14:38:33 CDT 1998 Shawn T. Amundson <amundson@gtk.org>
4638 * gtk/gtkpacker.c, gtk/gtkpacker.h, gtk/gtk.h, gtk/Makefile.am:
4641 * examples/packer/pack.c, examples/packer/Makefile: Added
4644 Thu Jun 11 13:09:00 1998 Owen Taylor <otaylor@gtk.org>
4646 * gtk/gtktext.c (remove_cache_line): Fixed broken
4649 * gtk/gtktext.c: (gtk_text_delete_(forward/backward)_cahr)
4650 Check bounds before deleting.
4652 Wed Jun 10 23:21:33 1998 Owen Taylor <otaylor@gtk.org>
4654 * autogen.sh: Support ACLOCAL_FLAGS
4656 Wed Jun 10 20:54:37 1998 Owen Taylor <otaylor@gtk.org>
4658 * gtk-config.in: Added missing quotes.
4660 Wed Jun 10 18:44:22 PDT 1998 Manish Singh <yosh@gimp.org>
4662 * gtk/gtkfeatures.in: #define GTK_HAVE_ACCEL_GROUP
4664 1998-06-10 Raja R Harinath <harinath@cs.umn.edu>
4666 * acconfig.h (GTK_COMPILED_WITH_DEBUGGING): Renamed from
4667 G_COMPILED_WITH_DEBUGGING.
4669 * configure.in (fd_set): Explain check better.
4671 * acinclude.m4: New file. Contains `libtool.m4' from libtool-1.2,
4672 the version from which gtk+'s libtool forked. Needed for people
4673 who use post-1.2 alphas of libtool.
4675 Wed Jun 10 19:36:35 1998 Owen Taylor <otaylor@gtk.org>
4677 * glib/* Moved to glib module
4679 * INSTALL Makefile.am acconfig.h autogen.sh configure.in
4680 gtk-config.in gtk.m4 gdk/Makefile.am gtk/Makefile.am
4682 configuration changes for the above:
4684 - Use AM_PATH_GLIB by default to find glib; also accept
4685 a --with-glib option for using an uninstalled glib.
4687 - Put --enable-debug information into config.h so
4688 that we rebuild when it changes. (was in glibconfig.h)
4690 Wed Jun 10 22:23:27 1998 Lars Hamann <lars@gtk.org>
4692 * gtk/gtkctree.c (draw_row): adapted clist pixmap clipping
4694 * gtk/gtknotebook.h (struct _GtkNotebookClass):
4695 * gtk/gtknotebook.c (gtk_real_notebook_switch_page):
4696 added missing argument (according to Joseph Coleman's bug report)
4698 * gtk/gtknotebook.c (gtk_notebook_set_focus_child): new class
4699 function to fix notebook focus handling
4701 Wed Jun 10 12:57:03 1998 Owen Taylor <otaylor@gtk.org>
4703 * gdk/gdkcc.c glib/ghash.c glib/glib.h glib/gstring.c
4704 glib/gutils.c glib/testglib.c glib/gdataset.c
4705 gtk/gtkaccelgroup.c gtk/gtkmain.c gtk/gtksignal.c
4706 gtk/gtktext.c gtk/gtkbindings.c:
4708 renamed g_const_pointer => gconstpointer
4710 Wed Jun 10 06:25:17 1998 Tim Janik <timj@gtk.org>
4712 * gdk/gdk.c (gdk_init): prevent gdk_init() from segfaulting when
4713 invoked with (NULL, NULL); (this worked sometime ago).
4715 * gtk/gtktypeutils.h:
4716 * gtk/gtktypeutils.c: enum and flags type creation can now be done
4717 through gtk_type_register_enum() and gtk_type_register_flags(),
4718 which allow to specify the enum value arrays directly.
4719 the NULL terminated value arrays can be retrived through
4720 gtk_type_enum_get_values() and gtk_type_flags_get_values();
4721 (gtk_type_children_types): new function to query derived types.
4723 1998-06-09 Raja R Harinath <harinath@cs.umn.edu>
4725 * gtk/Makefile.am (gtkmarshal.c gtkmarshal.h): Pass $srcdir in
4726 environment to genmarshal.pl.
4727 (gtk.defs,gtktypebuiltins*): Add $(srcdir) where needed (in the
4728 rule), and removed it where not needed (in the dependencies).
4730 * gtk/genmarshal.pl: Look for `gtkmarshal.list' in $srcdir.
4732 Tue Jun 9 18:44:57 1998 Owen Taylor <otaylor@gtk.org>
4734 * gtk/gtkobject.c: Removed g_object_pointer_hash, which
4735 was just g_direct_hash.
4737 Mon May 25 19:54:20 1998 Owen Taylor <otaylor@gtk.org>
4739 * configure.in: x_libs=, not $x_libs=. Enough said.
4740 (Case only hit for --disable-xshm)
4742 Mon May 25 12:08:14 1998 Owen Taylor <otaylor@gtk.org>
4744 * configure.in (LDFLAGS): Add to $CFLAGS and $LDFLAGS
4745 when testing for X libraries, don't replace them. Because
4746 the user might have specified the path to the X libraries
4747 themself before running configure.
4749 * examples/**.c: Changed all gpointer * to gpointer
4751 1998-06-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
4753 * gtk/gtkhandlebox.h (struct _GtkHandleBox): Removed the
4754 fleur_cursor field. Now the cursor is created/destroyed on demand
4755 by the routines that need it.
4757 * gtk/gtkhandlebox.c (gtk_handle_box_button_changed):
4758 (gtk_handle_box_motion): The fleur cursor is created and destroyed
4761 Tue Jun 9 09:57:09 1998 Tim Janik <timj@gtk.org>
4763 * gtk/gtktypeutils.h:
4764 * gtk/gtktypeutils.c: renamed the newly created gtk_enum_get_values and
4765 gtk_enum_set_values to gtk_type_enum_get_values and
4766 gtk_type_enum_set_values respectively, since they are actually type
4769 * gtk/gtktypebuiltins_evals.c: oops, screwed the NULL termination with
4772 Tue Jun 9 01:57:23 1998 Tim Janik <timj@gtk.org>
4774 * gtk/gtkselection.h:
4775 * gtk/gtkselection.c: new functions gtk_selection_data_copy and
4776 gtk_selection_data_free.
4778 * gtk/gtkwidget.c (gtk_widget_class_init): fixed gtk_signal_new() call
4779 for "selection_received", which was completely bogus.
4780 * other fixups to gtk_signal_new() calls all over the place.
4782 * gtk/gtktypebuiltins.h: types as variables (formerly macros).
4783 * gtk/gtktypebuiltins_vars.c: type variable implementations.
4784 * gtk/gtktypebuiltins_ids.c: array entries for builtin type
4786 * gtk/gtktypebuiltins_evals.c: enum value arrays.
4787 * gtk/gtk-boxed.defs: gtk and gdk structure definitions, used to build
4789 * gtk/gtk.defs: generated file with scheme syntax for type definitions
4790 of gtk and gdk structures and enums.
4791 * gtk/gtktypeutils.h:
4792 * gtk/gtktypeutils.c: reworked type ids, so they are variables not
4793 macros anymore (this fixes binary incompatibility with new enum
4796 * gtk/gtkwidget.c (gtk_widget_real_key_press_event): proccess possible
4797 key bindings for this widget.
4798 * gtk/gtkwindow.c (gtk_window_key_press_event): chain parent class'
4802 * gtk/gtkobject.c: removed gtk_object_class_new_user_signal_no_recurse()
4803 again. new functions gtk_object_class_user_signal_new () and
4804 gtk_object_class_user_signal_newv (), to feature the GtkSignalRunType
4805 flag on the signal creation.
4807 Mon Jun 8 20:52:21 1998 Tim Janik <timj@gtk.org>
4809 * gtk/gtkcontainer.h: new signal GtkContainer::set_focus_child.
4811 Mon Jun 8 02:52:37 1998 Tim Janik <timj@gtk.org>
4817 * gtk/gtkobject.h: wrapped enum definitions with glib macros.
4819 * reworked enum value array generation code. gtk.defs is a generated
4822 Sun Jun 7 14:34:31 1998 Tim Janik <timj@gtk.org>
4824 * gtk/gtkitemfactory.c (gtk_item_factory_create_menu_entries): feature
4825 check menu items in the compatibility code (this required me to remove
4826 the "<check>" part from the menu item name, grrr).
4828 1998-06-07 Marius Vollmer <mvo@zagadka.ping.de>
4830 * gdk/gdk.h (gdk_color_copy, gdk_color_free): New prototypes.
4831 * gdk/gdk.c (gdk_color_copy, gdk_color_free): New functions.
4833 Sun Jun 7 10:53:02 1998 Tim Janik <timj@gtk.org>
4835 * gtk/gtkitemfactory.h:
4836 * gtk/gtkitemfactory.c: further additions to fit the gimp's code.
4837 additions to the dumping code to feature GtkPatternSpec.
4838 even found a bug to fix in the original code ;)
4840 Sun Jun 7 09:36:04 1998 Tim Janik <timj@gtk.org>
4842 * gtk/gtkitemfactory.c: support different types of callbacks, to
4843 maintain existing code.
4845 Sat Jun 6 06:01:24 1998 Tim Janik <timj@gtk.org>
4847 * gtk/gtksignal.c (gtk_signal_emitv): fixed an assertment.
4849 * gtk/makeenums.awk: a script to generate the GtkEnumValue arrays from,
4850 this should eventually be done by gentypeinfo.el somewhen.
4851 * gtk/gtkenumvalues.c: new generated file to hold GtkEnumValue arrays.
4853 * gtk/gtktypeutils.h: new function gtk_enum_values() to retrive all the
4854 enum values of an enum type.
4862 brought enum/flags definitions in sync, added a few more enum
4863 definitions for bindings and pattern matching.
4865 * some more macro and GtkType fixups in various places.
4867 * gdk/gdktypes.h (enum): added a new value GDK_AFTER_MASK, which is used
4868 as a key-release modifier for the binding system.
4870 Fri Jun 5 06:06:06 1998 Tim Janik <timj@gtk.org>
4872 * gtk/gtkmenu.h (struct _GtkMenu): removed GList*children, since it
4873 was a stale list pointer that is already present in GtkMenuShell.
4875 * gtk/gtkmenushell.h (struct _GtkMenuShellClass): added a signal
4876 GtkMenuShell::selection_done which is emitted after the menu shell
4877 poped down again and all possible menu items have been activated.
4879 Thu Jun 4 02:20:42 1998 Tim Janik <timj@gtk.org>
4881 * gtk/gtkmenushell.c (gtk_menu_shell_button_release): flush the x-queue
4882 before activation of the menuitem, so the menu is actually taken off the
4883 screen prior to any menu item activation.
4885 * gtk/gtkctree.c (gtk_ctree_get_row_data): allow function invokation
4889 * gtk/gtkwidget.c: new function gtk_widget_stop_accelerator to stop
4890 the emission of the "add-accelerator" signal on a widget. this is
4891 usefull to prevent accelerator installation on certain widgets.
4893 * gtk/gtknotebook.c (gtk_notebook_menu_item_create): keep the menu
4894 labels left justified, by setting their alignment. stop accelerator
4895 installation for the menu items, since we use dynamic menus.
4897 Wed Jun 3 06:41:22 1998 Tim Janik <timj@gtk.org>
4899 * gtk/gtkmenufactory.c: adaptions to use the new accel groups. people
4900 should *really* use GtkItemFactory. this is only for preserving source
4901 compatibility where possible, use of GtkMenuFactory is deprecated as of
4904 * gtk/gtkobject.h (gtk_object_class_add_user_signal): new function
4905 to create user signals of type GTK_RUN_NO_RECURSE. don't know why i
4906 missed this possibility when i added gtk_object_class_add_user_signal
4909 * gtk/gtkmain.c (gtk_init): ignore subsequent function calls.
4911 Sun May 31 07:31:09 1998 Tim Janik <timj@gtk.org>
4913 * gtk/gtkaccelgroup.h:
4914 * gtk/gtkaccelgroup.c: new implementation of the accelerator concept.
4916 * gtk/gtkaccellabel.h:
4917 * gtk/gtkaccellabel.c: new widget derived from GtkLabel whitch features
4918 display of the accelerators associated with a certain widget.
4920 * gtk/gtkitemfactory.h:
4921 * gtk/gtkitemfactory.c: new widget, item factory with automatic rc
4922 parsing and accelerator handling.
4924 * gtk/gtkmenu.c (gtk_menu_reposition): new function to care for
4926 (gtk_menu_map): removed the allocation code.
4927 (gtk_menu_size_allocate): care for redrawing of children and resize
4928 our widget->window correctly.
4929 (gtk_menu_key_press): feature the new accelerator groups.
4931 * gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): reposition the
4932 submenu if neccessary.
4934 * gtk/gtkmenuitem.c:
4935 * gtk/gtkcheckmenuitem.c:
4936 * gtk/gtkradiomenuitem.c: use GtkAccelLabel in the *_new_with_label()
4940 (gdk_keyval_from_name):
4941 (gdk_keyval_name): new functions for keyval<->key-name associations.
4942 (gdk_keyval_to_upper):
4943 (gdk_keyval_to_lower):
4944 (gdk_keyval_is_upper):
4945 (gdk_keyval_is_lower): new functions to check/translate keyvalues with
4946 regards to their cases.
4948 Wed May 27 00:48:10 1998 Tim Janik <timj@gtk.org>
4950 * gtk/gtkwidget.c (gtk_widget_class_path): new function to calculate a
4951 widget's class path.
4952 (gtk_widget_path): new function to calculate a widget's name path.
4954 * gtk/gtkrc.c: newly introduced GtkPatternSpec structures to speed up
4955 pattern matching, features reversed pattern matches.
4957 Thu Jun 4 12:12:11 BST 1998 Tony Gale <gale@gtk.org>
4959 * examples/extract.sh, examples/extract.awk:
4960 New files to automagically extract code examples from the
4963 Tue Jun 2 20:04:45 1998 Lars Hamann <lars@gtk.org>
4965 * gtk/gtknotebook.c (gtk_notebook_page_select) (gtk_notebook_focus)
4966 * gtk/gtkcontainer.c (gtk_container_focus_move):
4967 reversed test sequence for GTK_WIDGET_CAN_FOCUS and GTK_IS_CONTAINER
4969 Tue Jun 2 13:04:06 BST 1998 Tony Gale <gale@gtk.org>
4971 * docs/gtk_tut.sgml: minor changes to support auto
4972 extraction of example code
4974 Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
4976 * docs/gtk_tut_it.sgml: Update of Italian Tutorial
4977 to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
4979 Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
4981 * docs/gtk_tut.sgml:
4982 - new section on Events
4983 - change all delete_event callbacks to include
4984 a GdkEvent parameter
4985 - clean up the formatting
4987 * examples - helloworld.c, helloworld2.c, notebook.c,
4988 packbox.c, pixmap.c, progressbar.c, radiobuttons.c,
4989 rulers.c, table.c, wheelbarrow.c: change all delete_event
4990 callbacks to include a GdkEvent parameter.
4992 1998-05-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
4994 * gdk/gdktypes.h (GdkCrossingMode): New enumeration for the "mode"
4995 field of crossing events.
4996 (struct _GdkEventCrossing): Added the following fields: time, x,
4997 y, x_root, y_root, mode, focus, state.
4999 * gdk/gdk.c (gdk_event_translate): Fill in the new fields of the
5000 crossing event structure.
5002 * gtk/gtkfeatures.h (GDK_HAVE_FULL_CROSSING_EVENT): Annotate
5003 changes to the crossing event structure.
5005 Tue May 26 15:51:28 1998 Radek Doulik <gis@academy.cas.cz>
5007 * gdk/gdk.c: include gdkx.h always (for GDK_ROOT_WINDOW)
5009 Sun May 24 12:11:38 BST 1998 Tony Gale <gale@gtk.org>
5011 * docs/gtk_tut.sgml:
5012 - GtkTooltips, update to current API
5013 - change all 'gpointer *data' to 'gpointer data'
5014 - other minor changes
5016 Sat May 23 21:54:05 1998 Owen Taylor <otaylor@gtk.org>
5018 * configure.in (LDFLAGS): Bomb out with a moderately
5019 helpful message if detection of X libraries fails.
5021 Sat May 23 18:57:06 1998 Owen Taylor <otaylor@gtk.org>
5024 gtk-rrh-980412-0.patch (Raja R Harinath <harinath@cs.umn.edu>)
5025 gtk-jbuhler-980516-0 (Jeremy Buhler <jbuhler@cs.washington.edu>) ]
5027 * gdk/gdk.h gdk/gdkcc.c gdk/gdkfont.c gtk/gtkmain.c
5028 gtk/gtksignal.c gtk/gtktext.c:
5030 Fixups for warnings from adding const to type of GHashFunc,
5033 * gtk/gtkcombo.c (gtk_combo_entry_key_press): Minor style/
5034 ansi-warnings fixups.
5036 Sat May 23 17:48:58 1998 Owen Taylor <otaylor@gtk.org>
5038 * gtk/gtkeventbox.c (gtk_event_box_size_allocate):
5039 Locate child at (border_width,border_width), not
5040 (2*border_width,2*border_width). [ The border is _outside_
5043 * gdk/gdk.[ch]: added gdk_screen_width_mm/gdk_screen_height_mm
5044 functions. [From: Alexander Larsson <alla@lysator.liu.se> ]
5046 1998-05-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
5048 * gtk/gtkfeatures.h.in: Define GTK_HAVE_RC_SET_IMAGE_LOADER, to be
5051 1998-05-22 <sopwith@redhat.com>
5053 * gtk/gtkeventbox.c: Pass size_allocate on to the child
5054 regardless of whether it is visible or not. Also
5055 locate child at (border_width,border_width), not (0,0)
5057 Fri May 22 03:02:40 1998 Owen Taylor <otaylor@gtk.org>
5059 * gtk/gtkhandlebox.c: Added style_set handler.
5061 Fri May 22 02:55:57 1998 Owen Taylor <otaylor@gtk.org>
5062 [ From: Chris Lahey <clahey@umich.edu> ]
5064 * gtk/gtkeditable.c, gtk/gtkeditable.h,
5065 gtk/gtktext.c, gtk/gtkentry.c: Added get_position,
5066 and set_position functions to get and set the cursor position.
5068 * gtk/gtkeditable.c: Restored "insert_text" and "delete_text" to
5069 signal status. Make GtkText do user-controlled insertion
5070 and deletion through the Editable widget so that these
5071 signals are properly emitted.
5073 * gtk/gtkentry.c: Changed gtk_entry_set_visibility to
5074 display asterisks instead of empty space when visible = FALSE)
5076 Fri May 22 08:51:10 CEST 1998 Paolo Molaro <lupus@debian.org>
5078 * gtk/gtkclist.c: use GTK_TYPE_GDK_EVENT in (un)?select_row
5081 1998-05-21 <sopwith@redhat.com>
5083 * gtk/gtkrc.[ch]: gtk_rc_set_image_loader() - allow apps to set a
5084 custom routine for loading images specified in gtkrc's.
5086 Tue May 19 23:41:04 1998 Owen Taylor <otaylor@gtk.org>
5088 * configure.in: Use pthread_attr_init() as a test function,
5089 since most of the rest of -lpthread is macros on DU4.
5091 Tue, 19 May 1998 09:03:03 +0200 Paolo Molaro <lupus@debian.org>
5093 * gtk/gtkcombo.c: implemented completion in the entry.
5095 1998-05-18 <sopwith@moebuis.labs.redhat.com>
5097 * gtk/gtk{debug.h,signal.c,main.c}: Allow GTK_DEBUG=signals
5099 Mon May 18 04:01:41 1998 Tim Janik <timj@gtk.org>
5101 * gtk/gtkwidget.c (gtk_widget_class_init): changed "proximity-in-event",
5102 "drop-data-available-event", "drop-enter-event" and "drop-leave-event"
5103 to be of runtype GTK_RUN_LAST.
5105 * gtk/gtkcontainer.c (gtk_container_class_init): likewise for
5108 * gtk/gtktipsquery.c (gtk_tips_query_class_init): likewise for
5111 Sat May 16 09:04:32 1998 Tim Janik <timj@gtk.org>
5113 * gtk/gtkfilesel.c (gtk_file_selection_key_press): g_strdup() the
5114 text retrived from GtkEntry. only intercept the Tab key if there
5115 was some text to complete.
5117 Fri May 15 21:16:54 1998 Owen Taylor <otaylor@gtk.org>
5119 Basic thread-awareness:
5121 * acconfig.h configure.in: New option --with-threads=[yes/posix/no]
5123 * gdk/Makefile.am gdk/gdkthreads.c: Added new functions
5124 gdk_threads_[init/enter/leave] for applications, plus
5125 gdk_threads_wake to wake the mainloop thread out of
5128 * gtk/Makefile.am: gtk/testthreads.c: Test program for threads
5130 Fri May 15 12:08:48 1998 Owen Taylor <otaylor@gtk.org>
5132 * gtk/testgtk.c (list_clear): Account for the fact
5133 that gtk_list_clear_items is not inclusive. (Clears
5136 Fri May 15 12:31:27 1998 rodo <doulik@karlin.mff.cuni.cz>
5138 * gdk/gdk.c: include gdkkeysyms.h always
5141 Fri May 15 09:44:10 1998 Tim Janik <timj@gtk.org>
5143 * gtk/gtkwidget.h (struct _GtkWidgetClass): corrected returntype of
5144 the visibility_notify_event method and changed method order.
5146 1998-05-14 <sopwith@moebuis.labs.redhat.com>
5148 * gtk/gtkwidget.[ch] Added visibility_notify_event to GtkWidget
5150 Thu May 14 03:04:43 1998 Tim Janik <timj@gtk.org>
5152 * gtk/gtk.defs: added GtkButtonBoxStyle and GtkOrientation definitions
5153 from Olli Helenius <ollhel@batman.jytol.fi>.
5155 * gtk/gtktypeutils.c (gtk_type_free): new function to take care about
5157 (gtk_type_set_chunk_alloc): new function to allow allocation of new
5158 types from a mem_chunk of certain size (n_chunks==0 indicates allocation
5161 * gtk/gtkobject.c (gtk_object_finalize): free an object through
5164 * gtk/gtkbutton.c (gtk_button_get_type): set chunk preallocation for
5166 * gtk/gtkmenuitem.c (gtk_menu_item_get_type): likewise (16).
5167 * gtk/gtklabel.c (gtk_label_get_type): likewise (32).
5169 Wed May 13 00:53:52 1998 Owen Taylor <otaylor@gtk.org>
5171 * gtk/gtktypeutils.c gtk/gtksignal.c gdk/gdkdnd.c: A few more
5172 GPOINTER_TO_UINT fixes.
5174 * gtk/gtksignal.c: Include <string.h> for memset.
5176 Tue May 12 23:10:53 1998 Owen Taylor <otaylor@gtk.org>
5177 (Maximilian Bisani <bisani@kawo2.rwth-aachen.de>: gtk-bisani-980320-0)
5179 * gtk/gtkvruler.c gtk/gtkhruler.c gtk/gtkruler.h:
5180 Cleanups, comments and the ability to have rulers with
5181 a reversed direction.
5183 Tue May 12 19:37:55 1998 Owen Taylor <otaylor@gtk.org>
5185 * gtk/gtkrc.c (gtk_rc_parse_file): Fixed up a stat()
5186 that Sopwith missed when changing stat => lstat.
5188 Tue May 12 19:19:29 1998 Owen Taylor <otaylor@gtk.org>
5190 * gtk/gtkinputdialog.c gtk/gtkgamma.c gtk/gtkrc.c
5191 gtk/gtkcolorsel.c gtk/gtkclist.c gtk/testgtk.c: Use
5192 GPOINTER_TO_INT/GINT_TO_POINTER macros where appropriate.
5194 * gdk/gdk.c: Print sizeof() results
5195 as g_print("%ld", (glong)sizeof(foo)), to deal with
5196 sizeof() being long on Alpha's.
5198 * gtk/testgtk.c: include <string.h> for strlen
5200 Tue May 12 16:56:35 1998 Owen Taylor <otaylor@gtk.org>
5201 (James A <jamesa@demon.net> : gtk-jamesa-980511-4.patch)
5203 * gtk/gtkbbox.h gtk/gtkcolorsel.h gtk/gtkvbbox.h:
5204 Changed #include "gtkfoo.h" to #include <gtk/gtkfoo.h>
5206 * gtk/gtkwindow.[ch]: Added const to gtk_window_set_wmclass
5208 Tue May 12 15:16:10 1998 Owen Taylor <otaylor@gtk.org>
5209 (From: Christopher James Lahey <clahey@umich.edu>)
5211 * gtk/gtkbutton.[ch] gtk/gtkenums.h gtk/gtktoolbar.[ch]
5214 Added 'relief' for buttons - they can be either GTK_RELIEF_NORMAL
5215 (old style), or GTK_RELIEF_NONE - no relief in the NORMAL
5216 state. Added gtk_toolbar_{set,get}_button_relief, which set/get
5217 the default relief for the toolbars buttons. Added an
5218 toggle for the toolbar test in testgtk.c.
5220 Tue May 12 00:24:59 1998 Owen Taylor <otaylor@gtk.org>
5222 * docs/gtk-config.1: Rewritten and hopefully improved.
5224 Mon May 11 20:26:39 PDT 1998 Manish Singh <yosh@gimp.org>
5227 * docs/gtk-config.1: added man page for gtk-config by Ben Gertzfield
5229 1998-05-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
5231 * gtk/gtkpreview.c (gtk_preview_realize): Create the window using
5232 GtkPreview's visual and colormap, otherwise things can BadMatch.
5234 * gtk/testgtk.c (create_color_preview):
5235 (create_gray_preview): Removed pushing/popping of visual/colormap
5236 now that GtkPreview does things correctly.
5238 * gtk/gtkcolorsel.c (gtk_color_selection_draw_wheel_frame):
5239 (gtk_color_selection_draw_wheel): Pick the style from the correct
5240 place (the colorsel->wheel_area widget) so that the GCs will match
5241 with where we are going to paint to.
5243 * gtk/testgtk.c (create_color_selection): Removed pushing/popping
5244 of visual/colormap now that GtkColorSelection does things the
5247 Mon May 11 21:04:51 1998 Owen Taylor <otaylor@gtk.org>
5249 * gtk/gtkwindow.c (gtk_real_window_move_resize): Use the
5250 previously unused window->need_resize flag to mark if a window's
5251 descendents changed size while the window was not visible. In this
5252 case, when the window becomes visible, we reallocate everything,
5253 since we didn't keep track of what actually changed.
5255 (Fixes bug where changing the popdown strings of a
5256 combo to something of the same length caused them to
5257 blank out, as reported by Todd Dukes <tdukes@ibmoto.com>)
5259 Tue May 12 02:31:57 1998 Tim Janik <timj@gtk.org>
5261 [security audit by Alan Cox]
5263 * gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
5264 exceed maximum assumed size.
5266 * gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
5267 not exceed maximum assumed size.
5268 (gtk_menu_factory_remove): likewise.
5269 (gtk_menu_factory_find_recurse): likewise.
5271 Mon May 11 23:53:38 1998 Tim Janik <timj@gtk.org>
5273 * gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
5274 GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
5275 redrawn if that is still neccessary. don't allow queueing of already
5277 (gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
5278 widgets which are in the queue can be destroyed safely, handle
5279 requeueing properly.
5280 (gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
5281 widgets which are in the queue can be destroyed/unrealized safely.
5283 Mon May 11 17:54:44 BST 1998 Tony Gale <gale@gtk.org>
5285 * gtkfaq.sgml: add question on multi-threading,
5288 Mon May 11 09:56:45 1998 Tim Janik <timj@gtk.org>
5290 * configure.in (cflags_set): preserve automake CFLAGS.
5292 * Makefile.am: fully rename the created libraries to libgtk-1.1.la
5293 and libgdk-1.1.la. this means we need to change certain portions of
5294 the Makefile.am on major/minor version bumps.
5296 * ltmain.sh: the -release option is not required anymore.
5298 * gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
5299 of the first argument to be of type GtkObject. unconditionally compile
5300 this function. removed __GNUC__ dependancy of the gtk_object_ref and
5301 gtk_object_unref macro wrappers for this function.
5303 Mon May 11 02:31:19 1998 Tim Janik <timj@gtk.org>
5307 (gtk_object_data_try_key):
5308 (gtk_object_data_force_id): these are now macros substituting the old
5309 functions. we just use the corresponding g_dataset_* functions for
5310 key->id associations. (this is to assure unique key<->id associations).
5312 1998-05-10 Stefan Jeske <stefan@gtk.org>
5314 * gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
5317 * docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.
5319 Sat May 9 20:11:20 1998 Owen Taylor <otaylor@gtk.org>
5321 * configure.in (LIBS): Try to figure out if this
5322 is Digital Unix and we need -std1 to get the
5325 Sat May 9 16:30:33 BST 1998 Tony Gale <gale@gtk.org>
5327 * docs/gtk_tut_it.sgml: update of Italian tutorial
5328 translation from Daniele Canazza <dcanazz@tin.it>
5330 Sat May 9 02:34:41 1998 Tim Janik <timj@gtk.org>
5332 * gtk/gtkfeatures.h.in: new file used as template for
5333 * gtk/gtkfeatures.h: new file to define macros indicating newly
5334 introduced features, such as GTK_HAVE_SIGNAL_INIT.
5337 (gtk_signal_emitv_by_name):
5339 new functions to emit signals with an already provided parameter set.
5340 (provided by Kenneth Albanowski <kjahds@kjahds.com>).
5341 (gtk_signal_real_emit): prototype changes, so this functions always
5342 gets its parameters and signal structure as arguments.
5343 (gtk_signal_emit): provide the signal structure and parameter list for
5344 gtk_signal_real_emit.
5345 (gtk_signal_emit_by_name): likewise.
5347 Sat May 9 00:03:12 1998 Tim Janik <timj@gtk.org>
5349 * gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
5350 signal connections through unsetting GTK_CONNECTED.
5351 (gtk_signal_handler_insert): reflect the presence of signal connections
5352 through setting GTK_CONNECTED.
5353 (gtk_signal_real_emit): only check for handler emissions if the object
5354 has the GTK_CONNECTED flag set.
5355 (gtk_signal_handler_pending): don't check for pending handlers if the
5356 GTK_CONNECTED flag is not set for this object.
5358 * gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
5359 a GtkObject has signal handler connections.
5361 * gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
5362 set for this object call gtk_signal_handlers_destroy().
5364 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
5365 multiple processing of macro args.
5367 * gtk/gtktypeutils.c:
5370 * gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.
5372 Fri May 8 21:31:50 1998 Owen Taylor <otaylor@gtk.org>
5374 * gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
5375 draw-queue when we are done.
5377 (gtk_widget_queue_draw/_queu_resize): Always return
5378 FALSE and avoid having two idles at the same time.
5380 Fri May 8 21:04:00 1998 Owen Taylor <otaylor@gtk.org>
5382 * gtk/gtktext.c: Various fixes to make sure cache
5383 lines are freed if line_start_cache doesn't point to the
5384 beginning of the cache.
5386 Thu May 7 09:44:22 1998 Owen Taylor <otaylor@gtk.org>
5388 * style_set improvements for GtkText and GtkEntry
5390 Thu May 7 19:03:50 1998 Tim Janik <timj@gtk.org>
5392 * gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
5395 Thu May 7 12:52:45 1998 Tim Janik <timj@gtk.org>
5397 * gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
5398 data chunks through a global object data structure list. unlink
5399 object data before invoking its destroy function.
5400 (gtk_object_finalize): slight modification to allow usage of object
5401 data during object finalization.
5403 Thu May 7 10:29:24 1998 Tim Janik <timj@gtk.org>
5405 * gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
5406 signal names, e.g. "signal-name" is now an alias for "signal_name".
5407 (gtk_signal_handler_new): allocate handlers through a global handler
5408 structure list, that's faster than memchunks.
5409 (gtk_emission_new): allocate emissions through a global emission
5410 structure list, that's faster than memchunks.
5412 Thu May 7 05:14:19 1998 Tim Janik <timj@gtk.org>
5414 * gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.
5416 * ltmain.sh: added a new commandline flag -postfix similar to -release,
5417 but will immediately change the library name.
5420 * gtk/Makefile.am: specify -postfix and -version-info
5422 * configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
5423 GTK_BINARY_AGE. calculate LT_* variables for libtool.
5425 1998-05-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
5427 * gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
5428 background (fg_set -> bg_set confusion).
5430 1998-05-06 Stefan Jeske <stefan@gtk.org>
5432 * gtk/testgtk.c (unselect_all): Removed code that caused an
5435 Wed May 6 02:16:34 1998 Tim Janik <timj@gtk.org>
5437 * gtk/gtksignal.c: reimplemented the signal storage system to use a
5438 linear array rather than a hash table.
5439 be carefull *not* to keep any GtkSignal pointers across invokations
5440 of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
5441 general code cleanups, made all allocations through memchunks.
5442 (gtk_signal_lookup): we now do the lookup of signals through a key_id
5443 for the signal names to avoid multiple hashing of the signal name on
5444 lookups for the several hirarchy levels of an object.
5446 Tue May 5 19:49:27 1998 Owen Taylor <otaylor@gtk.org>
5448 * gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
5449 to speed things up and remove code duplication.
5451 Reintegrated buffer overflow patches, and added
5452 some extra paranoia.
5454 Tue May 5 17:04:14 1998 Owen Taylor <otaylor@gtk.org>
5456 * gdk/gdk.c (gdk_event_translate): A guint * was
5457 being passed where X expected a Keysym *, and
5458 keysyms are long's on Alpha Linux. This was causing
5459 segfaults in Xlib, apparently because of alignment.
5460 (Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
5462 Tue May 5 19:11:27 1998 Owen Taylor <otaylor@gtk.org>
5464 * gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
5465 set GDK_EXPOSURE_MASK for DrawingAreas
5467 Tue May 5 14:32:37 1998 Owen Taylor <otaylor@gtk.org>
5469 * gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
5470 (superceded by RC file reparsing capabilities)
5472 * gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
5473 events. (Shouldn't be sent to the InputOnly leader, which
5474 it is now by gdk_event_send_clientmessage_toall
5476 * gtk/testgtk.c: Added extra button to rcfiles test
5477 to send out _GDK_READ_RCFILES events.
5479 Tue May 5 11:03:00 1998 Owen Taylor <otaylor@gtk.org>
5481 * gtk/gtkselection.c (gtk_selection_clear): Fixed
5482 reversed conditionals that caused segfault on some
5485 Tue May 5 00:44:47 1998 Owen Taylor <otaylor@gtk.org>
5487 * gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
5488 cast to GTK_OBJECT for gtk_object_ref.
5490 Tue May 5 15:33:27 1998 Tim Janik <timj@gtk.org>
5492 * gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
5493 checking for signal initialization in gtksignal.c.
5495 * gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
5496 a long debugging period ;)
5498 1998-05-05 Stefan Jeske <stefan@gtk.org>
5500 * gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
5501 New function to wrap XSetDashes; modified gtkctree.c to use it.
5503 1998-05-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
5505 * configure.in: Added $x_libs in the other_libraries field in the
5506 check for XShapeCombineMask.
5508 Mon May 4 00:30:11 1998 Tim Janik <timj@gtk.org>
5510 * gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
5512 * gtk/gtktypeutils.c: reimplemented the type storage system to use a
5513 linear array rather than a hash table. it actually speeded up testgtk
5514 for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
5515 pointers across invokations of gtk_type_node_next_and_invalidate() and
5516 therefore gtk_type_unique()!
5518 * gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
5519 inheritance of a class pointer.
5520 (GTK_OBJECT): modifications for speedups.
5521 (GTK_IS_OBJECT): likewise.
5522 (GTK_OBJECT_CLASS): likewise.
5523 (suggested by owen).
5525 * gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.
5527 * gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.
5529 * gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
5530 since its derivation changed 4 month ago ;(. showed up with the unique
5531 type name checking code in gtk_type_unique().
5533 * random guint->GtkType and macro fixups.
5535 Sat May 2 23:14:34 1998 Owen Taylor <otaylor@gtk.org>
5537 * gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
5538 Configure events that would result in a negative
5541 Sun May 3 14:55:34 1998 Owen Taylor <otaylor@gtk.org>
5543 * docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
5544 "glibconfig.h" and another about writing another IRC
5547 Sat May 2 00:14:05 1998 Owen Taylor <otaylor@gtk.org>
5549 * gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
5550 parameters to log are doubles. Digital Unix apparently
5551 is missing the argument in its prototype.
5553 Sun May 3 19:04:46 1998 Owen Taylor <otaylor@gtk.org>
5555 * gtk/gtklabel.c (gtk_label_state_changed): Don't
5556 force a clear until the widget is actually on
5559 Sun May 3 21:32:35 1998 Owen Taylor <otaylor@gtk.org>
5561 * gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
5562 to make this consistent with the gtk-1-0 tree.
5564 Sun May 3 13:38:22 1998 Owen Taylor <otaylor@gtk.org>
5566 * configure.in acheader.h gdk/gdkwindow.c
5567 Check for Shape extension both on the client and server
5568 side. (And, more importantly, check for the shape extension
5569 so we may include -lXext even when compiling with --disable-xshm)
5571 Don't set override_redirect on all shaped windows. It isn't
5574 * gdk/gdkwindow.c: Set ->colormap to NULL for root
5575 and foreign windows. Use this to check if we
5576 need to get the colormap from X.
5578 Fri May 1 22:32:47 1998 Owen Taylor <otaylor@gtk.org>
5580 * gtk/gtkbutton.c (gtk_button_paint): Draw the areas
5581 between the default and the button always in GTK_STATE_NORMAL.
5583 * gtk/gtkrange.c (gtk_range_style_set): Added a style_set
5586 Fri May 1 16:40:57 1998 Owen Taylor <otaylor@gtk.org>
5588 * gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
5589 Fix a buffer overflow on pixmaps that claim to have
5590 more than 31 characters per pixel.
5592 (gdk_pixmap_read_string): Don't wrap around strings longer
5593 than half of address space ;-)
5595 * gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
5596 that were used for printing integers.
5603 int foo (void) { ... }
5605 Even where there were proper prototypes elsewhere.
5607 * gdk/gxid.c (handle_claim_device): Some extra checks.
5608 It isn't safe against being fed bad X id's, but at
5609 least it should be safe against deleting all your
5612 Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
5614 * gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
5615 to set the adjustments value when there is no current emission.
5616 [ Removed by mutual agreement owt 5/3/1998 ]
5618 * gtk/gtksignal.c: added new functions to retrive the number of
5619 existing emissions for a certain signal.
5620 (gtk_signal_n_emissions): new function.
5621 (gtk_signal_n_emissions_by_name): new function.
5623 Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
5625 * gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
5626 set the current focus_child of a container, does proper referencing and
5627 adjusts the vadjustment/hadjustment associated with the focus widget.
5629 * gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
5630 containers via gtk_container_set_focus_child.
5632 * gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
5635 * gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
5636 child since not every child removal goes through this function (this
5637 showed up after gtk_container_set_focus_child() started to reference the
5638 focus_child of a container).
5640 * gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
5641 of a container from gtk_container_remove into this place.
5643 Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
5645 * gtk/gtksignal.c: added new functions to operate on intermediate
5646 function pointers. implemented incremental blocking.
5647 (gtk_signal_disconnect_by_func): new function.
5648 (gtk_signal_handler_block_by_func): new function.
5649 (gtk_signal_handler_unblock_by_func): new function
5651 Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
5653 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5654 Always show the scrollbars when the policy is
5655 GTK_POLICY_ALWAYS...
5657 Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
5659 * gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
5660 "value_changed" if we really passed a new value.
5661 (gtk_adjustment_changed): new function to emit the "changed" signal.
5662 (gtk_adjustment_set_value): new function to emit the "value_changed"
5665 Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
5667 * gtk/gtkcombo.c: Further changes to the way the window
5668 is popped up so that it will be compatible with
5669 auto-scrolling in the future.
5671 Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
5673 * gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
5674 the combo-list is empty since that will cause the combo to operate
5675 on a non existing GtkList window.
5676 (gtk_combo_get_pos): provide the combo list with a usfull default
5678 (gtk_combo_popup_button_press): grab the focus.
5679 (gtk_combo_activate): grab the focus.
5681 Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
5683 * gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
5684 function to reset the RC styles for a heirarchy
5686 Clear the window background if necessary in
5687 gtk_window_style_set.
5689 * gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
5690 rereads all previously read RC files.
5692 * gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
5693 (Should it just be called gdk_get_toplevels?)
5695 * gtk/testgtk.c: New test to reload RC files.
5697 Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
5700 * gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
5701 clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
5702 GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
5703 the GTK_ prefix (this solution involved less changes in the
5704 gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
5705 the mem_chunk==NULL test in gtk_clist_construct. merged in changes
5706 from lars & stefan to support the derivation of GtkCtree.
5710 initial import of a tree widget derived from gtkclist, courtesy
5711 of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
5714 Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
5716 * gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
5718 (gtk_list_insert_items):
5719 (gtk_list_remove_items_internal):
5720 (gtk_list_clear_items):
5721 remove a possible pointer grab, we might get thrown into a loop
5723 (gtk_list_button_press): grab the pointer *before* selecting the child,
5724 because selection of items may cause the lists children to change,
5725 resulting in a grab release.
5726 (gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
5728 (gtk_list_shutdown): remove all children from the list.
5729 (gtk_real_list_unselect_child):
5730 (gtk_real_list_select_child): *always* put our internal structures into
5731 sane state *before* signal emisions (i.e. list->selection updates prior
5732 to gtk_list_item_[de]select() calls).
5734 * gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
5735 focused child walks out of the window.
5736 removed CAN_FOCUS for the combo arrow's button since it doesn't react
5737 to keyboard events ("clicked" connection is missing).
5739 Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
5741 * gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
5742 getting colormap for FOREIGN windows to go along with
5743 Raster's fix for visuals.
5748 Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
5750 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
5751 Check to catch the case when the viewport fits in either
5752 direction or both, instead of flip-flopping infinitely.
5754 Only show/hide the scrollbars once at the end.
5756 Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
5758 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
5759 Include the scrollbars in the foreach call.
5760 (gtk-fortier-980405-0.patch;
5761 Patrice Fortier <Patrice.Fortier@aquarel.fr>).
5764 really should also include its tabs, but that might cause
5765 problems for programs if they
5767 Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
5769 * gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
5770 resize if the size actually changed.
5771 (gtk-johannes-980414-0.patch ;
5772 johannes@nada.kth.se (Johannes Keukelaar) )
5774 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
5776 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5777 ltmain.sh ltconfig config.sub config.guess:
5779 Reverted back to libtool-1.2 (plus minor patches) so as not to
5780 force the issue for everyone else.
5782 Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
5784 * glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
5785 Updated to libtool 1.2a.
5787 * gtk/gtkclist.c: Draw the in-between lines with style->base
5788 instead of style->white.
5790 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
5792 * gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
5793 Cache the colormap and children of a window locally
5794 instead of fetching them from the server when needed.
5795 Huge performance difference for creating/destroying
5798 * gtk/gtkstyle.c: Find the depth from the cached
5799 visual, instead of asking the server.
5801 * gtk.m4: Distribute the new version which tries to
5802 figure out what went wrong and give helpful error
5805 * ltmain.sh ltconfig config.sub config.sh:
5806 Updated to libtool 1.2a
5808 * gtk/gtktext.c: Fixed a bug where the drawn level
5809 was being messed up when the text was scrolled
5812 Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
5814 * gtk/gtkfilesel.c: don't die when naughty people remove parts of
5815 the filesystem under you (fix from Josh)
5817 Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
5819 * gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
5820 if the viewport already exists before iterating over it, maybe we
5821 haven't been constructed yet.
5823 Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
5825 * gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
5826 the GtkBin widget already has a child.
5828 * gtk/gtkbox.c (gtk_box_pack_{start|end}):
5829 check that child->parent == NULL;
5831 Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
5833 * gtk/gtkselection.c (gtk_selection_clear): Only return
5834 FALSE when the clear event is been rejected, not when
5835 widget has already lost the selection. (Which should
5836 only happen when we are setting the selection to another
5839 Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
5841 * gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
5843 Removed the "check visibility after gtk_widget_unparent" bug
5844 in hopefully the last three places.
5846 Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
5848 * gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
5851 Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
5853 * gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
5854 for CAN_FOCUS widgets.
5856 * gtk/testgtk.c (create_scrolled_windows): feature h/v focus
5857 adjustments for the table.
5858 (create_list): feature automatic adjustment of the scrolled window to
5859 always contain the focused child.
5860 (create_main_window): keep the focussed button always inside of the
5863 * gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
5864 adjustments, to contain the allocation of the currently focused child.
5865 (gtk_container_set_focus_hadjustment): new functin to set the
5866 horizontal focus adjustment.
5867 (gtk_container_set_focus_vadjustment): new functin to set the vertical
5870 * gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
5871 clamp the currents adjustment page into a specific range.
5873 * random GtkType fixups for gtk_*_get_type() functions.
5875 Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
5877 * gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
5878 Account for the fact that gtk_tree_item_remove_subtree
5879 will be called recursively.
5881 Handle removing a collapsed subtree.
5883 (From Andy Dustman <adustman@comstar.net>)
5885 * gtk/gtktree.c (gtk_tree_remove_items): Look for the
5886 root tree when removing items from a non-previously
5889 * gtk/testgtk.c: Added a remove_subtree button.
5891 Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
5893 * gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
5894 before object removing data. This change fixes a bug where
5895 removing the last weak references would cause it to be
5898 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5900 * gdk/Makefile.am: Removed mostly useless dependency that
5901 was causing problems for SGI's make, when used with
5902 the 'make dist' form of GTK+. (Dependency caused dependencies
5903 to be redone when BUILT_SOURCES changed)
5905 Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
5907 * gtk/gtkcombo.[ch]: Allow the user to use the popup list
5910 * gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
5911 to gtkitem.c so dragging can also work in lists.
5913 * gtk/gtklist.[ch]: Track child enter events and use
5914 those to allow dragging the selection.
5916 Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
5918 * gtk/gtktext.c: Try enabling background pixmaps for editable text
5919 widgets. There is a bit of flashing, but not too bad. If you
5920 don't want the flashing, you can always not set a background
5923 Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
5925 * gtk/gtktext.c: Fixed a bug where the drawn level
5926 was being messed up when the text was scrolled
5929 1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
5931 * gdk/gdk.c (gdk_event_translate): Random debugging fixed this
5932 bug: There is no need to set the ExposureMask in the XGrabPointer
5933 (this caused DnD programs to crash).
5935 Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
5937 * gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
5938 field to be of type guint.
5939 * gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
5941 (gtk_accelerator_table_install): keep a per object list of accelerator
5942 tables that refer to this object.
5943 (gtk_accelerator_table_remove): remove the accelerator table from the
5945 (gtk_accelerator_table_clean): warn if there are any object references
5946 left in an accelerator table upon destruction.
5947 (gtk_accelerator_tables_delete): new function to delete object
5948 references from the accelerator tables associated with this object.
5950 * gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
5951 GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
5952 of an accelerator can be prevented by gtk_signal_emit_stop().
5953 (gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
5954 so there are no stale pointers in accelerator tables left.
5956 1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
5958 * gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
5959 visible before we unparent it.
5961 Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
5963 * gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
5964 running_timeouts list with the tmp_list link itself, not with a new
5965 GList structure pointing to our link. that would fill up memory and
5966 causes the GList.data fields of the running_timeouts list to point to
5967 GList structures and not GtkTimeoutFunction structures which is a
5969 (gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
5972 Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
5974 * gtk/gtkradiomenuitem.h:
5975 * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
5976 ala gtk_radio_button_set_group.
5977 (gtk_radio_menu_item_init): assure that we always have at least a group
5978 that points to self.
5980 * gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
5981 added g_return_if_fail() statements.
5982 (gtk_radio_button_init): assure that we always have at least a group
5983 that points to self.
5985 Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
5987 * ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
5989 Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
5991 * gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
5992 (Damon Chaplin), which i got wrong when applying Damon's patch the last
5995 Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
5997 * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
5998 that when we are running with a non-installed colormap,
5999 in 8-bit pseudo-color, we actually are using the system
6000 visual. (Fixes *Bad Match* errors on Digital Unix machines
6001 with multiple 8-bit pseudo-color visuals)
6003 1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
6005 * gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
6006 by whoever thought that randomly changing ints to unsigned int
6007 without reviewing the code was a good idea. It is, btw not
6008 mentioned in the ChangeLog as usual, but I know it was not Elliot
6009 the culprit this time.
6011 Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
6013 * Released GTK+ 1.0.0