<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" 
               "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
<refentry id="poppler-poppler-action">
<refmeta>
<refentrytitle role="top_of_page" id="poppler-poppler-action.top_of_page">PopplerAction</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>POPPLER Library</refmiscinfo>
</refmeta>

<refnamediv>
<refname>PopplerAction</refname>
<refpurpose>Action links</refpurpose>
</refnamediv>

<refsynopsisdiv id="poppler-poppler-action.synopsis" role="synopsis">
<title role="synopsis.title">Synopsis</title>

<synopsis>
enum                <link linkend="PopplerActionType">PopplerActionType</link>;
enum                <link linkend="PopplerDestType">PopplerDestType</link>;
                    <link linkend="PopplerActionAny">PopplerActionAny</link>;
                    <link linkend="PopplerActionGotoDest">PopplerActionGotoDest</link>;
                    <link linkend="PopplerActionGotoRemote">PopplerActionGotoRemote</link>;
                    <link linkend="PopplerActionLaunch">PopplerActionLaunch</link>;
                    <link linkend="PopplerActionUri">PopplerActionUri</link>;
                    <link linkend="PopplerActionNamed">PopplerActionNamed</link>;
                    <link linkend="PopplerActionMovie">PopplerActionMovie</link>;
                    <link linkend="PopplerDest">PopplerDest</link>;
union               <link linkend="PopplerAction">PopplerAction</link>;
#define             <link linkend="POPPLER-TYPE-ACTION--CAPS">POPPLER_TYPE_ACTION</link>
#define             <link linkend="POPPLER-ACTION--CAPS">POPPLER_ACTION</link>                      (obj)
<link linkend="GType">GType</link>               <link linkend="poppler-action-get-type">poppler_action_get_type</link>             (void);
<link linkend="PopplerAction">PopplerAction</link> *     <link linkend="poppler-action-copy">poppler_action_copy</link>                 (<link linkend="PopplerAction">PopplerAction</link> *action);
<link linkend="void">void</link>                <link linkend="poppler-action-free">poppler_action_free</link>                 (<link linkend="PopplerAction">PopplerAction</link> *action);
#define             <link linkend="POPPLER-TYPE-DEST--CAPS">POPPLER_TYPE_DEST</link>
<link linkend="GType">GType</link>               <link linkend="poppler-dest-get-type">poppler_dest_get_type</link>               (void);
<link linkend="PopplerDest">PopplerDest</link> *       <link linkend="poppler-dest-copy">poppler_dest_copy</link>                   (<link linkend="PopplerDest">PopplerDest</link> *dest);
<link linkend="void">void</link>                <link linkend="poppler-dest-free">poppler_dest_free</link>                   (<link linkend="PopplerDest">PopplerDest</link> *dest);
</synopsis>
</refsynopsisdiv>









<refsect1 id="poppler-poppler-action.description" role="desc">
<title role="desc.title">Description</title>
<para>
</para>
</refsect1>

<refsect1 id="poppler-poppler-action.details" role="details">
<title role="details.title">Details</title>
<refsect2 id="PopplerActionType" role="enum">
<title>enum PopplerActionType</title>
<indexterm zone="PopplerActionType"><primary sortas="PopplerActionType">PopplerActionType</primary></indexterm><programlisting>typedef enum
{
	POPPLER_ACTION_UNKNOWN,		/* unknown action */
	POPPLER_ACTION_NONE,            /* no action specified */
	POPPLER_ACTION_GOTO_DEST,	/* go to destination */
	POPPLER_ACTION_GOTO_REMOTE,	/* go to destination in new file */
	POPPLER_ACTION_LAUNCH,		/* launch app (or open document) */
	POPPLER_ACTION_URI,		/* URI */
	POPPLER_ACTION_NAMED,		/* named action*/
	POPPLER_ACTION_MOVIE		/* movie action */
} PopplerActionType;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="PopplerDestType" role="enum">
<title>enum PopplerDestType</title>
<indexterm zone="PopplerDestType"><primary sortas="PopplerDestType">PopplerDestType</primary></indexterm><programlisting>typedef enum
{
	POPPLER_DEST_UNKNOWN,
	POPPLER_DEST_XYZ,
	POPPLER_DEST_FIT,
	POPPLER_DEST_FITH,
	POPPLER_DEST_FITV,
	POPPLER_DEST_FITR,
	POPPLER_DEST_FITB,
	POPPLER_DEST_FITBH,
	POPPLER_DEST_FITBV,
	POPPLER_DEST_NAMED
} PopplerDestType;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="PopplerActionAny" role="struct">
<title>PopplerActionAny</title>
<indexterm zone="PopplerActionAny"><primary sortas="PopplerActionAny">PopplerActionAny</primary></indexterm><programlisting>typedef struct {
	PopplerActionType type;
	gchar *title;
} PopplerActionAny;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="PopplerActionGotoDest" role="struct">
<title>PopplerActionGotoDest</title>
<indexterm zone="PopplerActionGotoDest"><primary sortas="PopplerActionGotoDest">PopplerActionGotoDest</primary></indexterm><programlisting>typedef struct {
	PopplerActionType type;
	gchar *title;

	PopplerDest *dest;
} PopplerActionGotoDest;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="PopplerActionGotoRemote" role="struct">
<title>PopplerActionGotoRemote</title>
<indexterm zone="PopplerActionGotoRemote"><primary sortas="PopplerActionGotoRemote">PopplerActionGotoRemote</primary></indexterm><programlisting>typedef struct {
	PopplerActionType type;
	gchar *title;

	gchar *file_name;
	PopplerDest *dest;
} PopplerActionGotoRemote;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="PopplerActionLaunch" role="struct">
<title>PopplerActionLaunch</title>
<indexterm zone="PopplerActionLaunch"><primary sortas="PopplerActionLaunch">PopplerActionLaunch</primary></indexterm><programlisting>typedef struct {
	PopplerActionType type;
	gchar *title;

	gchar *file_name;
	gchar *params;
} PopplerActionLaunch;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="PopplerActionUri" role="struct">
<title>PopplerActionUri</title>
<indexterm zone="PopplerActionUri"><primary sortas="PopplerActionUri">PopplerActionUri</primary></indexterm><programlisting>typedef struct {
	PopplerActionType type;
	gchar *title;

	char *uri;
} PopplerActionUri;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="PopplerActionNamed" role="struct">
<title>PopplerActionNamed</title>
<indexterm zone="PopplerActionNamed"><primary sortas="PopplerActionNamed">PopplerActionNamed</primary></indexterm><programlisting>typedef struct {
	PopplerActionType type;
	gchar *title;

	gchar *named_dest;
} PopplerActionNamed;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="PopplerActionMovie" role="struct">
<title>PopplerActionMovie</title>
<indexterm zone="PopplerActionMovie"><primary sortas="PopplerActionMovie">PopplerActionMovie</primary></indexterm><programlisting>typedef struct {
	PopplerActionType type;
	gchar *title;
} PopplerActionMovie;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="PopplerDest" role="struct">
<title>PopplerDest</title>
<indexterm zone="PopplerDest"><primary sortas="PopplerDest">PopplerDest</primary></indexterm><programlisting>typedef struct {
	PopplerDestType type;

	int page_num;
	double left;
	double bottom;
	double right;
	double top;
	double zoom;
	gchar *named_dest;
	guint change_left : 1;
	guint change_top : 1;
	guint change_zoom : 1;
} PopplerDest;
</programlisting>
<para>
</para></refsect2>
<refsect2 id="PopplerAction" role="union">
<title>union PopplerAction</title>
<indexterm zone="PopplerAction"><primary sortas="PopplerAction">PopplerAction</primary></indexterm><programlisting>union PopplerAction
{
	PopplerActionType type;
	PopplerActionAny any;
	PopplerActionGotoDest goto_dest;
	PopplerActionGotoRemote goto_remote;
	PopplerActionLaunch launch;
	PopplerActionUri uri;
	PopplerActionNamed named;
	PopplerActionMovie movie;
};
</programlisting>
<para>
</para></refsect2>
<refsect2 id="POPPLER-TYPE-ACTION--CAPS" role="macro">
<title>POPPLER_TYPE_ACTION</title>
<indexterm zone="POPPLER-TYPE-ACTION--CAPS"><primary sortas="POPPLER_TYPE_ACTION">POPPLER_TYPE_ACTION</primary></indexterm><programlisting>#define POPPLER_TYPE_ACTION             (poppler_action_get_type ())
</programlisting>
<para>
</para></refsect2>
<refsect2 id="POPPLER-ACTION--CAPS" role="macro">
<title>POPPLER_ACTION()</title>
<indexterm zone="POPPLER-ACTION--CAPS"><primary sortas="POPPLER_ACTION">POPPLER_ACTION</primary></indexterm><programlisting>#define POPPLER_ACTION(obj)             (G_TYPE_CHECK_INSTANCE_CAST ((obj), POPPLER_TYPE_ACTION, PopplerAction))
</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>obj</parameter>&#160;:</term>
<listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="poppler-action-get-type" role="function">
<title>poppler_action_get_type ()</title>
<indexterm zone="poppler-action-get-type"><primary sortas="poppler_action_get_type">poppler_action_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link>               poppler_action_get_type             (void);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="poppler-action-copy" role="function">
<title>poppler_action_copy ()</title>
<indexterm zone="poppler-action-copy"><primary sortas="poppler_action_copy">poppler_action_copy</primary></indexterm><programlisting><link linkend="PopplerAction">PopplerAction</link> *     poppler_action_copy                 (<link linkend="PopplerAction">PopplerAction</link> *action);</programlisting>
<para>
Copies <parameter>action</parameter>, creating an identical <link linkend="PopplerAction"><type>PopplerAction</type></link>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>action</parameter>&#160;:</term>
<listitem><simpara> a <link linkend="PopplerAction"><type>PopplerAction</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new action identical to <parameter>action</parameter>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="poppler-action-free" role="function">
<title>poppler_action_free ()</title>
<indexterm zone="poppler-action-free"><primary sortas="poppler_action_free">poppler_action_free</primary></indexterm><programlisting><link linkend="void">void</link>                poppler_action_free                 (<link linkend="PopplerAction">PopplerAction</link> *action);</programlisting>
<para>
Frees <parameter>action</parameter></para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>action</parameter>&#160;:</term>
<listitem><simpara> a <link linkend="PopplerAction"><type>PopplerAction</type></link>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="POPPLER-TYPE-DEST--CAPS" role="macro">
<title>POPPLER_TYPE_DEST</title>
<indexterm zone="POPPLER-TYPE-DEST--CAPS"><primary sortas="POPPLER_TYPE_DEST">POPPLER_TYPE_DEST</primary></indexterm><programlisting>#define POPPLER_TYPE_DEST              (poppler_dest_get_type ())
</programlisting>
<para>
</para></refsect2>
<refsect2 id="poppler-dest-get-type" role="function">
<title>poppler_dest_get_type ()</title>
<indexterm zone="poppler-dest-get-type"><primary sortas="poppler_dest_get_type">poppler_dest_get_type</primary></indexterm><programlisting><link linkend="GType">GType</link>               poppler_dest_get_type               (void);</programlisting>
<para>
</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="poppler-dest-copy" role="function">
<title>poppler_dest_copy ()</title>
<indexterm zone="poppler-dest-copy"><primary sortas="poppler_dest_copy">poppler_dest_copy</primary></indexterm><programlisting><link linkend="PopplerDest">PopplerDest</link> *       poppler_dest_copy                   (<link linkend="PopplerDest">PopplerDest</link> *dest);</programlisting>
<para>
Copies <parameter>dest</parameter>, creating an identical <link linkend="PopplerDest"><type>PopplerDest</type></link>.</para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>dest</parameter>&#160;:</term>
<listitem><simpara> a <link linkend="PopplerDest"><type>PopplerDest</type></link>
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&#160;:</term><listitem><simpara> a new destination identical to <parameter>dest</parameter>
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2 id="poppler-dest-free" role="function">
<title>poppler_dest_free ()</title>
<indexterm zone="poppler-dest-free"><primary sortas="poppler_dest_free">poppler_dest_free</primary></indexterm><programlisting><link linkend="void">void</link>                poppler_dest_free                   (<link linkend="PopplerDest">PopplerDest</link> *dest);</programlisting>
<para>
Frees <parameter>dest</parameter></para>
<para>
</para><variablelist role="params">
<varlistentry><term><parameter>dest</parameter>&#160;:</term>
<listitem><simpara> a <link linkend="PopplerDest"><type>PopplerDest</type></link>
</simpara></listitem></varlistentry>
</variablelist></refsect2>

</refsect1>




</refentry>
