1998-05-03 19:13:24 +00:00
|
|
|
Sun May 3 19:45:09 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
|
|
|
|
to set the adjustments value without causing a current emission of
|
|
|
|
"value_changed" to be restarted.
|
|
|
|
|
|
|
|
* gtk/gtksignal.c: added new functions to retrive the number of
|
|
|
|
existing emissions for a certain signal.
|
|
|
|
(gtk_signal_n_emissions): new function.
|
|
|
|
(gtk_signal_n_emissions_by_name): new function.
|
|
|
|
|
1998-05-03 15:45:08 +00:00
|
|
|
Sun May 3 16:55:43 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
|
|
|
|
set the current focus_child of a container, does proper referencing and
|
|
|
|
adjusts the vadjustment/hadjustment associated with the focus widget.
|
|
|
|
|
|
|
|
* gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
|
|
|
|
containers via gtk_container_set_focus_child.
|
|
|
|
|
|
|
|
* gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
|
|
|
|
where appropriate.
|
|
|
|
|
|
|
|
* gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
|
|
|
|
child since not every child removal goes through this function (this
|
|
|
|
showed up after gtk_container_set_focus_child() started to reference the
|
|
|
|
focus_child of a container).
|
|
|
|
|
|
|
|
* gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
|
|
|
|
of a container from gtk_container_remove into this place.
|
|
|
|
|
1998-05-02 20:48:49 +00:00
|
|
|
Sat May 2 22:33:45 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtksignal.c: added new functions to operate on intermediate
|
|
|
|
function pointers. implemented incremental blocking.
|
|
|
|
(gtk_signal_disconnect_by_func): new function.
|
|
|
|
(gtk_signal_handler_block_by_func): new function.
|
|
|
|
(gtk_signal_handler_unblock_by_func): new function
|
|
|
|
|
1998-05-02 19:01:33 +00:00
|
|
|
Fri May 1 22:45:55 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
|
|
|
|
Always show the scrollbars when the policy is
|
|
|
|
GTK_POLICY_ALWAYS...
|
|
|
|
|
1998-05-02 18:35:23 +00:00
|
|
|
Sat May 2 20:19:03 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
|
|
|
|
"value_changed" if we really passed a new value.
|
|
|
|
(gtk_adjustment_changed): new function to emit the "changed" signal.
|
|
|
|
(gtk_adjustment_set_value): new function to emit the "value_changed"
|
|
|
|
signal.
|
|
|
|
|
1998-05-01 19:39:27 +00:00
|
|
|
Fri May 1 12:28:35 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkcombo.c: Further changes to the way the window
|
|
|
|
is popped up so that it will be compatible with
|
|
|
|
auto-scrolling in the future.
|
|
|
|
|
1998-05-02 04:20:55 +00:00
|
|
|
Fri May 1 20:25:29 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
|
|
|
|
the combo-list is empty since that will cause the combo to operate
|
|
|
|
on a non existing GtkList window.
|
|
|
|
(gtk_combo_get_pos): provide the combo list with a usfull default
|
|
|
|
height if empty.
|
|
|
|
(gtk_combo_popup_button_press): grab the focus.
|
|
|
|
(gtk_combo_activate): grab the focus.
|
|
|
|
|
1998-05-01 16:15:39 +00:00
|
|
|
Fri May 1 12:06:43 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
|
|
|
|
function to reset the RC styles for a heirarchy
|
|
|
|
|
|
|
|
Clear the window background if necessary in
|
|
|
|
gtk_window_style_set.
|
|
|
|
|
|
|
|
* gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
|
|
|
|
rereads all previously read RC files.
|
|
|
|
|
|
|
|
* gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
|
|
|
|
(Should it just be called gdk_get_toplevels?)
|
|
|
|
|
|
|
|
* gtk/testgtk.c: New test to reload RC files.
|
|
|
|
|
1998-05-01 13:16:49 +00:00
|
|
|
Fri May 1 13:57:36 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkclist.h:
|
|
|
|
* gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
|
|
|
|
clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
|
|
|
|
GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
|
|
|
|
the GTK_ prefix (this solution involved less changes in the
|
|
|
|
gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
|
|
|
|
the mem_chunk==NULL test in gtk_clist_construct. merged in changes
|
|
|
|
from lars & stefan to support the derivation of GtkCtree.
|
|
|
|
|
|
|
|
* gtkctree.h:
|
|
|
|
* gtkctree.c:
|
|
|
|
initial import of a tree widget derived from gtkclist, courtesy
|
|
|
|
of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
|
|
|
|
it just damn rocks!
|
|
|
|
|
|
|
|
Fri May 1 10:05:44 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
|
|
|
|
for us.
|
|
|
|
(gtk_list_insert_items):
|
|
|
|
(gtk_list_remove_items_internal):
|
|
|
|
(gtk_list_clear_items):
|
|
|
|
remove a possible pointer grab, we might get thrown into a loop
|
|
|
|
otherwise.
|
|
|
|
(gtk_list_button_press): grab the pointer *before* selecting the child,
|
|
|
|
because selection of items may cause the lists children to change,
|
|
|
|
resulting in a grab release.
|
|
|
|
(gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
|
|
|
|
children.
|
|
|
|
(gtk_list_shutdown): remove all children from the list.
|
|
|
|
(gtk_real_list_unselect_child):
|
|
|
|
(gtk_real_list_select_child): *always* put our internal structures into
|
|
|
|
sane state *before* signal emisions (i.e. list->selection updates prior
|
|
|
|
to gtk_list_item_[de]select() calls).
|
|
|
|
|
|
|
|
* gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
|
|
|
|
focused child walks out of the window.
|
|
|
|
removed CAN_FOCUS for the combo arrow's button since it doesn't react
|
|
|
|
to keyboard events ("clicked" connection is missing).
|
|
|
|
|
1998-05-01 04:55:34 +00:00
|
|
|
Fri May 1 00:42:25 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
|
|
|
|
getting colormap for FOREIGN windows to go along with
|
|
|
|
Raster's fix for visuals.
|
|
|
|
|
1998-05-01 13:16:49 +00:00
|
|
|
Merges from gtk-1-0
|
1998-05-01 04:23:59 +00:00
|
|
|
===================
|
|
|
|
|
|
|
|
Thu Apr 30 23:32:51 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
|
|
|
|
Check to catch the case when the viewport fits in either
|
|
|
|
direction or both, instead of flip-flopping infinitely.
|
|
|
|
|
|
|
|
Only show/hide the scrollbars once at the end.
|
|
|
|
|
|
|
|
Thu Apr 30 21:56:07 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach):
|
|
|
|
Include the scrollbars in the foreach call.
|
|
|
|
(gtk-fortier-980405-0.patch;
|
|
|
|
Patrice Fortier <Patrice.Fortier@aquarel.fr>).
|
|
|
|
|
|
|
|
The notebook widget
|
|
|
|
really should also include its tabs, but that might cause
|
|
|
|
problems for programs if they
|
|
|
|
|
|
|
|
Thu Apr 30 21:51:52 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
|
|
|
|
resize if the size actually changed.
|
|
|
|
(gtk-johannes-980414-0.patch ;
|
|
|
|
johannes@nada.kth.se (Johannes Keukelaar) )
|
|
|
|
|
|
|
|
Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
|
|
|
|
ltmain.sh ltconfig config.sub config.guess:
|
|
|
|
|
|
|
|
Reverted back to libtool-1.2 (plus minor patches) so as not to
|
|
|
|
force the issue for everyone else.
|
|
|
|
|
|
|
|
Thu Apr 30 10:22:59 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
|
|
|
|
Updated to libtool 1.2a.
|
|
|
|
|
|
|
|
* gtk/gtkclist.c: Draw the in-between lines with style->base
|
|
|
|
instead of style->white.
|
|
|
|
|
|
|
|
Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c:
|
|
|
|
Cache the colormap and children of a window locally
|
|
|
|
instead of fetching them from the server when needed.
|
|
|
|
Huge performance difference for creating/destroying
|
|
|
|
windows.
|
|
|
|
|
|
|
|
* gtk/gtkstyle.c: Find the depth from the cached
|
|
|
|
visual, instead of asking the server.
|
|
|
|
|
|
|
|
* gtk.m4: Distribute the new version which tries to
|
|
|
|
figure out what went wrong and give helpful error
|
|
|
|
messages.
|
|
|
|
|
|
|
|
* ltmain.sh ltconfig config.sub config.sh:
|
|
|
|
Updated to libtool 1.2a
|
|
|
|
|
|
|
|
* gtk/gtktext.c: Fixed a bug where the drawn level
|
|
|
|
was being messed up when the text was scrolled
|
|
|
|
during a deletion.
|
|
|
|
|
|
|
|
Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>
|
|
|
|
|
|
|
|
* gtk/gtkfilesel.c: don't die when naughty people remove parts of
|
|
|
|
the filesystem under you (fix from Josh)
|
|
|
|
|
|
|
|
Thu Apr 30 09:49:14 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
|
|
|
|
if the viewport already exists before iterating over it, maybe we
|
|
|
|
haven't been constructed yet.
|
|
|
|
|
|
|
|
Thu Apr 30 01:51:00 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
|
|
|
|
the GtkBin widget already has a child.
|
|
|
|
|
|
|
|
* gtk/gtkbox.c (gtk_box_pack_{start|end}):
|
|
|
|
check that child->parent == NULL;
|
|
|
|
|
|
|
|
Tue Apr 28 22:13:54 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkselection.c (gtk_selection_clear): Only return
|
|
|
|
FALSE when the clear event is been rejected, not when
|
|
|
|
widget has already lost the selection. (Which should
|
|
|
|
only happen when we are setting the selection to another
|
|
|
|
widget ourself.)
|
|
|
|
|
|
|
|
Fri Apr 24 19:07:32 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:
|
|
|
|
|
|
|
|
Removed the "check visibility after gtk_widget_unparent" bug
|
|
|
|
in hopefully the last three places.
|
|
|
|
|
|
|
|
Tue Apr 28 15:46:41 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
|
|
|
|
rc-files.
|
|
|
|
|
|
|
|
Mon Apr 27 15:11:52 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
|
|
|
|
for CAN_FOCUS widgets.
|
|
|
|
|
|
|
|
* gtk/testgtk.c (create_scrolled_windows): feature h/v focus
|
|
|
|
adjustments for the table.
|
|
|
|
(create_list): feature automatic adjustment of the scrolled window to
|
|
|
|
always contain the focused child.
|
|
|
|
(create_main_window): keep the focussed button always inside of the
|
|
|
|
scrolled windoww.
|
|
|
|
|
|
|
|
* gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
|
|
|
|
adjustments, to contain the allocation of the currently focused child.
|
|
|
|
(gtk_container_set_focus_hadjustment): new functin to set the
|
|
|
|
horizontal focus adjustment.
|
|
|
|
(gtk_container_set_focus_vadjustment): new functin to set the vertical
|
|
|
|
focus adjustment.
|
|
|
|
|
|
|
|
* gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
|
|
|
|
clamp the currents adjustment page into a specific range.
|
|
|
|
|
|
|
|
* random GtkType fixups for gtk_*_get_type() functions.
|
|
|
|
|
|
|
|
Fri Apr 24 18:37:16 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtktreeitem.c (gtk_tree_item_remove_subtree):
|
|
|
|
Account for the fact that gtk_tree_item_remove_subtree
|
|
|
|
will be called recursively.
|
|
|
|
|
|
|
|
Handle removing a collapsed subtree.
|
|
|
|
|
|
|
|
(From Andy Dustman <adustman@comstar.net>)
|
|
|
|
|
|
|
|
* gtk/gtktree.c (gtk_tree_remove_items): Look for the
|
|
|
|
root tree when removing items from a non-previously
|
|
|
|
mapped tree.
|
|
|
|
|
|
|
|
* gtk/testgtk.c: Added a remove_subtree button.
|
|
|
|
|
|
|
|
Thu Apr 23 23:44:17 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
|
|
|
|
before object removing data. This change fixes a bug where
|
|
|
|
removing the last weak references would cause it to be
|
|
|
|
triggered.
|
|
|
|
|
|
|
|
Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gdk/Makefile.am: Removed mostly useless dependency that
|
|
|
|
was causing problems for SGI's make, when used with
|
|
|
|
the 'make dist' form of GTK+. (Dependency caused dependencies
|
|
|
|
to be redone when BUILT_SOURCES changed)
|
|
|
|
|
|
|
|
==========
|
|
|
|
|
1998-04-30 15:18:19 +00:00
|
|
|
Thu Apr 30 11:18:00 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkcombo.[ch]: Allow the user to use the popup list
|
|
|
|
like a menu.
|
|
|
|
|
|
|
|
* gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
|
|
|
|
to gtkitem.c so dragging can also work in lists.
|
|
|
|
|
|
|
|
* gtk/gtklist.[ch]: Track child enter events and use
|
|
|
|
those to allow dragging the selection.
|
|
|
|
|
|
|
|
Thu Apr 30 11:16:06 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtktext.c: Try enabling background pixmaps for editable text
|
|
|
|
widgets. There is a bit of flashing, but not too bad. If you
|
|
|
|
don't want the flashing, you can always not set a background
|
|
|
|
pixmap.
|
|
|
|
|
|
|
|
Wed Apr 29 15:46:13 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtktext.c: Fixed a bug where the drawn level
|
|
|
|
was being messed up when the text was scrolled
|
|
|
|
during a deletion.
|
|
|
|
|
1998-04-29 00:51:55 +00:00
|
|
|
1998-04-28 Miguel de Icaza <miguel@nuclecu.unam.mx>
|
|
|
|
|
|
|
|
* gdk/gdk.c (gdk_event_translate): Random debugging fixed this
|
|
|
|
bug: There is no need to set the ExposureMask in the XGrabPointer
|
|
|
|
(this caused DnD programs to crash).
|
|
|
|
|
1998-04-24 00:26:01 +00:00
|
|
|
Fri Apr 24 01:29:04 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
|
|
|
|
field to be of type guint.
|
|
|
|
* gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
|
|
|
|
ref_count>0;
|
|
|
|
(gtk_accelerator_table_install): keep a per object list of accelerator
|
|
|
|
tables that refer to this object.
|
|
|
|
(gtk_accelerator_table_remove): remove the accelerator table from the
|
|
|
|
per object list.
|
|
|
|
(gtk_accelerator_table_clean): warn if there are any object references
|
|
|
|
left in an accelerator table upon destruction.
|
|
|
|
(gtk_accelerator_tables_delete): new function to delete object
|
|
|
|
references from the accelerator tables associated with this object.
|
|
|
|
|
|
|
|
* gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
|
|
|
|
GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
|
|
|
|
of an accelerator can be prevented by gtk_signal_emit_stop().
|
|
|
|
(gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
|
|
|
|
so there are no stale pointers in accelerator tables left.
|
|
|
|
|
1998-04-23 04:26:20 +00:00
|
|
|
1998-04-22 Federico Mena Quintero <federico@nuclecu.unam.mx>
|
|
|
|
|
|
|
|
* gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
|
|
|
|
visible before we unparent it.
|
|
|
|
|
1998-04-22 02:20:50 +00:00
|
|
|
Wed Apr 22 04:15:26 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
|
|
|
|
running_timeouts list with the tmp_list link itself, not with a new
|
|
|
|
GList structure pointing to our link. that would fill up memory and
|
|
|
|
causes the GList.data fields of the running_timeouts list to point to
|
|
|
|
GList structures and not GtkTimeoutFunction structures which is a
|
|
|
|
*really* bad thing.
|
|
|
|
(gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
|
|
|
|
the above entry ;).
|
|
|
|
|
1998-04-18 20:33:35 +00:00
|
|
|
Sat Apr 18 22:18:12 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkradiomenuitem.h:
|
|
|
|
* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
|
|
|
|
ala gtk_radio_button_set_group.
|
|
|
|
(gtk_radio_menu_item_init): assure that we always have at least a group
|
|
|
|
that points to self.
|
|
|
|
|
|
|
|
* gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
|
|
|
|
added g_return_if_fail() statements.
|
|
|
|
(gtk_radio_button_init): assure that we always have at least a group
|
|
|
|
that points to self.
|
|
|
|
|
1998-04-17 01:07:36 +00:00
|
|
|
Fri Apr 17 03:05:05 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.
|
|
|
|
|
1998-04-15 04:00:45 +00:00
|
|
|
Wed Apr 15 05:13:09 1998 Tim Janik <timj@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
|
|
|
|
(Damon Chaplin), which i got wrong when applying Damon's patch the last
|
|
|
|
time.
|
|
|
|
|
1998-04-24 01:03:32 +00:00
|
|
|
Wed Apr 15 20:42:46 1998 Owen Taylor <otaylor@gtk.org>
|
|
|
|
|
|
|
|
* gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
|
|
|
|
that when we are running with a non-installed colormap,
|
|
|
|
in 8-bit pseudo-color, we actually are using the system
|
|
|
|
visual. (Fixes *Bad Match* errors on Digital Unix machines
|
|
|
|
with multiple 8-bit pseudo-color visuals)
|
|
|
|
|
1998-04-15 02:15:36 +00:00
|
|
|
1998-04-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
|
|
|
|
|
|
|
|
* gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
|
|
|
|
by whoever thought that randomly changing ints to unsigned int
|
|
|
|
without reviewing the code was a good idea. It is, btw not
|
|
|
|
mentioned in the ChangeLog as usual, but I know it was not Elliot
|
|
|
|
the culprit this time.
|
|
|
|
|
1998-04-14 02:22:39 +00:00
|
|
|
Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>
|
|
|
|
|
|
|
|
* Released GTK+ 1.0.0
|