Sophie

Sophie

distrib > * > cooker > x86_64 > by-pkgid > 5fb1c39f9f9130a3cc01e8b1ffa5c0f8 > files > 7809

libreoffice-devel-3.5.4-4.x86_64.rpm

<html>
<head>
<title>Interface XWizard</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../idl.css">
</head>
<body>
<div id="adc-idlref">

<a name="_top_"> </a><table class="navimain" border="0" cellpadding="3">
<tr>
<td class="navimain"><a href="../../module-ix.html" class="navimain">Overview</a></td>
<td class="navimain"><a href="module-ix.html" class="navimain">Module</a></td>
<td class="navimain"><a href="XWizard-xref.html" class="navimain">Use</a></td>
<td class="navimainnone">Devguide</td>
<td class="navimain"><a href="../../../../../index-files/index-1.html" class="navimain">Index</a></td>
</tr>
</table>
<table class="navisub" border="0" cellpadding="0">
<tr>
<td class="navisub"><a href="#MethodsSummary" class="navisub">Methods' Summary</a></td>
<td class="navisub"><a href="#AttributesSummary" class="navisub">Attributes' Summary</a></td>
<td class="navisub"><a href="#MethodsDetails" class="navisub">Methods' Details</a></td>
<td class="navisub"><a href="#AttributesDetails" class="navisub">Attributes' Details</a></td>
</tr>
</table>
<hr>
<table border="0" width="100%" cellpadding="5" cellspacing="3" class="title-table" style="margin-bottom:6pt;">
<tr>
<td><p class="namechain"><a href="../../../../../module-ix.html" class="namechain">::</a> <a href="../../../../module-ix.html" class="namechain">com</a> :: <a href="../../../module-ix.html" class="namechain">sun</a> :: <a href="../../module-ix.html" class="namechain">star</a> :: <a href="../module-ix.html" class="namechain">ui</a> :: <a href="module-ix.html" class="namechain">dialogs</a> :: </p>
</td>
</tr>
<tr>
<td class="title"><table class="title-table" width="99%">
<tr>
<td width="25%" class="title2">unpublished </td>
<td width="50%" class="title">interface XWizard</td>
<td width="*"/></tr>
</table>
</td>
</tr>
<tr>
<td><dl>
<dt><b>Base Interfaces</b></dt>
<dd><pre style="font-family:monospace;"><strong>XWizard</strong>
&#x2517 <a href="XExecutableDialog.html">XExecutableDialog</a>

</pre></dd>
<dd><a name/><table border="1" width="100%" cellpadding="5" cellspacing="0" class="crosstitle">
<tr>
<td class="imsum_left"><a href="XExecutableDialog.html">XExecutableDialog</a></td>
<td class="imsum_right"><dl>
<dt>(referenced interface's summary:)</dt>
<dd>Specifies an interface for an executable dialog.
</dd>
</dl>
</td>
</tr>
</table>
</dd>
</dl>
</td>
</tr>
<tr>
<td><dl>
<dt><b>Usage Restrictions</b></dt>
<dd><i>not published</i></dd>
<dt><b>Description</b></dt>
<dd>is the main interface implemented by the <a href="Wizard.html">Wizard</a> services.

 </dd>
<dd><p>A wizard is a dialog which guides the user through a number of tasks (usually input of data), which the user can
 accomplish either sequentially or out-of-order. For this, a wizard is comprised of a number of tab pages,
 each page representing a single <em>step</em>.</p>

 <p>Sequential navigation in a wizard is done via a <em>Next</em> and a <em>Back</em> button. Non-sequential navigation
 is done via a roadmap, which is displayed on the left hand side of the wizard dialog, lists all available
 steps, and allows jumping to a certain step (where the creator of the wizard can restrict the available steps
 depending on the current situation in the wizard, see below).</p>

 <p>A sequence of steps in a wizard dialog is called a <em>path</em>. A given wizard can support one or multiple paths,
 which are declared at the time of construction of the wizard.</p>

 <p>In the simplest case, where the wizard supports only one path, all available steps are displayed in the roadmap,
 and the user can simply travel through them as desired.</p>

 <p>If the wizard is more complex, and supports multiple paths, things become more complicated. In a given situation
 of the wizard, where the user is at step <em>k</em> of the current path, the <em>potential</em> or <em>conflicting</em>
 paths are those whose first <em>k</em> steps are the same as in the current path. Obviously, there's at least one
 potential path in every situation: the current one. If there is more than one, then the future steps in the dialog
 are not finally decided. In such a case, the roadmap will display future steps up to the point where the potential
 paths diverge, and then an item <quot><code>...</code></quot> indicating that the order of steps is undecided.</p>

 <p>An <a href="XWizardController.html">XWizardController</a> can declare a certain path as active path by calling the <a href="XWizard.html#activatePath">activatePath</a>
 method. Usually, this is done depending on user input. For instance, your wizard could have radio buttons on the
 first page which effectively decide about which path to take in the wizard.</p>

 <p>Single steps in the wizard can be freely enabled and disabled, using the <a href="XWizard.html#enablePage">enablePage</a> method.
 Disabled pages are skipped during sequential traveling, and not selectable in the roadmap.</p>

 <p>The state of the <em>Next</em> button in the dialog will be automatically maintained in most situations,
 depending on the results of calls to the <a href="XWizardController.html">XWizardController</a>::<a href="XWizardController.html#canAdvance">canAdvance</a> and <a href="XWizardPage.html">XWizardPage</a>::<a href="XWizardPage.html#canAdvance">canAdvance</a>
 methods. More sophisticated wizard logic, however, will need manual calls to the <a href="XWizard.html#enableButton">enableButton</a> method.
 Also, the <em>Finish</em> button needs to be maintained by the wizard's controller, too, as it cannot be decided
 generically in which situations it should be enabled or disabled.</p>

 </dd>
<dt><b>See also</b></dt>
<dd><a href="XWizardController.html">XWizardController</a>, <a href="XWizardPage.html">XWizardPage</a></dd>
</dl>
</td>
</tr>
</table>
<hr>
<a name="MethodsSummary"/><table border="1" width="100%" cellpadding="5" cellspacing="0" class="subtitle">
<tr>
<td class="subtitle" colspan="2">Methods' Summary</td>
</tr>
<tr>
<td class="imsum_left"><a href="#getCurrentPage">getCurrentPage</a></td>
<td class="imsum_right">provides access to the current page of the wizard
 &nbsp;</td>
</tr>
<tr>
<td class="imsum_left"><a href="#enableButton">enableButton</a></td>
<td class="imsum_right">enables or disables a certain button in the wizard

 &nbsp;</td>
</tr>
<tr>
<td class="imsum_left"><a href="#setDefaultButton">setDefaultButton</a></td>
<td class="imsum_right">sets a button in the wizard as default button

 &nbsp;</td>
</tr>
<tr>
<td class="imsum_left"><a href="#travelNext">travelNext</a></td>
<td class="imsum_right">travels to the next page, if possible

 &nbsp;</td>
</tr>
<tr>
<td class="imsum_left"><a href="#travelPrevious">travelPrevious</a></td>
<td class="imsum_right">travels to the next page, if possible

 &nbsp;</td>
</tr>
<tr>
<td class="imsum_left"><a href="#enablePage">enablePage</a></td>
<td class="imsum_right">enables or disables the given page

 &nbsp;</td>
</tr>
<tr>
<td class="imsum_left"><a href="#updateTravelUI">updateTravelUI</a></td>
<td class="imsum_right">updates the wizard elements which are related to traveling.

 &nbsp;</td>
</tr>
<tr>
<td class="imsum_left"><a href="#advanceTo">advanceTo</a></td>
<td class="imsum_right">advances to the given page, if possible.

 &nbsp;</td>
</tr>
<tr>
<td class="imsum_left"><a href="#goBackTo">goBackTo</a></td>
<td class="imsum_right">goes back to the given page, if possible.

 &nbsp;</td>
</tr>
<tr>
<td class="imsum_left"><a href="#activatePath">activatePath</a></td>
<td class="imsum_right">activates a path

 &nbsp;</td>
</tr>
</table>
<a name="AttributesSummary"/><table border="1" width="100%" cellpadding="5" cellspacing="0" class="subtitle">
<tr>
<td class="subtitle" colspan="2">Attributes' Summary</td>
</tr>
<tr>
<td class="imsum_left"><a href="#HelpURL">HelpURL</a></td>
<td class="imsum_right">is the help URL of the wizard's main window.
 &nbsp;</td>
</tr>
<tr>
<td class="imsum_left"><a href="#DialogWindow">DialogWindow</a></td>
<td class="imsum_right">&nbsp;</td>
</tr>
</table>
<a name="MethodsDetails"/><table border="1" width="100%" cellpadding="5" cellspacing="0" class="subtitle">
<tr>
<td class="subtitle">Methods' Details</td>
</tr>
<tr>
<td class="imdetail"><a name="getCurrentPage" class="membertitle">getCurrentPage</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center">
<tr>
<td><table class="table-in-method" border="0">
<tr>
<td valign="top" colspan="3"><a href="XWizardPage.html">XWizardPage</a></td>
</tr>
<tr>
<td valign="top"><b>getCurrentPage</b>();</td>
</tr>
</table>
<hr>
<dl>
<dt><b>Description</b></dt>
<dd>provides access to the current page of the wizard
 </dd>
</dl>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="imdetail"><a name="enableButton" class="membertitle">enableButton</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center">
<tr>
<td><table class="table-in-method" border="0">
<tr>
<td valign="top" colspan="3">void</td>
</tr>
<tr>
<td valign="top"><b>enableButton</b>(</td>
<td valign="top">[in] short</td>
<td valign="bottom">&nbsp;WizardButton,</td>
</tr>
<tr>
<td/><td valign="top">[in] boolean</td>
<td valign="bottom">&nbsp;Enable );</td>
</tr>
</table>
<hr>
<dl>
<dt><b>Description</b></dt>
<dd>enables or disables a certain button in the wizard

 </dd>
<dd><p>Normally, you will want to use this method for the <em>Finish</em> button only: The <em>Next</em>
 and <em>Back</em> buttons are usually maintained automatically, the <em>Help</em> and <em>Cancel</em>
 buttons are unlikely to ever being disabled.</p>

 </dd>
<dt><b>Parameter WizardButton</b></dt>
<dd>denotes the button to enable or disable, as one of the <a href="WizardButton.html">WizardButton</a> constants. Must not be
 <a href="WizardButton.html">WizardButton</a>::<a href="WizardButton.html#NONE">NONE</a>.
 </dd>
<dt><b>Parameter Enable</b></dt>
<dd>specifies whether the button should be enabled (<b>true</b>) or disabled (<b>false</b>)
 </dd>
</dl>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="imdetail"><a name="setDefaultButton" class="membertitle">setDefaultButton</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center">
<tr>
<td><table class="table-in-method" border="0">
<tr>
<td valign="top" colspan="3">void</td>
</tr>
<tr>
<td valign="top"><b>setDefaultButton</b>(</td>
<td valign="top">[in] short</td>
<td valign="bottom">&nbsp;WizardButton );</td>
</tr>
</table>
<hr>
<dl>
<dt><b>Description</b></dt>
<dd>sets a button in the wizard as default button

 </dd>
<dd><p>In general, the default button in a wizard is the one which is activated when the user presses
 the <em>return</em> key while the focus is in a control which does not handle this key itself (such as
 ordinary input controls).</p>

 <p>You can use this method, for instance, to make the <em>Next</em> button the default button on all pages
 except the last one, where <em>Finish</em> should be defaulted.</p>
 </dd>
</dl>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="imdetail"><a name="travelNext" class="membertitle">travelNext</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center">
<tr>
<td><table class="table-in-method" border="0">
<tr>
<td valign="top" colspan="3">boolean</td>
</tr>
<tr>
<td valign="top"><b>travelNext</b>();</td>
</tr>
</table>
<hr>
<dl>
<dt><b>Description</b></dt>
<dd>travels to the next page, if possible

 </dd>
<dd><p>Calling this method is equivalent to the user pressing the <em>Next</em> button in the wizard. Consequently,
 the method will fail if in the current state of the wizard, it is not allowed to advance to a next page.</p>
 </dd>
</dl>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="imdetail"><a name="travelPrevious" class="membertitle">travelPrevious</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center">
<tr>
<td><table class="table-in-method" border="0">
<tr>
<td valign="top" colspan="3">boolean</td>
</tr>
<tr>
<td valign="top"><b>travelPrevious</b>();</td>
</tr>
</table>
<hr>
<dl>
<dt><b>Description</b></dt>
<dd>travels to the next page, if possible

 </dd>
<dd><p>Calling this method is equivalent to the user pressing the <em>Back</em> button in the wizard.</p>
 </dd>
</dl>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="imdetail"><a name="enablePage" class="membertitle">enablePage</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center">
<tr>
<td><table class="table-in-method" border="0">
<tr>
<td valign="top" colspan="3">void</td>
</tr>
<tr>
<td valign="top"><b>enablePage</b>(</td>
<td valign="top">[in] short</td>
<td valign="bottom">&nbsp;PageID,</td>
</tr>
<tr>
<td/><td valign="top">[in] boolean</td>
<td valign="bottom">&nbsp;Enable )</td>
</tr>
<tr>
<td valign="top" align="right">raises( </td>
<td valign="top" colspan="2">::com::sun::star::<a href="../../container/module-ix.html">container</a>::<a href="../../container/NoSuchElementException.html">NoSuchElementException</a>,<br>
::com::sun::star::<a href="../../util/module-ix.html">util</a>::<a href="../../util/InvalidStateException.html">InvalidStateException</a> );</td>
</tr>
</table>
<hr>
<dl>
<dt><b>Description</b></dt>
<dd>enables or disables the given page

 </dd>
<dd><p>You can use this method when not all pages of your wizard are necessarily needed in all cases. For instance,
 assume that your first wizard page contains a check box, which the user can check to enter additional data.
 If you place this data on the second page, then you will want to enable this second page if and only if the
 checkbox is checked.</p>

 <p>If a page is disabled, it can reached neither by clicking the respective item in the wizard's roadmap,
 nor by sequential traveling. Still, the page's item is displayed in the roadmap, though disabled.</p>

 </dd>
<dt><b>Throws</b></dt>
<dd>::com::sun::star::container::NoSuchElementException
 if there is no page with the given ID
 </dd>
<dt><b>Throws</b></dt>
<dd>::com::sun::star::util::InvalidStateException
 if the page shall be disabled, but is active currently.
 </dd>
</dl>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="imdetail"><a name="updateTravelUI" class="membertitle">updateTravelUI</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center">
<tr>
<td><table class="table-in-method" border="0">
<tr>
<td valign="top" colspan="3">void</td>
</tr>
<tr>
<td valign="top"><b>updateTravelUI</b>();</td>
</tr>
</table>
<hr>
<dl>
<dt><b>Description</b></dt>
<dd>updates the wizard elements which are related to traveling.

 </dd>
<dd><p>For instance, the <em>Next</em> button is disabled if the current page's <a href="XWizardPage.html">XWizardPage</a>::<a href="XWizardPage.html#canAdvance">canAdvance</a>
 method returns <b>false</b>.</p>

 <p>You usually call this method from within a wizard page whose state changed in a way that it affects the
 user's ability to reach other pages.</p>
 </dd>
</dl>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="imdetail"><a name="advanceTo" class="membertitle">advanceTo</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center">
<tr>
<td><table class="table-in-method" border="0">
<tr>
<td valign="top" colspan="3">boolean</td>
</tr>
<tr>
<td valign="top"><b>advanceTo</b>(</td>
<td valign="top">[in] short</td>
<td valign="bottom">&nbsp;PageId );</td>
</tr>
</table>
<hr>
<dl>
<dt><b>Description</b></dt>
<dd>advances to the given page, if possible.

 </dd>
<dd><p>Calling this method is equivalent to the user repeatedly pressing the <em>Next</em> button, until the
 given page is reached. Consequently, the method will fail if one of the intermediate pages does not allow
 advancing to the next page.</p>
 </dd>
</dl>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="imdetail"><a name="goBackTo" class="membertitle">goBackTo</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center">
<tr>
<td><table class="table-in-method" border="0">
<tr>
<td valign="top" colspan="3">boolean</td>
</tr>
<tr>
<td valign="top"><b>goBackTo</b>(</td>
<td valign="top">[in] short</td>
<td valign="bottom">&nbsp;PageId );</td>
</tr>
</table>
<hr>
<dl>
<dt><b>Description</b></dt>
<dd>goes back to the given page, if possible.

 </dd>
<dd><p>Calling this method is equivalent to the user repeatedly pressing the <em>Back</em> button, until the
 given page is reached.</p>
 </dd>
</dl>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="imdetail"><a name="activatePath" class="membertitle">activatePath</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-method" bgcolor="#ffffff" align="center">
<tr>
<td><table class="table-in-method" border="0">
<tr>
<td valign="top" colspan="3">void</td>
</tr>
<tr>
<td valign="top"><b>activatePath</b>(</td>
<td valign="top">[in] short</td>
<td valign="bottom">&nbsp;PathIndex,</td>
</tr>
<tr>
<td/><td valign="top">[in] boolean</td>
<td valign="bottom">&nbsp;Final )</td>
</tr>
<tr>
<td valign="top" align="right">raises( </td>
<td valign="top" colspan="2">::com::sun::star::<a href="../../container/module-ix.html">container</a>::<a href="../../container/NoSuchElementException.html">NoSuchElementException</a>,<br>
::com::sun::star::<a href="../../util/module-ix.html">util</a>::<a href="../../util/InvalidStateException.html">InvalidStateException</a> );</td>
</tr>
</table>
<hr>
<dl>
<dt><b>Description</b></dt>
<dd>activates a path

 </dd>
<dd><p>If the wizard has been created with multiple paths of control flow, then this method allows switching to
 another path.</p>

 <p>You can only activate a path which shares the first <code>k</code> pages with the path
 which is previously active (if any), where <code>k</code> is the index of the current page within the current
 path.</p>

 <p><strong>Example</strong>: Say you have paths, <code>(0,1,2,5)</code> and <code>(0,1,4,5)</code> (with
 the numbers denoting page IDs). This means that after page <code>1</code>, you either continue with page
 <code>2</code> or state <code>4</code>,and after this, you finish in state <code>5</code>.<br/>
 Now if the first path is active, and your current state is <code>1</code>, then you can easily switch to the
 second path, since both paths start with <code>(0,1)</code>.<br/>
 However, if your current state is <code>2</code>, then you can not switch to the second path anymore.</p>

 </dd>
<dt><b>Parameter PathIndex</b></dt>
<dd>the index of the path, as used in the <a href="Wizard.html">Wizard</a>::<a href="Wizard.html#createMultiplePathsWizard">createMultiplePathsWizard</a> constructor.
 </dd>
<dt><b>Parameter Final</b></dt>
<dd><p>If <b>true</b>, the path will be completely activated, even if it is a conflicting path (i.e. there is another
 path which shares the first <code>k</code> states with the to-be-activated path.)</p>

 <p>If <b>false</b>, then the new path is checked for conflicts with other paths. If such conflicts exists, the path
 is not completely activated, but only up to the point where it does <em>not</em> conflict.</p>

 <p>In this latter case, you need another activatePath method (usually triggered by the user doing some decisions
 and entering some data on the reachable pages) before the wizard can actually be finished.</p>

 <p>With the paths in the example above, if you activate the second path, then only steps <code>0</code> and
 <code>1</code> are activated, since they are common to both paths. Steps <code>2</code>, <code>4</code>,
 and <code>5</code> are not reachable, yet.</p>

 </dd>
<dt><b>Throws</b></dt>
<dd>::com::sun::star::container::NoSuchElementException
 if there is no path with the given index
 </dd>
<dt><b>Throws</b></dt>
<dd>::com::sun::star::util::InvalidStateException
 if the path cannot be activated in the current state of the wizard.
 </dd>
</dl>
</td>
</tr>
</table>
</td>
</tr>
</table>
<a name="AttributesDetails"/><table border="1" width="100%" cellpadding="5" cellspacing="0" class="subtitle">
<tr>
<td class="subtitle">Attributes' Details</td>
</tr>
<tr>
<td class="imdetail"><a name="HelpURL" class="membertitle">HelpURL</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-data" bgcolor="#ffffff" align="center">
<tr>
<td>string <b>HelpURL</b>;<hr>
<dl>
<dt><b>Description</b></dt>
<dd>is the help URL of the wizard's main window.
 </dd>
</dl>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td class="imdetail"><a name="DialogWindow" class="membertitle">DialogWindow</a><table border="0" width="96%" cellpadding="5" cellspacing="0" class="table-in-data" bgcolor="#ffffff" align="center">
<tr>
<td>[ readonly ] ::com::sun::star::<a href="../../awt/module-ix.html">awt</a>::<a href="../../awt/XWindow.html">XWindow</a> <b>DialogWindow</b>;<hr>
</td>
</tr>
</table>
</td>
</tr>
</table>
<a href="#_top_">Top of Page</a><hr size="3"><p class="copyright" align="center">Copyright &copy; 2000, 2012 LibreOffice contributors and/or their affiliates. All rights reserved.</p><p class="copyright" align="center">LibreOffice was created by The Document Foundation, based on OpenOffice.org, which is Copyright 2000, 2010 Oracle and/or its affiliates.</p><p class="copyright" align="center">The Document Foundation acknowledges all community members, please find more info <a href="http://www.libreoffice.org/about-us/credits/" target="_blank">at our website</a>.<p>&nbsp;</p><p class="copyright" align="center"><a href="http://www.libreoffice.org/privacy" target="_blank">Privacy Policy</a> | <a href="http://www.libreoffice.org/imprint" target="_blank">Impressum (Legal Info)</a> | Copyright information: The source code of LibreOffice is licensed under the GNU Lesser General Public License (<a href="http://www.libreoffice.org/download/license/" target="_blank">LGPLv3</a>). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our <a href="http://wiki.documentfoundation.org/TradeMark_Policy" target="_blank">trademark policy</a>.</p>

</div> <!-- id="adc-idlref" -->
</body>

</html>