twisted.web.woven.view.View.html   [plain text]


<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
          "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <title>twisted.web.woven.view.View</title>
  <link rel="stylesheet" href="epydoc.css" type="text/css"></link>
</head>
<body bgcolor="white" text="black" link="blue" vlink="#204080"
      alink="#204080">

<!-- =========== START OF NAVBAR =========== -->
<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0">
  <tr valign="center">
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="twisted.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="trees.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="indices.html">Index</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar" align="right" width="100%">
      <table border="0" cellpadding="0" cellspacing="0">
      <tr><th class="navbar" align="center">
        <p class="nomargin">
          <a class="navbar" target="_top" href="http://twistedmatrix.com/">Twisted&nbsp;1.3.0rc1</a>
      </p></th></tr></table>
    </th>
  </tr>
</table>
<table width="100%" cellpadding="0" cellspacing="0">
  <tr valign="top">
    <td width="100%">
      <font size="-1"><b class="breadcrumbs">
        <a href="twisted.html">Package&nbsp;twisted</a> ::
        <a href="twisted.web.html">Package&nbsp;web</a> ::
        <a href="twisted.web.woven.html">Package&nbsp;woven</a> ::
        <a href="twisted.web.woven.view.html">Module&nbsp;view</a> ::
        Class&nbsp;View
      </b></font></br>
    </td>
    <td><table cellpadding="0" cellspacing="0">
      <tr><td align="right"><font size="-2">[<a href="frames.html"target="_top">frames</a>&nbsp;|&nbsp;<a href="twisted.web.woven.view.View.html" target="_top">no&nbsp;frames</a>]</font></td></tr>
    </table></td>
</tr></table>

<!-- =========== START OF CLASS DESCRIPTION =========== -->
<h2 class="class">Class View</h2>

<dl><dt><b>Known Subclasses:</b></dt>
<dd>
    <a href="twisted.web.woven.view.LiveView.html"><code>LiveView</code></a>,
    <a href="twisted.web.woven.page.Page.html"><code>Page</code></a>,
    <a href="twisted.web.woven.tapestry.TapestryView.html"><code>TapestryView</code></a>,
    <a href="twisted.web.woven.widgets.Widget.html"><code>Widget</code></a></dd></dl>

<hr/>


<!-- =========== START OF METHOD SUMMARY =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
  <th colspan="2">Method Summary</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#__init__" class="summary-sig-name"><code>__init__</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>m</span>,
          <span class=summary-sig-arg>templateFile</span>,
          <span class=summary-sig-arg>templateDirectory</span>,
          <span class=summary-sig-arg>template</span>,
          <span class=summary-sig-arg>controller</span>,
          <span class=summary-sig-arg>doneCallback</span>,
          <span class=summary-sig-arg>modelStack</span>,
          <span class=summary-sig-arg>viewStack</span>,
          <span class=summary-sig-arg>controllerStack</span>)</span></code>
<br />
A view must be told what its model is, and may be told what its 
controller is, but can also look up its controller if none specified.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="__setitem__"></a><span class="summary-sig"><span class="summary-sig-name">__setitem__</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>key</span>,
          <span class=summary-sig-arg>value</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#dispatchResult" class="summary-sig-name"><code>dispatchResult</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>node</span>,
          <span class=summary-sig-arg>result</span>)</span></code>
<br />
Check a given result from handling a node and look up a NodeMutator 
adapter which will convert the result into a node and insert it into the 
DOM tree.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#dispatchResultCallback" class="summary-sig-name"><code>dispatchResultCallback</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>result</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>node</span>)</span></code>
<br />
Deal with a callback from a deferred, checking to see if it is ok to 
send the page yet or not.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#generate" class="summary-sig-name"><code>generate</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>node</span>)</span></code>
<br />
Allow a view to be used like a widget.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="getChild"></a><span class="summary-sig"><span class="summary-sig-name">getChild</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>path</span>,
          <span class=summary-sig-arg>request</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="getChildWithDefault"></a><span class="summary-sig"><span class="summary-sig-name">getChildWithDefault</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>path</span>,
          <span class=summary-sig-arg>request</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#getNodeController" class="summary-sig-name"><code>getNodeController</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>node</span>,
          <span class=summary-sig-arg>submodel</span>,
          <span class=summary-sig-arg>model</span>)</span></code>
<br />
Get a controller object to handle this node.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#getNodeModel" class="summary-sig-name"><code>getNodeModel</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>node</span>,
          <span class=summary-sig-arg>submodel</span>)</span></code>
<br />
Get the model object associated with this node.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="getNodeView"></a><span class="summary-sig"><span class="summary-sig-name">getNodeView</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>node</span>,
          <span class=summary-sig-arg>submodel</span>,
          <span class=summary-sig-arg>model</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#getSubview" class="summary-sig-name"><code>getSubview</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>node</span>,
          <span class=summary-sig-arg>model</span>,
          <span class=summary-sig-arg>viewName</span>)</span></code>
<br />
Get a sub-view from me.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#getTemplate" class="summary-sig-name"><code>getTemplate</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>)</span></code>
<br />
Override this if you want to have your subclass look up its template 
using a different method.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#handleControllerResults" class="summary-sig-name"><code>handleControllerResults</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>controllerResult</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>node</span>,
          <span class=summary-sig-arg>controller</span>,
          <span class=summary-sig-arg>view</span>)</span></code>
<br />
Handle a deferred from a controller.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#handleDocument" class="summary-sig-name"><code>handleDocument</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>document</span>)</span></code>
<br />
Handle the root node, and send the page if there are no outstanding 
callbacks when it returns.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="handleNewNode"></a><span class="summary-sig"><span class="summary-sig-name">handleNewNode</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>returnNode</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="handleNode"></a><span class="summary-sig"><span class="summary-sig-name">handleNode</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>node</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="handleOutstanding"></a><span class="summary-sig"><span class="summary-sig-name">handleOutstanding</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="importViewLibrary"></a><span class="summary-sig"><span class="summary-sig-name">importViewLibrary</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>namespace</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#lookupTemplate" class="summary-sig-name"><code>lookupTemplate</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>)</span></code>
<br />
Use acquisition to look up the template named by self.templateFile, 
located anywhere above this object in the heirarchy, and use it as the 
template.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#modelChanged" class="summary-sig-name"><code>modelChanged</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>changed</span>)</span></code>
<br />
Rerender this view, because our model has changed.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#recurseChildren" class="summary-sig-name"><code>recurseChildren</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>node</span>)</span></code>
<br />
If this node has children, handle them.</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="render"></a><span class="summary-sig"><span class="summary-sig-name">render</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>doneCallback</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="renderFailure"></a><span class="summary-sig"><span class="summary-sig-name">renderFailure</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>failure</span>,
          <span class=summary-sig-arg>request</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><span class="summary-sig"><a href="twisted.web.woven.view.View.html#sendPage" class="summary-sig-name"><code>sendPage</code></a>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>)</span></code>
<br />
Check to see if handlers recorded any errors before sending the 
page</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="setController"></a><span class="summary-sig"><span class="summary-sig-name">setController</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>controller</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="setNode"></a><span class="summary-sig"><span class="summary-sig-name">setNode</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>node</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="setSubmodel"></a><span class="summary-sig"><span class="summary-sig-name">setSubmodel</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>name</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="setSubviewFactory"></a><span class="summary-sig"><span class="summary-sig-name">setSubviewFactory</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>name</span>,
          <span class=summary-sig-arg>factory</span>,
          <span class=summary-sig-arg>setup</span>,
          <span class="summary-sig-vararg">*args</span>,
          <span class="summary-sig-kwarg">**kwargs</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="setUp"></a><span class="summary-sig"><span class="summary-sig-name">setUp</span>(<span class=summary-sig-arg>self</span>,
          <span class=summary-sig-arg>request</span>,
          <span class=summary-sig-arg>d</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="setupAllStacks"></a><span class="summary-sig"><span class="summary-sig-name">setupAllStacks</span>(<span class=summary-sig-arg>self</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="setupViewStack"></a><span class="summary-sig"><span class="summary-sig-name">setupViewStack</span>(<span class=summary-sig-arg>self</span>)</span></code>
</td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1">&nbsp;</font></td>
  <td><code><a name="unlinkViews"></a><span class="summary-sig"><span class="summary-sig-name">unlinkViews</span>(<span class=summary-sig-arg>self</span>)</span></code>
</td></tr>
</table><br />


<!-- =========== START OF CLASS VARIABLE SUMMARY =========== -->
<table class="summary" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="summary">
  <th colspan="2">Class Variable Summary</th></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>tuple</code></font></td>
<td><b><a href="twisted.web.woven.view.View.html#__implements__"><code>__implements__</code></a></b> = <span title="(&lt;class twisted.web.resource.IResource at 0x8450e44&gt;, &lt;class twisted.web.woven.interfaces.IView at 0x85936d4&gt;)"><code>(&lt;class&nbsp;twisted.web.resource.IResource&nbsp;<span class="variable-ellipsis">...</span></code>
</span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>NoneType</code></font></td>
<td><b><a href="twisted.web.woven.view.View.html#doneCallback"><code>doneCallback</code></a></b> = <span title="None">None&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>int</code></font></td>
<td><b><a href="twisted.web.woven.view.View.html#isLeaf"><code>isLeaf</code></a></b> = <span title="1">1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>int</code></font></td>
<td><b><a href="twisted.web.woven.view.View.html#livePage"><code>livePage</code></a></b> = <span title="0">0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>int</code></font></td>
<td><b><a href="twisted.web.woven.view.View.html#setupStacks"><code>setupStacks</code></a></b> = <span title="1">1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>str</code></font></td>
<td><b><a href="twisted.web.woven.view.View.html#template"><code>template</code></a></b> = <span title="''"><code><span class="variable-quote">'</span><span class="variable-quote">'</span>                                            </code>
</span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>str</code></font></td>
<td><b><a href="twisted.web.woven.view.View.html#templateDirectory"><code>templateDirectory</code></a></b> = <span title="''"><code><span class="variable-quote">'</span><span class="variable-quote">'</span>                                   </code>
</span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>str</code></font></td>
<td><b><a href="twisted.web.woven.view.View.html#templateFile"><code>templateFile</code></a></b> = <span title="''"><code><span class="variable-quote">'</span><span class="variable-quote">'</span>                                        </code>
</span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>NoneType</code></font></td>
<td><b><a href="twisted.web.woven.view.View.html#templateNode"><code>templateNode</code></a></b> = <span title="None">None&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>list</code></font></td>
<td><b><a href="twisted.web.woven.view.View.html#viewLibraries"><code>viewLibraries</code></a></b> = <span title="[]"><code>[]                                       </code>
</span></td></tr>
<tr><td align="right" valign="top" width="15%"><font size="-1"><code>int</code></font></td>
<td><b><a href="twisted.web.woven.view.View.html#wantsAllNotifications"><code>wantsAllNotifications</code></a></b> = <span title="0">0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span></td></tr>
</table><br />


<!-- =========== START OF METHOD DETAILS =========== -->
<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="details">
  <th colspan="2">Method Details</th></tr>
</table>

<a name="__init__"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">__init__</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>m</span>,
          <span class=sig-arg>templateFile</span>=<span class=sig-default>None</span>,
          <span class=sig-arg>templateDirectory</span>=<span class=sig-default>None</span>,
          <span class=sig-arg>template</span>=<span class=sig-default>None</span>,
          <span class=sig-arg>controller</span>=<span class=sig-default>None</span>,
          <span class=sig-arg>doneCallback</span>=<span class=sig-default>None</span>,
          <span class=sig-arg>modelStack</span>=<span class=sig-default>None</span>,
          <span class=sig-arg>viewStack</span>=<span class=sig-default>None</span>,
          <span class=sig-arg>controllerStack</span>=<span class=sig-default>None</span>)</span>
    <br /><i>(Constructor)</i>
  </h3>
  A view must be told what its model is, and may be told what its 
  controller is, but can also look up its controller if none 
  specified.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="dispatchResult"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">dispatchResult</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>request</span>,
          <span class=sig-arg>node</span>,
          <span class=sig-arg>result</span>)</span>
  </h3>
  Check a given result from handling a node and look up a NodeMutator 
  adapter which will convert the result into a node and insert it into 
  the DOM tree. Return the new node.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="dispatchResultCallback"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">dispatchResultCallback</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>result</span>,
          <span class=sig-arg>request</span>,
          <span class=sig-arg>node</span>)</span>
  </h3>
  Deal with a callback from a deferred, checking to see if it is ok to 
  send the page yet or not.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="generate"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">generate</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>request</span>,
          <span class=sig-arg>node</span>)</span>
  </h3>
  Allow a view to be used like a widget. Will look up the template 
  file and return it in place of the incoming node.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="getNodeController"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">getNodeController</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>request</span>,
          <span class=sig-arg>node</span>,
          <span class=sig-arg>submodel</span>,
          <span class=sig-arg>model</span>)</span>
  </h3>
  Get a controller object to handle this node. If the node has no 
  controller= attribute, first check to see if there is an IController 
  adapter for our model.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="getNodeModel"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">getNodeModel</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>request</span>,
          <span class=sig-arg>node</span>,
          <span class=sig-arg>submodel</span>)</span>
  </h3>
  Get the model object associated with this node. If this node has a 
  model= attribute, call getSubmodel on the current model object. If not, 
  return the top of the model stack.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="getSubview"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">getSubview</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>request</span>,
          <span class=sig-arg>node</span>,
          <span class=sig-arg>model</span>,
          <span class=sig-arg>viewName</span>)</span>
  </h3>
  Get a sub-view from me.
  <dl><dt></dt><dd>
    <dl><dt><b>Returns:</b></dt>
      <dd>
        <a href="twisted.web.woven.widgets.Widget.html" 
        class="link"><code>widgets.Widget</code></a>
      </dd>
    </dl>
  </dd></dl>
</td></tr></table>

<a name="getTemplate"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">getTemplate</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>request</span>)</span>
  </h3>
  Override this if you want to have your subclass look up its template 
  using a different method.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="handleControllerResults"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">handleControllerResults</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>controllerResult</span>,
          <span class=sig-arg>request</span>,
          <span class=sig-arg>node</span>,
          <span class=sig-arg>controller</span>,
          <span class=sig-arg>view</span>)</span>
  </h3>
  Handle a deferred from a controller.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="handleDocument"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">handleDocument</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>request</span>,
          <span class=sig-arg>document</span>)</span>
  </h3>
  Handle the root node, and send the page if there are no outstanding 
  callbacks when it returns.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="lookupTemplate"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">lookupTemplate</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>request</span>)</span>
  </h3>
  Use acquisition to look up the template named by self.templateFile, 
  located anywhere above this object in the heirarchy, and use it as the 
  template. The first time the template is used it is cached for 
  speed.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="modelChanged"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">modelChanged</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>changed</span>)</span>
  </h3>
  Rerender this view, because our model has changed.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="recurseChildren"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">recurseChildren</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>request</span>,
          <span class=sig-arg>node</span>)</span>
  </h3>
  If this node has children, handle them.
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>

<a name="sendPage"></a>
<table width="100%" class="func-details" bgcolor="#e0e0e0"><tr><td>
  <h3><span class="sig"><span class="sig-name">sendPage</span>(<span class=sig-arg>self</span>,
          <span class=sig-arg>request</span>)</span>
  </h3>
  Check to see if handlers recorded any errors before sending the 
  page
  <dl><dt></dt><dd>
  </dd></dl>
</td></tr></table>
<br />


<!-- =========== START OF CLASS VARIABLE DETAILS =========== -->
<table class="details" border="1" cellpadding="3" cellspacing="0" width="100%" bgcolor="white">
<tr bgcolor="#70b0f0" class="details">
  <th colspan="2">Class Variable Details</th></tr>
</table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="__implements__"></a>
<h3>__implements__</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>tuple</code>

      </dd>
<span title="(&lt;class twisted.web.resource.IResource at 0x8450e44&gt;, &lt;class twisted.web.woven.interfaces.IView at 0x85936d4&gt;)">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
(&lt;class twisted.web.resource.IResource at 0x8450e44&gt;,
 &lt;class twisted.web.woven.interfaces.IView at 0x85936d4&gt;)              </pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="doneCallback"></a>
<h3>doneCallback</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>NoneType</code>

      </dd>
<span title="None">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
None&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="isLeaf"></a>
<h3>isLeaf</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>int</code>

      </dd>
<span title="1">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="livePage"></a>
<h3>livePage</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>int</code>

      </dd>
<span title="0">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="setupStacks"></a>
<h3>setupStacks</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>int</code>

      </dd>
<span title="1">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="template"></a>
<h3>template</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>str</code>

      </dd>
<span title="''">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
<span class="variable-quote">'</span><span class="variable-quote">'</span>                                                                     </pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="templateDirectory"></a>
<h3>templateDirectory</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>str</code>

      </dd>
<span title="''">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
<span class="variable-quote">'</span><span class="variable-quote">'</span>                                                                     </pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="templateFile"></a>
<h3>templateFile</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>str</code>

      </dd>
<span title="''">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
<span class="variable-quote">'</span><span class="variable-quote">'</span>                                                                     </pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="templateNode"></a>
<h3>templateNode</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>NoneType</code>

      </dd>
<span title="None">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
None&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="viewLibraries"></a>
<h3>viewLibraries</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>list</code>

      </dd>
<span title="[]">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
[]                                                                     </pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<table width="100%" class="var-details" bgcolor="#e0e0e0"><tr><td>
<a name="wantsAllNotifications"></a>
<h3>wantsAllNotifications</h3>
<dl>
  <dt></dt>
  <dd>
    <dl>
      <dt><b>Type:</b></dt>
      <dd>
          <code>int</code>

      </dd>
<span title="0">      <dt><b>Value:</b></dt>
      <dd><table><tr><td>
<pre class="variable">
0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</pre>
        </td></tr></table></dd>
</span>    </dl>
  </dd>
</dl></td></tr></table>
<br />


<!-- =========== START OF NAVBAR =========== -->
<table class="navbar" border="0" width="100%" cellpadding="0" bgcolor="#a0c0ff" cellspacing="0">
  <tr valign="center">
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="twisted.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="trees.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="indices.html">Index</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar">&nbsp;&nbsp;&nbsp;<a class="navbar" href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
    <th class="navbar" align="right" width="100%">
      <table border="0" cellpadding="0" cellspacing="0">
      <tr><th class="navbar" align="center">
        <p class="nomargin">
          <a class="navbar" target="_top" href="http://twistedmatrix.com/">Twisted&nbsp;1.3.0rc1</a>
      </p></th></tr></table>
    </th>
  </tr>
</table>

<table border="0" cellpadding="0" cellspacing="0" width="100%">
  <tr>
    <td align="left"><font size="-2">Generated by Epydoc 2.0 on Sat May 15 20:07:53 2004</font></td>
    <td align="right"><a href="http://epydoc.sourceforge.net"
                      ><font size="-2">http://epydoc.sf.net</font></a></td>
  </tr>
</table>
</body>
</html>