/usr/share/gtk-doc/html/libanjuta/libanjuta-AnjutaCommand.html is in libanjuta-dev 2:3.4.0-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>AnjutaCommand</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="Anjuta Developers Reference Manual">
<link rel="up" href="libanjuta-api.html" title="libanjuta API">
<link rel="prev" href="libanjuta-Debugging.html" title="Debugging">
<link rel="next" href="libanjuta-AnjutaSyncCommand.html" title="AnjutaSyncCommand">
<meta name="generator" content="GTK-Doc V1.18 (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="2">
<tr valign="middle">
<td><a accesskey="p" href="libanjuta-Debugging.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="libanjuta-api.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">Anjuta Developers Reference Manual</th>
<td><a accesskey="n" href="libanjuta-AnjutaSyncCommand.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#libanjuta-AnjutaCommand.synopsis" class="shortcut">Top</a>
|
<a href="#libanjuta-AnjutaCommand.description" class="shortcut">Description</a>
</td></tr>
</table>
<div class="refentry">
<a name="libanjuta-AnjutaCommand"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="libanjuta-AnjutaCommand.top_of_page"></a>AnjutaCommand</span></h2>
<p>AnjutaCommand — System for creating objects that provide a standard
interface to external components (libraries, processes,
etc.)</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="libanjuta-AnjutaCommand.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">struct <a class="link" href="libanjuta-AnjutaCommand.html#AnjutaCommandClass" title="struct AnjutaCommandClass">AnjutaCommandClass</a>;
<a class="link" href="libanjuta-AnjutaCommand.html#AnjutaCommandPriv" title="AnjutaCommandPriv">AnjutaCommandPriv</a>;
<span class="returnvalue">void</span> <a class="link" href="libanjuta-AnjutaCommand.html#anjuta-command-cancel" title="anjuta_command_cancel ()">anjuta_command_cancel</a> (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * <a class="link" href="libanjuta-AnjutaCommand.html#anjuta-command-get-error-message" title="anjuta_command_get_error_message ()">anjuta_command_get_error_message</a> (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libanjuta-AnjutaCommand.html#anjuta-command-is-running" title="anjuta_command_is_running ()">anjuta_command_is_running</a> (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);
<span class="returnvalue">void</span> <a class="link" href="libanjuta-AnjutaCommand.html#anjuta-command-notify-complete" title="anjuta_command_notify_complete ()">anjuta_command_notify_complete</a> (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> return_code</code></em>);
<span class="returnvalue">void</span> <a class="link" href="libanjuta-AnjutaCommand.html#anjuta-command-notify-data-arrived" title="anjuta_command_notify_data_arrived ()">anjuta_command_notify_data_arrived</a> (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);
<span class="returnvalue">void</span> <a class="link" href="libanjuta-AnjutaCommand.html#anjuta-command-notify-progress" title="anjuta_command_notify_progress ()">anjuta_command_notify_progress</a> (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> progress</code></em>);
<span class="returnvalue">void</span> <a class="link" href="libanjuta-AnjutaCommand.html#anjuta-command-set-error-message" title="anjuta_command_set_error_message ()">anjuta_command_set_error_message</a> (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>,
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *error_message</code></em>);
<span class="returnvalue">void</span> <a class="link" href="libanjuta-AnjutaCommand.html#anjuta-command-start" title="anjuta_command_start ()">anjuta_command_start</a> (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="libanjuta-AnjutaCommand.html#anjuta-command-start-automatic-monitor" title="anjuta_command_start_automatic_monitor ()">anjuta_command_start_automatic_monitor</a>
(<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);
<span class="returnvalue">void</span> <a class="link" href="libanjuta-AnjutaCommand.html#anjuta-command-stop-automatic-monitor" title="anjuta_command_stop_automatic_monitor ()">anjuta_command_stop_automatic_monitor</a>
(<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="libanjuta-AnjutaCommand.description"></a><h2>Description</h2>
<p>
<span class="type">AnjutaCommand</span> is the base class for objects that are designed to provide
a layer of abstraction between UI code and some other component, like a
library or child process. AnjutaCommand provides a simple and consistent
interface for plugins to interact with these components without needing
to concern themselves with the exact details of how these components work.
</p>
<p>
To create command objects, plugins derive them from an <span class="type">AnjutaCommand</span>
subclass like <span class="type">AnjutaAsyncCommand</span>, which runs commands in another thread or
<span class="type">AnjutaSyncCommand</span>, which runs commands synchronously.
</p>
<p>
These classes determine how ::run is called and how signals are emitted.
::run is responsible for actually doing the work of the command. It is the
responsiblity of the command object that does a certain task to implement
::run to do its job. Everything else is normally implemented by its parent
classes at this point
</p>
<p>
For an example of how to use <span class="type">AnjutaCommand</span>, see the Subversion and Git
plugins.
</p>
</div>
<div class="refsect1">
<a name="libanjuta-AnjutaCommand.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="AnjutaCommandClass"></a><h3>struct AnjutaCommandClass</h3>
<pre class="programlisting">struct AnjutaCommandClass {
GObjectClass parent_class;
/* Virtual Methods */
guint (*run) (AnjutaCommand *self);
void (*start) (AnjutaCommand *self);
void (*cancel) (AnjutaCommand *self);
void (*notify_data_arrived) (AnjutaCommand *self);
void (*notify_complete) (AnjutaCommand *self, guint return_code);
void (*notify_progress) (AnjutaCommand *self, gfloat progress);
void (*set_error_message) (AnjutaCommand *self, const gchar *error_message);
gchar * (*get_error_message) (AnjutaCommand *self);
gboolean (*start_automatic_monitor) (AnjutaCommand *self);
void (*stop_automatic_monitor) (AnjutaCommand *self);
/* Signals */
void (*data_arrived) (AnjutaCommand *command);
void (*command_started) (AnjutaCommand *command);
void (*command_finished) (AnjutaCommand *command, guint return_code);
void (*progress) (AnjutaCommand *command, gfloat progress);
};
</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="AnjutaCommandPriv"></a><h3>AnjutaCommandPriv</h3>
<pre class="programlisting">typedef struct _AnjutaCommandPriv AnjutaCommandPriv;</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="anjuta-command-cancel"></a><h3>anjuta_command_cancel ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> anjuta_command_cancel (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);</pre>
<p>
Cancels a running command.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
<td>Command object.</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="anjuta-command-get-error-message"></a><h3>anjuta_command_get_error_message ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> * anjuta_command_get_error_message (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);</pre>
<p>
Get the error message from the command, if there is one. This method is
normally used from a ::command-finished handler to report errors to the user
when a command finishes.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
<td>Command object.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>Error message string that must be freed when no longer needed.
If no error is set, return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="anjuta-command-is-running"></a><h3>anjuta_command_is_running ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> anjuta_command_is_running (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);</pre>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
<td>Command object.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the command is currently running; <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="anjuta-command-notify-complete"></a><h3>anjuta_command_notify_complete ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> anjuta_command_notify_complete (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#guint"><span class="type">guint</span></a> return_code</code></em>);</pre>
<p>
Used by base classes derived from <span class="type">AnjutaCommand</span> to emit the
::command-finished signal. This method should not be used by client code or
<span class="type">AnjutaCommand</span> objects that are not base classes.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
<td>Command object</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>return_code</code></em> :</span></p></td>
<td>The returned code that is passed to the notify callback</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="anjuta-command-notify-data-arrived"></a><h3>anjuta_command_notify_data_arrived ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> anjuta_command_notify_data_arrived (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);</pre>
<p>
Used by base classes derived from <span class="type">AnjutaCommand</span> to emit the ::data-arrived
signal. This method should be used by both base command classes and
non-base classes as appropriate.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
<td>Command object.</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="anjuta-command-notify-progress"></a><h3>anjuta_command_notify_progress ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> anjuta_command_notify_progress (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>,
<em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gfloat"><span class="type">gfloat</span></a> progress</code></em>);</pre>
<p>
Emits the ::progress signal. Can be used by both base classes and
commands as needed.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
<td>Command object.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>progress</code></em> :</span></p></td>
<td>The of the command that is passed to the notify callback</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="anjuta-command-set-error-message"></a><h3>anjuta_command_set_error_message ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> anjuta_command_set_error_message (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>,
<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *error_message</code></em>);</pre>
<p>
Command objects use this to set error messages when they encounter some kind
of failure.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
<td>Command object.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error_message</code></em> :</span></p></td>
<td>Error message.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="anjuta-command-start"></a><h3>anjuta_command_start ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> anjuta_command_start (<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);</pre>
<p>
Starts a command. Client code can handle data from the command by connecting
to the ::data-arrived signal.
</p>
<p>
<span class="type">AnjutaCommand</span> subclasses should override this method to determine how they
call ::run, which actually does the command's legwork.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
<td>Command object to start</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="anjuta-command-start-automatic-monitor"></a><h3>anjuta_command_start_automatic_monitor ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> anjuta_command_start_automatic_monitor
(<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);</pre>
<p>
Sets up any monitoring needed for commands that should start themselves
automatically in response to some event.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
<td>Command object.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if automatic starting is supported by the command and
no errors were encountered; <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if automatic starting is unsupported or on
error.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="anjuta-command-stop-automatic-monitor"></a><h3>anjuta_command_stop_automatic_monitor ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> anjuta_command_stop_automatic_monitor
(<em class="parameter"><code><span class="type">AnjutaCommand</span> *self</code></em>);</pre>
<p>
Stops automatic monitoring for self executing commands. For commands that
do not support self-starting, this function does nothing.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>self</code></em> :</span></p></td>
<td>Command object.</td>
</tr></tbody>
</table></div>
</div>
</div>
<div class="refsect1">
<a name="libanjuta-AnjutaCommand.see-also"></a><h2>See Also</h2>
<span class="type">AnjutaAsyncCommand</span>, <span class="type">AnjutaSyncCommand</span><em class="parameter"><code>include</code></em> libanjuta/anjuta-command.h
</div>
</div>
<div class="footer">
<hr>
Generated by GTK-Doc V1.18</div>
</body>
</html>
|