Thu Dec 3 16:49:18 1998 Owen Taylor <otaylor@redhat.com>
* gtk/gtkdnd.c (DROP_ABORT_TIME): Changed to 5 min
from 10 seconds, so it doesn't abort while users
have an ACTION_ASK menu up.
* gtk/gtkdnd.c: Hide the icon window between sending a a
drop event to the destination and displaying the
snapback animation, so that it doesn't hang around
during ACTION_ASK.
Thu Dec 3 16:37:42 1998 Owen Taylor <otaylor@redhat.com>
* gtk/gtkclist.c (get_cell_style): Use GTK_STATE_INSENSITIVE
for the foreground of cells for CLists in the insensitive
state, instead of GTK_STATE_PRELIGHT.
Thu Dec 3 06:20:59 1998 Tim Janik <timj@gtk.org>
* gtk/gtkwindow.c: moved checks upon focus setting from
gtk_window_real_set_focus to gtk_window_set_focus, so we don't
emit the signal if unneccessary.
* gtk/gtkwidget.c (gtk_widget_grab_focus): clear up the old focus
containers when grabbing focus on a new widget. this is based on
a patch from Alexis Mikhailov, submitted to gtk-list on 4 Nov 1998.
* gtk/gtkclist.c (gtk_clist_focus_out): set CLIST_CHILD_HAS_FOCUS
flag, so we take the buttons into consideration upon the next focus
request.
* gtk/gtkcontainer.c (gtk_container_set_focus_child): fixed an
assertment.
Wed Dec 2 17:45:21 CST 1998 Shawn T. Amundson <amundson@gtk.org>
* gtk/gtkpixmap.c: Fixes for low-color displays and a slight
enhancement for true-color displays.
* INSTALL:
README:
configure.in:
gtk+.spec:
docs/gtk-config.1: up to version 1.1.6
Wed Dec 2 01:39:02 1998 Tim Janik <timj@gtk.org>
* gtk/gtknotebook.h:
* gtk/gtknotebook.c: s/gtk_notebook_nth_page/gtk_notebook_get_nth_page/.
* incremented version number to 1.1.6 and made Gtk
dependant on GLib 1.1.6.
* gtk/gtkwidget.h (struct _GtkRequisition): changed width and height
from guint16 to gint16, since sizes bigger than 32767 are not supported
anyways, and aritmethics with intermediate negative values are possible
now.
Tue Dec 1 00:00:04 1998 Tim Janik <timj@gtk.org>
* gtk/gtkscrolledwindow.c:
implementation of GTK_POLICY_NEVER functionality, added rationales
on the policy and size requisition handling at the top.
(gtk_scrolled_window_size_request):
we assume a default minimum for our child's width and height
if [hv]scrollbar_policy != GTK_POLICY_NEVER, except when the user
specified the dimension explicitely.
(gtk_scrolled_window_size_allocate):
do not show scrollbars if [hv]scrollbar_policy == GTK_POLICY_NEVER.
* gtk/gtkviewport.c (gtk_viewport_size_request): report the real
size we require (including the child).
* gtk/gtkclist.c:
(gtk_clist_size_request): report the real size required.
* gtk/gtkenums.h (enum GtkPolicyType): added GTK_POLICY_NEVER.
* gtk/gtkobject.c (gtk_object_init_type): object_type doesn't
need to be a static variable.
Mon Nov 30 22:41:25 1998 Tim Janik <timj@gtk.org>
* gtk/gtkclist.h:
* gtk/gtkclist.c:
* gtk/gtkviewport.h:
* gtk/gtkviewport.c:
* gtk/gtktext.h:
* gtk/gtktext.c:
* gtk/gtklayout.h:
* gtk/gtklayout.c:
* gtk/gtkwidget.h:
* gtk/gtkwidget.c:
* gtk/gtkscrolledwindow.h:
* gtk/gtkscrolledwindow.c:
s/scroll_adjustements/scroll_adjustments/
s/scroll_adjustments/set_scroll_adjustments/g
Tue Dec 1 22:45:58 1998 Lars Hamann <lars@gtk.org>
* gtk/gtkclist.h (struct _GtkCListClass): new class method/signal
row_move.
* gtk/gtkclist.c (gtk_clist_row_move): new public function.
emit a row_move signal
(real_row_move): move source_row to dest_row
(gtk_clist_swap_rows): use gtk_clist_row_move calls.
(gtk_clist_columns_autosize): resize all columns to their optimal
width
* gtk/gtkctree.c (real_row_move): use gtk_ctree_move to move
entire sub-tree.
* gtk/gtknotebook.c (gtk_notebook_nth_page): get nth page widget.
I submitted this patch twice to gtk-devel-list, and received no comments, so
am committing it. Although not exhaustively tested, I have been using this
gtk+ for a week w/o problems, and I did read the code to ensure that nothing
ever writes to these data structures. If by chance people encounter SEGV's in
gtk+ code that is setting values in global data structures, this patch could
be a possible culprit.
1998-11-30 Elliot Lee <sopwith@cuc.ml.org>
* {gdk,gtk}/*.c: Make read-only data structures "static const" to
allow them to be shared, mainly including (but not limited to) the
GtkTypeInfo structures for each class.
* gtk/gtkfilesel.c: Add /net to the "leave me alone" directory listing.
Mon Nov 30 10:11:29 1998 Tim Janik <timj@gtk.org>
* gtk/testgtkrc: merged testgtkrc with the pre-themes one, removed
system specific includes.
* gtk/gtksignal.c: asured that stop and restart emissions are also
checked and processed for not connected objects. fixed up restart
emission administration. invoke emission hooks after emission, hooks
are not supposed to muck around with the current emission, and
may also not cause emission restarts. fixed up stop emission
administration.
Mon Nov 30 06:20:36 1998 Tim Janik <timj@gtk.org>
* gtk/testgtk.c: added an event watcher for enter/leave based on
signal emission hooks.
* gtk/gtkobject.c (gtk_object_class_init): made GtkObject::destroy a
GTK_RUN_NO_HOOKS signal.
* gtk/gtksignal.h:
* gtk/gtksignal.c: implemented emission hooks, new hooks can be added
to a signal with gtk_signal_add_emission_hook or
gtk_signal_add_emission_hook_full, and can be removed again with
gtk_signal_remove_emission_hook.
* gtk/gtkenums.h: remove GTK_RUN_MASK, since it doesn't represent
an appropriate mask for signal runtypes for a long time now.
added GTK_RUN_NO_HOOKS value, which is used to flag signals
that do not allow the running of signal hooks.
1998-11-26 Michael Krause <m.krause@tu-harburg.de>
* gtk/gtknotebook.c (gtk_notebook_switch_page): made 'page_num'
argument a gint: switch_page signal delivers valid page numbers
again.
Sun Nov 29 06:12:01 1998 Tim Janik <timj@gtk.org>
* gtk/gtktypeutils.c (gtk_type_unique): removed default initialization
check, people must use gtk_type_init();
* gtk/gtkwidget.h:
* gtk/gtkwidget.c: added gtk_widget_set_composite_name() which is meant
for internal use by containers, that want to assign specific composite
names to their composite children.
added gtk_widget_get_composite_name() which will return a newly
allocated string, containing the composite name of a widget. valid
composite names can only be retrived from widgets that have a parent
assigned and are flagged as GTK_COMPOSITE_CHILD.
* gtk/gtkcontainer.h:
* gtk/gtkcontainer.c: added a new function
gtk_container_child_default_composite_name() which will return a
newly allocated string, holding the composite name of a containers
child. a default implementation is provided which will compose the
composite name out of the widgets type and its sequential children
id. this implementation can be overidden through a new class function
*(composite_name)().
Sat Nov 28 10:57:59 1998 Owen Taylor <otaylor@redhat.com>
* gtk/gtkwindow.c (gtk_window_expose_event): Removed bogus
expose_event handler - we had two expose_event
handlers!
Sat Nov 28 03:13:42 1998 Tim Janik <timj@gtk.org>
* gtk/gtkscrolledwindow.h:
* gtk/gtkscrolledwindow.c: changed scrolled window inheritance,
it inherits from GtkBin now.
* gtk/gtkbin.c (gtk_bin_unmap): removed superfluous check for
visibility of child.
(gtk_bin_draw): removed superfluous check for GTK_WIDGET_DRAWABLE().
added check so a child gets only drawn if it's visible.
* gtk/gtkwidget.h:
* gtk/gtkwidget.c: removed gtk_widget_draw_children().
* gtk/gtkstyle.h:
* gtk/gtkstyle.c: rmoved gtk_reset_widget_shapes.
* gtk/gtkwidget.h:
* gtk/gtkwidget.c: removed crufty relict: gtk_widget_is_child().
added internal function gtk_widget_reset_shapes() from gtkstyle.c.
* gtk/gtkrc.h:
* gtk/gtkrc.c: (gtk_rc_find_pixmap_in_path): removed bogus gscanner
argument, changed callers.
* gtk/gtkmenufactory.c: GtkMenuFactory is deprecated for a long time,
it will issue a warning now.
* gtk/gtkcompat.h: new file to #define aliases for historic
function names.
* changed 8 function names for consistency and provided aliases to keep
source compatibility in gtkcompat.h:
(gtk_accel_label_get_accel_width): renamed from gtk_accel_label_accelerator_width
(gtk_container_set_border_width): renamed from gtk_container_border_width
(gtk_notebook_get_current_page): renamed from gtk_notebook_current_page
(gtk_packer_configure): renamed from gtk_packer_set_child_packing
(gtk_paned_set_gutter_size): renamed from gtk_paned_gutter_size
(gtk_paned_set_handle_size): renamed from gtk_paned_handle_size
(gtk_scale_get_value_width): renamed from gtk_scale_value_width
(gtk_window_set_position): renamed from gtk_window_position
* renamed a few recently added funtions for consistency:
(gtk_notebook_get_tab_label): renamed from gtk_notebook_query_tab_label.
(gtk_notebook_get_menu_label): renamed from gtk_notebook_query_menu_label.
(gtk_progress_configure): renamed from gtk_progress_reconfigure.
Sat Nov 28 00:06:49 1998 Tim Janik <timj@gtk.org>
* gtk/gtkwidget.h:
* gtk/gtkwidget.c: deprecated gtk_widget_freeze_accelerators and
gtk_widget_thaw_accelerators, we provide gtk_widget_lock_accelerators
and gtk_widget_unlock_accelerators.
* gtk/gtklayout.h:
* gtk/gtklayout.c: implemented incremental freezing facility.
* gtk/gtktext.h:
* gtk/gtktext.c: implemented incremental freezing facility.
* gtk/gtkenums.h:
* gtk/gtkaccelgroup.h: moved enum GtkAccelFlags into this place.
* gtk/gtkentry.h:
* gtk/gtkentry.c:
deprecated gtk_entry_adjust_scroll().
* random GtkType, macro and indentation fixes.
Fri Nov 27 22:50:15 1998 Tim Janik <timj@gtk.org>
* gtk/gtkclist.h:
* gtk/gtkclist.c: implemented incremental freezing facility, added
a new class member (*refresh)() which takes over the thaw
functionality. the clist FROZEN flag got removed on the way.
* gtk/gtkctree.c: adaptions to feature the clist refresh functionality
and incremental freezing.
* gtk/gtkcalendar.c: implemented incremental freezing facility.
Fri Nov 27 12:17:15 1998 Owen Taylor <otaylor@redhat.com>
* gtk/gtkdnd.[ch] (gtk_drag_get_source_widget): New function to
get the source widget of a drag.
* gtk/gtkdnd.[ch]: Target flags GTK_TARGET_SAME_[WIDGET/APP]
to restrict certain targets to the same widget or to
the same application.
* gtk/testdnd.c: Test gtk_drag_get_source_widget().
Thu Nov 26 19:11:46 1998 Lars Hamann <lars@gtk.org>
* gtk/gtk-boxed.defs (GtkCTreeNode): define GtkCTreeNode as boxed type
* gtk/gtkctree.c (gtk_ctree_class_init): use GTK_CTREE_NODE_TYPE
instead of GTK_TYPE_POINTER in signal definitions.
(patch from James Henstridge <james@daa.com.au>)
Thu Nov 26 18:48:44 1998 Lars Hamann <lars@gtk.org>
* gtk/gtkclist.c (set_cell_contents)
* gtk/gtkctree.c (set_cell_contents): call column_auto_resize only
if auto.resize == TRUE
* gtk/gtknotebook.c (gtk_notebook_set_shape) (gtk_notebook_expose):
don't draw tab, if show_tabs == FALSE
(bug reports from Alexis Mikhailov / Dave Cole)
(gtk_notebook_focus_changed) (gtk_notebook_draw_focus): draw only
the focus rectangle, not the hole tab.
Thu Nov 26 03:18:08 1998 Tim Janik <timj@gtk.org>
* gtk/gtkclist.h:
* gtk/gtkctree.h:
* gtk/gtkclist.c:
* gtk/gtkctree.c: reverted bogus and undocumented!!! changes from
Jay Cox (98/11/23 13:53:26) which `const' qualified char* arrays.
* gtk/maketypes.awk: changed underline substitution, so we get
GTK_TYPE_CTREE_POS instead of the broken GTK_TYPE_C_TREE_POS.
* gtk/makeenums.pl: likewise.
* gtk/gtkctree.c: adapted type names accordingly.
Tue Nov 24 11:31:06 1998 Owen Taylor <otaylor@redhat.com>
* docs/Changes-1.2.txt: Edited section on the ScrolledWindow.
* gtk/gtklayout.c (gtk_layout_set_[hv]adjustment): Remove
some code duplication.
* gtk/gtklayout.[ch] Fixed mapping and unmapping of child windows
and child widgets when scrolling greater than 32k pixels.
* testgtk.c: Modified layout test to test scrolling over
long distances.
* gtk/gtkplug.c: Added a few blank lines.
Tue Nov 24 11:11:05 1998 Owen Taylor <otaylor@redhat.com>
* gtk/gtklayout.[ch]: Fixed up copyright message.
* gdk/gdkrgb.c (DM): Make the dither matrix constant
so it can be shared.
* gtk/gtkdnd.c: Make cursor bitmaps const.
* gdk/gdk.h gdk/gdkpixmap.c: Added const to
gdk_pixmap/bitmap_create_from_data.
* gdk/Makefile.am, gtk/Makefile.am:
Removed DEFS "+=" mess that breaks recent automakes.
INCLUDES is the correct way to add to CFLAGS from Makefile.am.
* gdk/gdk.c, gdk/gdkglobals.c, gdk/gdkimage.c, gdk/gdkinput.c,
gdk/gdkpixmap.c, gdk/gdkthreads.c, gdk/gdkwindow.c,
gdk/gxid_lib.c, gtk/fnmatch.c, gtk/gtkclist.c, gtk/gtkmain.c,
gtk/testthreads.c:
Include "config.h" instead of "../config.h".
Now that DEFS works again, automake will automatically pass us
the location of config.h in -I.
Mon Nov 23 22:10:09 1998 Owen Taylor <otaylor@redhat.com>
* gtk/Makefile.am gtk/gtk.h gtk/gtklayout.[ch]
gtk/gtkplug.[ch] gtk/gtksocket.[ch] gtk/gtk.h:
Added layout widget for scrolling arbitrarily big areas.
Added plug/socket widgets for interprocess embedding.
These widgets still, at some point, need to be
made more pure in their use of GDK, as opposed
to raw X.
* gtk/testgtk.c: Added test for layout widget.
* gtk/gtkprogress.c: (gtk_progress_set_adjustment): make a saner
default adjustment (from 0 to 100) instead. I'm not sure if this
is the correct level for the fix, but gtk_progress_bar_new()'s
original default behavior is restored.
-Yosh
1998-11-23 Martin Baulig <martin@home-of-linux.org>
* gtk/gtkfeatures.h.in (GTK_HAVE_FEATURES_1_1_5): Define this so
we can check for latest GTK features.
Mon Nov 23 05:21:50 1998 Tim Janik <timj@gtk.org>
* gtk/gtkcontainer.c:
(gtk_container_add_with_args):
(gtk_container_addv):
(gtk_container_add): removed assertements for constructed containers
again, since this essentially breaks the "child" arg.
* gtk/gtktooltips.c (gtk_tooltips_force_window): fixup the draw_window
reference count, we don't need to reference toplevels that already have
destroy notifiers.
* gtk/gtkscrolledwindow.c: check for the composites existance in
_forall since we might not be already constructed.
Sun Nov 22 16:21:28 1998 Tim Janik <timj@gtk.org>
* gtk/gtkprogress.c: added args ::show_text, ::text_xalign,
::text_yalign, ::activity_mode.
* gtk/gtkprogressbar.c: added construct arg ::adjustment. added args
::bar_style, ::orientation, ::discrete_blocks, ::activity_step,
::activity_blocks.
(gtk_progress_bar_new):
(gtk_progress_bar_new_with_adjustment): use gtk_widget_new().
(gtk_progress_bar_construct): deprecated.
* gtk/gtkvscrollbar.c:
(gtk_vscrollbar_draw_step_back):
(gtk_vscrollbar_draw_step_forw): use "vscrollbar" as detail for
gtk_paint_arrow, to be consistent with hscrollbar.
* gtk/gtktext.c
added construct args ::hadjustment, ::vadjustment.
added args ::line_wrap, ::word_wrap.
(gtk_text_class_init): added scroll_adjustments signal.
(gtk_text_new): use gtk_widget_new.
(gtk_text_disconnect): remove adjustement with gtk_text_set_adjustments,
so we don't screw the reference counts and don't leave signals connected.
(gtk_text_destroy): disconnect adjustments signals.
(gtk_text_finalize): unref adjustments.
* gtk/gtkctree.c: added construct args ::n_columns and ::tree_column.
added args ::indent, ::spacing, ::show_stub, ::reorderable,
::use_drag_icons, ::line_style and ::expander_style.
(gtk_ctree_set_show_stub): renamed from gtk_ctree_show_stub, which is
deprecated now.
* gtk/gtkclist.h: remove GTK_CLIST_CONSTRUCT flag.
* gtk/gtkclist.c:
removed ::vadjustment and ::hadjustment args, introduced
::scroll_adjustments signal.
added ::shadow_type, ::selection_mode and ::row_height args.
added n_columns construct arg.
(gtk_clist_construct): call gtk_object_constructed().
(gtk_clist_set_row_height): if height is passed as 0,
revert to automatic height calculation.
(gtk_clist_destroy): before unrefing the adjustments, disconnect our
signal handlers.
Fri Nov 21 22:34:58 1998 Tim Janik <timj@gtk.org>
* gtk/gtkwidget.c (gtk_widget_new): call gtk_object_default_construct
like gtk_object_new.
(gtk_widget_destroy): assert that we only destroy constructed widgets.
* gtk/gtkobject.h (enum GtkArgFlags): new flag GTK_ARG_CONSTRUCT_ONLY
to identify args that may only be used for construction.
GTK_ARG_CONSTRUCT maybe used as normal arguments besides construction
time.
* gtk/gtkobject.c (gtk_object_new): invoke gtk_object_default_construct
at the end if the object is not fully constructed.
(gtk_object_newv): likewise.
(gtk_object_destroy): assert that we only destroy constructed objects.
(gtk_object_init): setup GTK_CONSTRUCTED from the
objects real klass.
(gtk_object_default_construct): new function to complete default
construction of an object by applying missing construtor args with
default values of 0, 0.0 or NULL.
(gtk_object_constructed): new function to mark an object as being
constructed (used from within constructors).
* gtk/gtkarg.c (gtk_arg_type_new_static): return the args info pointer
so it is immediatedly available for the caller.
* gtk/gtktypeutils.c (gtk_type_new): pass an object's real class to
the object initilizer (GtkObjectInitFunc takes a second arg now, the
real klass), and asure that object initializers may temporarily alter
the class pointer.
Fri Nov 20 08:00:30 1998 Tim Janik <timj@gtk.org>
* gtk/testgtk.c: change all occourances of gtk_container_add (
scrolled_window, widget) to gtk_scrolled_window_add_with_viewport (...)
for widget!=(clist, ctree, text, viewport).
* gtk/gtkcombo.c:
(gtk_combo_init): use gtk_scrolled_window_add_with_viewport()
to add children to the scrolled window.
* gtk/gtkscrolledwindow.h:
* gtk/gtkscrolledwindow.c:
changed scrolled_window->viewport to scrolled_window->child, and use
gtk_widget_scroll_adjustements() to set the scroll adjustments for the
widget, we do not create an additional viewport anymore.
added ::hadjustment and ::vadjustment constructor args.
(gtk_scrolled_window_new): use gtk_widget_new() to create the widget.
(gtk_scrolled_window_set_hadjustment):
(gtk_scrolled_window_set_vadjustment): new functions that superceed
gtk_scrolled_window_construct.
(gtk_scrolled_window_construct): deprecated this function.
* gtk/gtkhscrollbar.c:
* gtk/gtkvscrollbar.c:
* gtk/gtkhscale.c:
* gtk/gtkvscale.c:
support a constructor arg "::adjustment", and use gtk_widget_new() for
the widget creation.
* gtk/gtkrange.c: added ::update_policy arg.
(gtk_range_set_adjustment): if adjustment is passed in as NULL, create
a default adjustment so this function can be used for derived widgets
that depend on the adjustment's existance.
(gtk_range_destroy): disconnect the adjustment signal, so we don't
get called after we got destroyed, we don't destroy the adjustment
in here, because it might have been provided from another widget.
* gtk/gtkviewport.c: introduced ::scroll_adjustments signal.
(gtk_viewport_destroy): same as gtk_range_destroy.
* gtk/gtkprogress.c (gtk_progress_destroy): same as gtk_range_destroy.
* gtk/gtkwidget.h:
* gtk/gtkwidget.c: changed gtk_widget_activate() to return a
gboolean, indicating whether this widget supports activation.
added gtk_widget_scroll_adjustements() to set the scrolling
adjustments of a widget.
Wed Nov 19 01:22:42 1998 Tim Janik <timj@gtk.org>
* gtk/gtkoptionmenu.c:
(gtk_option_menu_remove_contents):
(gtk_option_menu_update_contents): removed
gtk_container_[un]block_resize() pairs.
* gtk/gtknotebook.h:
* gtk/gtknotebook.c: removed the tab_border field, since it shouldn't
be used outside of gtknotebook.c anyways. made ARG_TAB_BORDER a
wrtie-only argument.
* *.c: made deprecated functions issue a message:
gtk_clist_set_border, gtk_container_block_resize,
gtk_container_unblock_resize, gtk_container_need_resize,
gtk_object_class_add_user_signal, gtk_spin_button_construct,
gtk_scrolled_window_construct.
removed non-functional functions:
gtk_container_disable_resize, gtk_container_enable_resize,
gtk_clist_set_policy.
Wed Nov 18 22:54:36 1998 Tim Janik <timj@gtk.org>
* gtk/gtkbox.c (gtk_box_init):
* gtk/gtkdrawingarea.c (gtk_drawing_area_init):
* gtk/gtkeventbox.c (gtk_event_box_init):
* gtk/gtkfixed.c (gtk_fixed_init):
* gtk/gtkframe.c (gtk_frame_init):
* gtk/gtkhandlebox.c (gtk_handle_box_init):
* gtk/gtkpacker.c (gtk_packer_init):
* gtk/gtkmisc.c (gtk_misc_init):
* gtk/gtkpreview.c (gtk_preview_init):
* gtk/gtkprogress.c (gtk_progress_init):
* gtk/gtkprogressbar.c (gtk_progress_bar_init):
* gtk/gtkseparator.c (gtk_separator_init):
* gtk/gtktable.c (gtk_table_init):
* gtk/gtkviewport.c (gtk_viewport_init):
* gtk/gtkalignment.c (gtk_alignment_init):
removed setting of the GTK_BASIC flag.
* gtk/gtkwidget.h:
* gtk/gtkwidget.c:
removed GTK_BASIC, GTK_WIDGET_BASIC and gtk_widget_basic.
* miscellaneous GtkType and macro fixups.