Blob Blame History Raw
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GcrSystemPrompt: Gcr Library Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
<link rel="home" href="index.html" title="Gcr Library Reference Manual">
<link rel="up" href="prompts.html" title="Part IV. Prompting">
<link rel="prev" href="GcrPromptDialog.html" title="GcrPromptDialog">
<link rel="next" href="GcrSystemPrompter.html" title="GcrSystemPrompter">
<meta name="generator" content="GTK-Doc V1.27.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#GcrSystemPrompt.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                  <a href="#GcrSystemPrompt.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span> 
                  <a href="#GcrSystemPrompt.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span> 
                  <a href="#GcrSystemPrompt.properties" class="shortcut">Properties</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="prompts.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="GcrPromptDialog.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="GcrSystemPrompter.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="GcrSystemPrompt"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GcrSystemPrompt.top_of_page"></a>GcrSystemPrompt</span></h2>
<p>GcrSystemPrompt — a system modal prompt</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="GcrSystemPrompt.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_return">
<col class="functions_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">
<a class="link" href="GcrPrompt.html" title="GcrPrompt"><span class="returnvalue">GcrPrompt</span></a> *
</td>
<td class="function_name">
<a class="link" href="GcrSystemPrompt.html#gcr-system-prompt-open" title="gcr_system_prompt_open ()">gcr_system_prompt_open</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GcrSystemPrompt.html#gcr-system-prompt-open-async" title="gcr_system_prompt_open_async ()">gcr_system_prompt_open_async</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GcrPrompt.html" title="GcrPrompt"><span class="returnvalue">GcrPrompt</span></a> *
</td>
<td class="function_name">
<a class="link" href="GcrSystemPrompt.html#gcr-system-prompt-open-finish" title="gcr_system_prompt_open_finish ()">gcr_system_prompt_open_finish</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GcrPrompt.html" title="GcrPrompt"><span class="returnvalue">GcrPrompt</span></a> *
</td>
<td class="function_name">
<a class="link" href="GcrSystemPrompt.html#gcr-system-prompt-open-for-prompter" title="gcr_system_prompt_open_for_prompter ()">gcr_system_prompt_open_for_prompter</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GcrSystemPrompt.html#gcr-system-prompt-open-for-prompter-async" title="gcr_system_prompt_open_for_prompter_async ()">gcr_system_prompt_open_for_prompter_async</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GcrSecretExchange.html" title="GcrSecretExchange"><span class="returnvalue">GcrSecretExchange</span></a> *
</td>
<td class="function_name">
<a class="link" href="GcrSystemPrompt.html#gcr-system-prompt-get-secret-exchange" title="gcr_system_prompt_get_secret_exchange ()">gcr_system_prompt_get_secret_exchange</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="GcrSystemPrompt.html#gcr-system-prompt-close" title="gcr_system_prompt_close ()">gcr_system_prompt_close</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GcrSystemPrompt.html#gcr-system-prompt-close-async" title="gcr_system_prompt_close_async ()">gcr_system_prompt_close_async</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="GcrSystemPrompt.html#gcr-system-prompt-close-finish" title="gcr_system_prompt_close_finish ()">gcr_system_prompt_close_finish</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GcrSystemPrompt.properties"></a><h2>Properties</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="properties_type">
<col width="300px" class="properties_name">
<col width="200px" class="properties_flags">
</colgroup>
<tbody>
<tr>
<td class="property_type">
<span class="type">gchar</span> *</td>
<td class="property_name"><a class="link" href="GcrSystemPrompt.html#GcrSystemPrompt--bus-name" title="The “bus-name” property">bus-name</a></td>
<td class="property_flags">Read / Write / Construct Only</td>
</tr>
<tr>
<td class="property_type">
<a class="link" href="GcrSecretExchange.html" title="GcrSecretExchange"><span class="type">GcrSecretExchange</span></a> *</td>
<td class="property_name"><a class="link" href="GcrSystemPrompt.html#GcrSystemPrompt--secret-exchange" title="The “secret-exchange” property">secret-exchange</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">gint</span></td>
<td class="property_name"><a class="link" href="GcrSystemPrompt.html#GcrSystemPrompt--timeout-seconds" title="The “timeout-seconds” property">timeout-seconds</a></td>
<td class="property_flags">Write / Construct Only</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GcrSystemPrompt.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="name">
<col class="description">
</colgroup>
<tbody>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="GcrSystemPrompt.html#GcrSystemPrompt-struct" title="struct GcrSystemPrompt">GcrSystemPrompt</a></td>
</tr>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="GcrSystemPrompt.html#GcrSystemPromptClass" title="struct GcrSystemPromptClass">GcrSystemPromptClass</a></td>
</tr>
<tr>
<td class="define_keyword">#define</td>
<td class="function_name"><a class="link" href="GcrSystemPrompt.html#GCR-SYSTEM-PROMPT-ERROR:CAPS" title="GCR_SYSTEM_PROMPT_ERROR">GCR_SYSTEM_PROMPT_ERROR</a></td>
</tr>
<tr>
<td class="datatype_keyword">enum</td>
<td class="function_name"><a class="link" href="GcrSystemPrompt.html#GcrSystemPromptError" title="enum GcrSystemPromptError">GcrSystemPromptError</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GcrSystemPrompt.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="screen">    GObject
    <span class="lineart">╰──</span> GcrSystemPrompt
</pre>
</div>
<div class="refsect1">
<a name="GcrSystemPrompt.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
<p>
GcrSystemPrompt implements
 <a class="link" href="GcrPrompt.html" title="GcrPrompt">GcrPrompt</a>,  GInitable and  GAsyncInitable.</p>
</div>
<div class="refsect1">
<a name="GcrSystemPrompt.description"></a><h2>Description</h2>
<p>A <a class="link" href="GcrPrompt.html" title="GcrPrompt"><span class="type">GcrPrompt</span></a> implementation which calls to the system prompter to
display prompts in a system modal fashion.</p>
<p>Since the system prompter usually only displays one prompt at a time, you
may have to wait for the prompt to be displayed. Use <a class="link" href="GcrSystemPrompt.html#gcr-system-prompt-open" title="gcr_system_prompt_open ()"><code class="function">gcr_system_prompt_open()</code></a>
or a related function to open a prompt. Since this can take a long time, you
should always check that the prompt is still needed after it is opened. A
previous prompt may have already provided the information needed and you
may no longer need to prompt.</p>
<p>Use <a class="link" href="GcrSystemPrompt.html#gcr-system-prompt-close" title="gcr_system_prompt_close ()"><code class="function">gcr_system_prompt_close()</code></a> to close the prompt when you're done with it.</p>
</div>
<div class="refsect1">
<a name="GcrSystemPrompt.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="gcr-system-prompt-open"></a><h3>gcr_system_prompt_open ()</h3>
<pre class="programlisting"><a class="link" href="GcrPrompt.html" title="GcrPrompt"><span class="returnvalue">GcrPrompt</span></a> *
gcr_system_prompt_open (<em class="parameter"><code><span class="type">gint</span> timeout_seconds</code></em>,
                        <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
                        <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<p>Opens a system prompt with the default prompter.</p>
<p>Most system prompters only allow showing one prompt at a time, and if
another prompt is shown then this method will block for up to
<em class="parameter"><code>timeout_seconds</code></em>
 seconds. If <em class="parameter"><code>timeout_seconds</code></em>
 is equal to -1, then this
will block indefinitely until the prompt can be opened. If <em class="parameter"><code>timeout_seconds</code></em>

expires, then this function will fail with a <a class="link" href="GcrSystemPrompt.html#GCR-SYSTEM-PROMPT-IN-PROGRESS:CAPS"><code class="literal">GCR_SYSTEM_PROMPT_IN_PROGRESS</code></a>
error.</p>
<div class="refsect3">
<a name="gcr-system-prompt-open.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>timeout_seconds</p></td>
<td class="parameter_description"><p>the number of seconds to wait to access the prompt, or -1</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>cancellable</p></td>
<td class="parameter_description"><p>optional cancellation object</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
<td class="parameter_description"><p>location to place error on failure</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gcr-system-prompt-open.returns"></a><h4>Returns</h4>
<p>the prompt, or <code class="literal">NULL</code> if
prompt could not be opened. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> Gcr.SystemPrompt]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gcr-system-prompt-open-async"></a><h3>gcr_system_prompt_open_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gcr_system_prompt_open_async (<em class="parameter"><code><span class="type">gint</span> timeout_seconds</code></em>,
                              <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
                              <em class="parameter"><code><span class="type">GAsyncReadyCallback</span> callback</code></em>,
                              <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Asynchronously open a system prompt with the default system prompter.</p>
<p>Most system prompters only allow showing one prompt at a time, and if
another prompt is shown then this method will block for up to
<em class="parameter"><code>timeout_seconds</code></em>
 seconds. If <em class="parameter"><code>timeout_seconds</code></em>
 is equal to -1, then this
will block indefinitely until the prompt can be opened. If <em class="parameter"><code>timeout_seconds</code></em>

expires, then this operation will fail with a <a class="link" href="GcrSystemPrompt.html#GCR-SYSTEM-PROMPT-IN-PROGRESS:CAPS"><code class="literal">GCR_SYSTEM_PROMPT_IN_PROGRESS</code></a>
error.</p>
<div class="refsect3">
<a name="gcr-system-prompt-open-async.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>timeout_seconds</p></td>
<td class="parameter_description"><p>the number of seconds to wait to access the prompt, or -1</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>cancellable</p></td>
<td class="parameter_description"><p>optional cancellation object</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>callback</p></td>
<td class="parameter_description"><p>called when the operation completes</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>data to pass the callback</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gcr-system-prompt-open-finish"></a><h3>gcr_system_prompt_open_finish ()</h3>
<pre class="programlisting"><a class="link" href="GcrPrompt.html" title="GcrPrompt"><span class="returnvalue">GcrPrompt</span></a> *
gcr_system_prompt_open_finish (<em class="parameter"><code><span class="type">GAsyncResult</span> *result</code></em>,
                               <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<p>Complete an operation to asynchronously open a system prompt.</p>
<div class="refsect3">
<a name="gcr-system-prompt-open-finish.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>result</p></td>
<td class="parameter_description"><p>the asynchronous result</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
<td class="parameter_description"><p>location to place an error on failure</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gcr-system-prompt-open-finish.returns"></a><h4>Returns</h4>
<p>the prompt, or <code class="literal">NULL</code> if
prompt could not be opened. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> Gcr.SystemPrompt]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gcr-system-prompt-open-for-prompter"></a><h3>gcr_system_prompt_open_for_prompter ()</h3>
<pre class="programlisting"><a class="link" href="GcrPrompt.html" title="GcrPrompt"><span class="returnvalue">GcrPrompt</span></a> *
gcr_system_prompt_open_for_prompter (<em class="parameter"><code>const <span class="type">gchar</span> *prompter_name</code></em>,
                                     <em class="parameter"><code><span class="type">gint</span> timeout_seconds</code></em>,
                                     <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
                                     <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<p>Opens a system prompt. If prompter_name is <code class="literal">NULL</code>, then the default
system prompter is used.</p>
<p>Most system prompters only allow showing one prompt at a time, and if
another prompt is shown then this method will block for up to
<em class="parameter"><code>timeout_seconds</code></em>
 seconds. If <em class="parameter"><code>timeout_seconds</code></em>
 is equal to -1, then this
will block indefinitely until the prompt can be opened. If <em class="parameter"><code>timeout_seconds</code></em>

expires, then this function will fail with a <a class="link" href="GcrSystemPrompt.html#GCR-SYSTEM-PROMPT-IN-PROGRESS:CAPS"><code class="literal">GCR_SYSTEM_PROMPT_IN_PROGRESS</code></a>
error.</p>
<div class="refsect3">
<a name="gcr-system-prompt-open-for-prompter.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>prompter_name</p></td>
<td class="parameter_description"><p>the prompter dbus name. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>timeout_seconds</p></td>
<td class="parameter_description"><p>the number of seconds to wait to access the prompt, or -1</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>cancellable</p></td>
<td class="parameter_description"><p>optional cancellation object</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
<td class="parameter_description"><p>location to place error on failure</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gcr-system-prompt-open-for-prompter.returns"></a><h4>Returns</h4>
<p>the prompt, or <code class="literal">NULL</code> if
prompt could not be opened. </p>
<p><span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Override the parsed C type with given type."><span class="acronym">type</span></acronym> Gcr.SystemPrompt]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gcr-system-prompt-open-for-prompter-async"></a><h3>gcr_system_prompt_open_for_prompter_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gcr_system_prompt_open_for_prompter_async
                               (<em class="parameter"><code>const <span class="type">gchar</span> *prompter_name</code></em>,
                                <em class="parameter"><code><span class="type">gint</span> timeout_seconds</code></em>,
                                <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
                                <em class="parameter"><code><span class="type">GAsyncReadyCallback</span> callback</code></em>,
                                <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Opens a system prompt asynchronously. If prompter_name is <code class="literal">NULL</code>, then the
default system prompter is used.</p>
<p>Most system prompters only allow showing one prompt at a time, and if
another prompt is shown then this method will block for up to
<em class="parameter"><code>timeout_seconds</code></em>
 seconds. If <em class="parameter"><code>timeout_seconds</code></em>
 is equal to -1, then this
will block indefinitely until the prompt can be opened. If <em class="parameter"><code>timeout_seconds</code></em>

expires, then this operation will fail with a <a class="link" href="GcrSystemPrompt.html#GCR-SYSTEM-PROMPT-IN-PROGRESS:CAPS"><code class="literal">GCR_SYSTEM_PROMPT_IN_PROGRESS</code></a>
error.</p>
<div class="refsect3">
<a name="gcr-system-prompt-open-for-prompter-async.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>prompter_name</p></td>
<td class="parameter_description"><p>the prompter dbus name. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>timeout_seconds</p></td>
<td class="parameter_description"><p>the number of seconds to wait to access the prompt, or -1</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>cancellable</p></td>
<td class="parameter_description"><p>optional cancellation object</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>callback</p></td>
<td class="parameter_description"><p>called when the operation completes</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>data to pass the callback</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gcr-system-prompt-get-secret-exchange"></a><h3>gcr_system_prompt_get_secret_exchange ()</h3>
<pre class="programlisting"><a class="link" href="GcrSecretExchange.html" title="GcrSecretExchange"><span class="returnvalue">GcrSecretExchange</span></a> *
gcr_system_prompt_get_secret_exchange (<em class="parameter"><code><a class="link" href="GcrSystemPrompt.html" title="GcrSystemPrompt"><span class="type">GcrSystemPrompt</span></a> *self</code></em>);</pre>
<p>Get the current <a class="link" href="GcrSecretExchange.html" title="GcrSecretExchange"><span class="type">GcrSecretExchange</span></a> used to transfer secrets in this prompt.</p>
<div class="refsect3">
<a name="gcr-system-prompt-get-secret-exchange.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>self</p></td>
<td class="parameter_description"><p>a prompter</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gcr-system-prompt-get-secret-exchange.returns"></a><h4>Returns</h4>
<p>the secret exchange. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gcr-system-prompt-close"></a><h3>gcr_system_prompt_close ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gcr_system_prompt_close (<em class="parameter"><code><a class="link" href="GcrSystemPrompt.html" title="GcrSystemPrompt"><span class="type">GcrSystemPrompt</span></a> *self</code></em>,
                         <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
                         <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<p>Close this prompt. After calling this function, no further prompts will
succeed on this object. The prompt object is not unreferenced by this
function, and you must unreference it once done.</p>
<p>This call may block, use the <a class="link" href="GcrSystemPrompt.html#gcr-system-prompt-close-async" title="gcr_system_prompt_close_async ()"><code class="function">gcr_system_prompt_close_async()</code></a> to perform
this action indefinitely.</p>
<p>Whether or not this function returns <code class="literal">TRUE</code>, the system prompt object is
still closed and may not be further used.</p>
<div class="refsect3">
<a name="gcr-system-prompt-close.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>self</p></td>
<td class="parameter_description"><p>the prompt</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>cancellable</p></td>
<td class="parameter_description"><p>an optional cancellation object</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
<td class="parameter_description"><p>location to place an error on failure</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gcr-system-prompt-close.returns"></a><h4>Returns</h4>
<p> whether close was cleanly completed</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gcr-system-prompt-close-async"></a><h3>gcr_system_prompt_close_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gcr_system_prompt_close_async (<em class="parameter"><code><a class="link" href="GcrSystemPrompt.html" title="GcrSystemPrompt"><span class="type">GcrSystemPrompt</span></a> *self</code></em>,
                               <em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
                               <em class="parameter"><code><span class="type">GAsyncReadyCallback</span> callback</code></em>,
                               <em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
<p>Close this prompt asynchronously. After calling this function, no further
methods may be called on this object. The prompt object is not unreferenced
by this function, and you must unreference it once done.</p>
<p>This call returns immediately and completes asynchronously.</p>
<div class="refsect3">
<a name="gcr-system-prompt-close-async.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>self</p></td>
<td class="parameter_description"><p>the prompt</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>cancellable</p></td>
<td class="parameter_description"><p>an optional cancellation object</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>callback</p></td>
<td class="parameter_description"><p>called when the operation completes</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>user_data</p></td>
<td class="parameter_description"><p>data to pass to the callback</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gcr-system-prompt-close-finish"></a><h3>gcr_system_prompt_close_finish ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gcr_system_prompt_close_finish (<em class="parameter"><code><a class="link" href="GcrSystemPrompt.html" title="GcrSystemPrompt"><span class="type">GcrSystemPrompt</span></a> *self</code></em>,
                                <em class="parameter"><code><span class="type">GAsyncResult</span> *result</code></em>,
                                <em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<p>Complete operation to close this prompt.</p>
<p>Whether or not this function returns <code class="literal">TRUE</code>, the system prompt object is
still closed and may not be further used.</p>
<div class="refsect3">
<a name="gcr-system-prompt-close-finish.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>self</p></td>
<td class="parameter_description"><p>the prompt</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>result</p></td>
<td class="parameter_description"><p>asynchronous operation result</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>error</p></td>
<td class="parameter_description"><p>location to place an error on failure</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gcr-system-prompt-close-finish.returns"></a><h4>Returns</h4>
<p> whether close was cleanly completed</p>
</div>
</div>
</div>
<div class="refsect1">
<a name="GcrSystemPrompt.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="GcrSystemPrompt-struct"></a><h3>struct GcrSystemPrompt</h3>
<pre class="programlisting">struct GcrSystemPrompt;</pre>
<p>A <a class="link" href="GcrPrompt.html" title="GcrPrompt"><span class="type">GcrPrompt</span></a> which shows a system prompt. This is usually a system modal
dialog.</p>
</div>
<hr>
<div class="refsect2">
<a name="GcrSystemPromptClass"></a><h3>struct GcrSystemPromptClass</h3>
<pre class="programlisting">struct GcrSystemPromptClass {
	GObjectClass parent_class;
};
</pre>
<p>The class for <a class="link" href="GcrSystemPrompt.html" title="GcrSystemPrompt"><span class="type">GcrSystemPrompt</span></a>.</p>
<div class="refsect3">
<a name="GcrSystemPromptClass.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody></tbody>
</table></div>
</div>
</div>
<hr>
<div class="refsect2">
<a name="GCR-SYSTEM-PROMPT-ERROR:CAPS"></a><h3>GCR_SYSTEM_PROMPT_ERROR</h3>
<pre class="programlisting">#define GCR_SYSTEM_PROMPT_ERROR              (gcr_system_prompt_error_get_domain ())
</pre>
<p>The domain for errors returned from GcrSystemPrompt methods.</p>
</div>
<hr>
<div class="refsect2">
<a name="GcrSystemPromptError"></a><h3>enum GcrSystemPromptError</h3>
<p>No error returned by the <a class="link" href="GcrSystemPrompt.html" title="GcrSystemPrompt"><span class="type">GcrSystemPrompt</span></a> is suitable for display or
to the user.</p>
<p>If the system prompter can only show one prompt at a time, and there is
already a prompt being displayed, and the timeout waiting to open the
prompt expires, then <a class="link" href="GcrSystemPrompt.html#GCR-SYSTEM-PROMPT-IN-PROGRESS:CAPS"><code class="literal">GCR_SYSTEM_PROMPT_IN_PROGRESS</code></a> is returned.</p>
<div class="refsect3">
<a name="GcrSystemPromptError.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="enum_members_name">
<col class="enum_members_description">
<col width="200px" class="enum_members_annotations">
</colgroup>
<tbody><tr>
<td class="enum_member_name"><p><a name="GCR-SYSTEM-PROMPT-IN-PROGRESS:CAPS"></a>GCR_SYSTEM_PROMPT_IN_PROGRESS</p></td>
<td class="enum_member_description">
<p>another prompt is already in progress</p>
</td>
<td class="enum_member_annotations"> </td>
</tr></tbody>
</table></div>
</div>
</div>
</div>
<div class="refsect1">
<a name="GcrSystemPrompt.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GcrSystemPrompt--bus-name"></a><h3>The <code class="literal">“bus-name”</code> property</h3>
<pre class="programlisting">  “bus-name”                 <span class="type">gchar</span> *</pre>
<p>The DBus bus name of the prompter to use for prompting, or <code class="literal">NULL</code>
for the default prompter.</p>
<p>Flags: Read / Write / Construct Only</p>
<p>Default value: NULL</p>
</div>
<hr>
<div class="refsect2">
<a name="GcrSystemPrompt--secret-exchange"></a><h3>The <code class="literal">“secret-exchange”</code> property</h3>
<pre class="programlisting">  “secret-exchange”          <a class="link" href="GcrSecretExchange.html" title="GcrSecretExchange"><span class="type">GcrSecretExchange</span></a> *</pre>
<p>The <a class="link" href="GcrSecretExchange.html" title="GcrSecretExchange"><span class="type">GcrSecretExchange</span></a> to use when transferring passwords. A default
secret exchange will be used if this is not set.</p>
<p>Flags: Read / Write</p>
</div>
<hr>
<div class="refsect2">
<a name="GcrSystemPrompt--timeout-seconds"></a><h3>The <code class="literal">“timeout-seconds”</code> property</h3>
<pre class="programlisting">  “timeout-seconds”          <span class="type">gint</span></pre>
<p>The timeout in seconds to wait when opening the prompt.</p>
<p>Flags: Write / Construct Only</p>
<p>Allowed values: &gt;= -1</p>
<p>Default value: -1</p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.27.1</div>
</body>
</html>