<!-- ##### SECTION Title ##### -->
EphyEmbedPersist
<!-- ##### SECTION Short_Description ##### -->
A class to download files
<!-- ##### SECTION Long_Description ##### -->
<para>
An #EphyEmbedPersist is a relatively simple way to save a web page or file to
disk. It is an abstract class, implemented by #MozillaEmbedPersist.
</para>
<para>
To create an #EphyEmbedPersist, use ephy_embed_factory_new_object(). Next, call
ephy_embed_persist_set_flags() and ephy_embed_persist_set_embed(). Depending
on the flags, you may also want to call ephy_embed_persist_set_dest() or
ephy_embed_persist_set_source(). Finally, call ephy_embed_persist_save() to
save the file.
</para>
<para>
<example>
<title>Saving the current web page to disk</title>
<programlisting>#<![CDATA[include <epiphany/ephy-embed-persist.h>]]>
#<![CDATA[include <epiphany/ephy-embed.h>
static void
save_source_completed_cb (EphyEmbedPersist *persist,
gpointer dummy)
{
g_print ("Download to %]]><![CDATA[s complete.\n",
ephy_embed_persist_get_dest (persist));
}
void
save_page (EphyEmbed *embed,
const char *filename)
{
EphyEmbedPersist *persist;
persist = EPHY_EMBED_PERSIST
(ephy_embed_factory_new_object ("EphyEmbedPersist"));
ephy_embed_persist_set_embed (persist, embed);
ephy_embed_persist_set_flags (persist, EMBED_PERSIST_NO_VIEW |
EMBED_PERSIST_COPY_PAGE);
ephy_embed_persist_set_dest (persist, filename);
g_signal_connect (persist, "completed",
G_CALLBACK (save_source_completed_cb), NULL);
ephy_embed_persist_save (persist);
g_object_unref (persist);
}]]>
</programlisting>
</example>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### ENUM EmbedPersistFlags ##### -->
<para>
Determines how the #EphyEmbedPersist should act.
</para>
@EMBED_PERSIST_COPY_PAGE: If set, download a copy of the page being browsed by
the #EphyEmbedPersist's #EphyEmbed. This should be
specified with ephy_embed_persist_set_embed(). If
unset, ephy_embed_persist_set_source() must have been
called.
@EMBED_PERSIST_MAINDOC: If set and %EMBED_PERSIST_COPY_PAGE is set, download the
#EphyEmbedPersist's #EphyEmbed's page's frameset. If
unset, download the currently-focused frame.
@EMBED_PERSIST_NO_VIEW: If set, do not display this download in the download
manager.
@EMBED_PERSIST_ASK_DESTINATION: If set, display a filechooser dialog. You must
call ephy_embed_persist_set_fc_title() and
ephy_embed_persist_set_fc_parent() before
ephy_embed_persist_save() if this is the case.
If unset, use the destination specified with
ephy_embed_persist_set_dest().
<!-- ##### FUNCTION ephy_embed_persist_set_dest ##### -->
<para>
</para>
@persist:
@value:
<!-- ##### FUNCTION ephy_embed_persist_set_embed ##### -->
<para>
</para>
@persist:
@value:
<!-- ##### FUNCTION ephy_embed_persist_set_fc_title ##### -->
<para>
</para>
@persist:
@value:
<!-- ##### FUNCTION ephy_embed_persist_set_fc_parent ##### -->
<para>
</para>
@persist:
@value:
<!-- ##### FUNCTION ephy_embed_persist_set_flags ##### -->
<para>
</para>
@persist:
@value:
<!-- ##### FUNCTION ephy_embed_persist_set_max_size ##### -->
<para>
</para>
@persist:
@Param2:
<!-- # Unused Parameters # -->
@value:
<!-- ##### FUNCTION ephy_embed_persist_set_persist_key ##### -->
<para>
</para>
@persist:
@value:
<!-- ##### FUNCTION ephy_embed_persist_set_source ##### -->
<para>
</para>
@persist:
@value:
<!-- ##### FUNCTION ephy_embed_persist_get_dest ##### -->
<para>
</para>
@persist:
@Returns:
<!-- ##### FUNCTION ephy_embed_persist_get_embed ##### -->
<para>
</para>
@persist:
@Returns:
<!-- ##### FUNCTION ephy_embed_persist_get_fc_title ##### -->
<para>
</para>
@persist:
@Returns:
<!-- ##### FUNCTION ephy_embed_persist_get_fc_parent ##### -->
<para>
</para>
@persist:
@Returns:
<!-- ##### FUNCTION ephy_embed_persist_get_flags ##### -->
<para>
</para>
@persist:
@Returns:
<!-- ##### FUNCTION ephy_embed_persist_get_max_size ##### -->
<para>
</para>
@persist:
@Returns:
<!-- ##### FUNCTION ephy_embed_persist_get_persist_key ##### -->
<para>
</para>
@persist:
@Returns:
<!-- ##### FUNCTION ephy_embed_persist_get_source ##### -->
<para>
</para>
@persist:
@Returns:
<!-- ##### FUNCTION ephy_embed_persist_save ##### -->
<para>
</para>
@persist:
@Returns:
<!-- ##### FUNCTION ephy_embed_persist_cancel ##### -->
<para>
</para>
@persist:
<!-- ##### FUNCTION ephy_embed_persist_to_string ##### -->
<para>
</para>
@persist:
@Returns: