http://git-wip-us.apache.org/repos/asf/isis-site/blob/9d921a51/content/guides/ugvw/ugvw.html
----------------------------------------------------------------------
diff --git a/content/guides/ugvw/ugvw.html b/content/guides/ugvw/ugvw.html
index d49ddf1..227deef 100644
--- a/content/guides/ugvw/ugvw.html
+++ b/content/guides/ugvw/ugvw.html
@@ -179,6 +179,7 @@ table.CodeRay td.code>pre{padding:0}
         <li><a href="../../guides/ugfun/ugfun.html">Fundamentals</a></li> 
         <li><a href="../../guides/ugvw/ugvw.html">Wicket Viewer</a></li> 
         <li><a href="../../guides/ugvro/ugvro.html">Restful Objects 
Viewer</a></li> 
+        <li><a href="../../guides/ugodn/ugodn.html">DataNucleus Object 
Store</a></li> 
         <li><a href="../../guides/ugsec/ugsec.html">Security</a></li> 
         <li><a href="../../guides/ugtst/ugtst.html">Testing</a></li> 
         <li><a href="../../guides/ugbtb/ugbtb.html">Beyond the Basics</a></li> 
@@ -196,25 +197,32 @@ table.CodeRay td.code>pre{padding:0}
        </ul> </li> 
       <li class="dropdown  hidden-sm hidden-md"> <a href="#" 
class="dropdown-toggle" data-toggle="dropdown" role="button" 
aria-haspopup="true" aria-expanded="false">Downloads<span 
class="caret"></span></a> 
        <ul class="dropdown-menu"> 
-        <li><a href="../../downloads.html">Downloads</a></li> 
-        <li><a href="../../release-notes/release-notes.html">Release 
Notes</a></li> 
-        <li><a href="../../migration-notes/migration-notes.html">Migration 
Notes</a></li> 
-        <li role="separator" class="divider"></li> 
         <li class="dropdown-header">Maven archetypes</li> 
         <li><a 
href="../../guides/ugfun/ugfun.html#_ugfun_getting-started_helloworld-archetype">helloworld</a></li>
 
         <li><a 
href="../../guides/ugfun/ugfun.html#_ugfun_getting-started_simpleapp-archetype">simpleapp</a></li>
 
         <li role="separator" class="divider"></li> 
-        <li><a href="https://issues.apache.org/jira/browse/ISIS";>ASF 
JIRA</a></li> 
+        <li><a href="../../downloads.html">Downloads</a></li> 
+        <li><a href="../../release-notes/release-notes.html">Release 
Notes</a></li> 
+        <li><a href="../../migration-notes/migration-notes.html">Migration 
Notes</a></li> 
+        <li role="separator" class="divider"></li> 
         <li><a href="https://github.com/apache/isis";>Github mirror</a></li> 
        </ul> </li> 
       <li class="dropdown  hidden-sm"> <a href="#" class="dropdown-toggle" 
data-toggle="dropdown" role="button" aria-haspopup="true" 
aria-expanded="false">Support<span class="caret"></span></a> 
        <ul class="dropdown-menu"> 
-        <li><a href="../../support.html">Mailing lists</a></li> 
+        <li class="dropdown-header">Guides</li> 
+        <li><a href="../../guides/dg/dg.html">Developers' Guide</a></li> 
+        <li><a href="../../guides/cgcom/cgcom.html">Committers' Guide</a></li> 
+        <li><a href="../../guides/htg.html">Hints-n-Tips Guide</a></li> 
+        <li role="separator" class="divider"></li> 
+        <li class="dropdown-header">Mailing Lists</li> 
+        <li><a href="../../support.html">How to subscribe</a></li> 
         <li><a 
href="https://lists.apache.org/[email protected]";>Archives (ASF 
Pony mail)</a></li> 
         <li><a href="http://isis.markmail.org/search/?q=";>Archives 
(Markmail)</a></li> 
+        <li role="separator" class="divider"></li> 
+        <li class="dropdown-header">Other Resources</li> 
+        <li><a href="https://issues.apache.org/jira/browse/ISIS";>ASF 
JIRA</a></li> 
         <li><a href="http://stackoverflow.com/questions/tagged/isis";>Stack 
Overflow</a></li> 
-        <li><a href="../../guides/dg/dg.html">How to contribute</a></li> 
-        <li><a href="../../help.html">Other resources</a></li> 
+        <li><a href="../../help.html">Wiki, Fisheye etc.</a></li> 
        </ul> </li> 
       <li class="dropdown hidden-sm hidden-md"> <a href="#" 
class="dropdown-toggle" data-toggle="dropdown" role="button" 
aria-haspopup="true" aria-expanded="false">@ASF<span class="caret"></span></a> 
        <ul class="dropdown-menu"> 
@@ -1071,7 +1079,7 @@ table.CodeRay td.code>pre{padding:0}
          <p>In implementing the <a 
href="http://en.wikipedia.org/wiki/Naked_objects";>naked objects pattern</a>, 
Apache Isis aims to infer as much information from the domain classes as 
possible. Nevertheless, some metadata relating solely to the UI is inevitably 
required. This chapter describes how this is done both for domain objects using 
either annotations or using an associated layout file.</p> 
         </div> 
         <div class="paragraph"> 
-         <p>It also describes how to layout the application menu items 
(containing domain service' actions), as more well as more advanced topics such 
as customising which columns appear in tables.</p> 
+         <p>The chapter also describes how to customising which columns of 
associated objects appear in tables. The layout of application menu items is 
described in a <a href="#_ugvw_menubars-layout">separate chapter</a>.</p> 
         </div> 
         <div class="sect2"> 
          <h3 id="_ugvw_layout_annotation-based">3.1. Annotation-based 
Layout</h3>
@@ -1312,7 +1320,7 @@ table.CodeRay td.code>pre{padding:0}
          <div class="sect3"> 
           <h4 id="_other_annotations">3.1.4. Other Annotations</h4> 
           <div class="paragraph"> 
-           <p>As of <code>1.8.0</code>, all the layout annotations have been 
consolidated into the various <code>XxxLayout</code> annotations: <a 
href="../rgant/rgant.html#_rgant-ActionLayout, "><code>@ActionLayout</code></a> 
<a 
href="../rgant/rgant.html#_rgant-CollectionLayout"><code>@CollectionLayout</code></a>,
 <a 
href="../rgant/rgant.html#_rgant-DomainObjectLayout"><code>@DomainObjectLayout</code></a>,
 <a 
href="../rgant/rgant.html#_rgant-DomainServiceLayout"><code>@DomainServiceLayout</code></a>,
 <a 
href="../rgant/rgant.html#_rgant-ParameterLayout"><code>@ParameterLayout</code></a>,
 <a 
href="../rgant/rgant.html#_rgant-PropertyLayout"><code>@PropertyLayout</code></a>,
 and <a 
href="../rgant/rgant.html#_rgant-ViewModelLayout"><code>@ViewModelLayout</code></a></p>
 
+           <p>All the layout annotations (eg <code>@Regex</code> and 
<code>@Named</code>) have been deprecated, instead replaced by the various 
<code>XxxLayout</code> annotations: <a 
href="../rgant/rgant.html#_rgant-ActionLayout, "><code>@ActionLayout</code></a> 
<a 
href="../rgant/rgant.html#_rgant-CollectionLayout"><code>@CollectionLayout</code></a>,
 <a 
href="../rgant/rgant.html#_rgant-DomainObjectLayout"><code>@DomainObjectLayout</code></a>,
 <a 
href="../rgant/rgant.html#_rgant-DomainServiceLayout"><code>@DomainServiceLayout</code></a>,
 <a 
href="../rgant/rgant.html#_rgant-ParameterLayout"><code>@ParameterLayout</code></a>,
 <a 
href="../rgant/rgant.html#_rgant-PropertyLayout"><code>@PropertyLayout</code></a>,
 and <a 
href="../rgant/rgant.html#_rgant-ViewModelLayout"><code>@ViewModelLayout</code></a></p>
 
           </div> 
          </div> 
         </div> 
@@ -1349,8 +1357,9 @@ table.CodeRay td.code>pre{padding:0}
          </div> 
          <div class="ulist"> 
           <ul> 
-           <li> <p>file-based layouts are not type: a typo will result in the 
metadata not being picked up for the element. They also suffer from syntactic 
fragility: an invalid XML document will result in no metadata for the entire 
class.</p> </li> 
-           <li> <p>there is no notion of inheritance, so a 
<code>.layout.xml</code> is required for all concrete classes and also for any 
abstract classes (if used as a collection type) In contrast, the dewey-decimal 
format <code>@MemberOrder</code> annotation allows the metadata of the subclass 
its superclasses to fit together relatively seamlessly.</p> </li> 
+           <li> <p>file-based layouts are not typesafe: a typo will result in 
the metadata not being picked up for the element.</p> </li> 
+           <li> <p>they suffer from syntactic fragility: an invalid XML 
document will result in no metadata for the entire class.</p> </li> 
+           <li> <p>there is no notion of inheritance, so a 
<code>.layout.xml</code> is required for all concrete classes and also for any 
abstract classes (if used as a collection type). In contrast, the dewey-decimal 
format <code>@MemberOrder</code> annotation allows the metadata of the subclass 
its superclasses to fit together relatively seamlessly.</p> </li> 
           </ul> 
          </div> 
          <div class="paragraph"> 
@@ -1519,7 +1528,7 @@ table.CodeRay td.code>pre{padding:0}
                <td class="icon"> <i class="fa icon-note" title="Note"></i> 
</td> 
                <td class="content"> 
                 <div class="paragraph"> 
-                 <p>(As of <code>1.15.0</code>) the 
<code>&lt;fieldset&gt;</code>'s "name" attribute is optional. If omitted, then 
the title panel is suppressed, freeing more real estate.</p> 
+                 <p>The <code>&lt;fieldset&gt;</code>'s "name" attribute is 
optional. If omitted, then the title panel is suppressed, freeing more real 
estate.</p> 
                 </div> 
                 <div class="paragraph"> 
                  <p>Do be aware though that if there are any actions that have 
been placed on the fieldset’s panel, then these <em>will <strong>not</strong> 
be displayed</em>.</p> 
@@ -1536,23 +1545,23 @@ table.CodeRay td.code>pre{padding:0}
            </div> 
            <div class="listingblock"> 
             <div class="content"> 
-             <pre class="CodeRay highlight"><code data-lang="xml">             
   <span class="tag">&lt;bs3:tab</span> <span 
class="attribute-name">name</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">Similar to</span><span 
class="delimiter">"</span></span><span class="tag">&gt;</span>
-                    <span class="tag">&lt;bs3:row&gt;</span>
-                        <span class="tag">&lt;bs3:col</span> <span 
class="attribute-name">span</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">12</span><span 
class="delimiter">"</span></span><span class="tag">&gt;</span>
-                            <span class="tag">&lt;c:collection</span> <span 
class="attribute-name">defaultView</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">table</span><span 
class="delimiter">"</span></span> <span class="attribute-name">id</span>=<span 
class="string"><span class="delimiter">"</span><span 
class="content">similarTo</span><span class="delimiter">"</span></span><span 
class="tag">/&gt;</span>
-                        <span class="tag">&lt;/bs3:col&gt;</span>
-                    <span class="tag">&lt;/bs3:row&gt;</span>
-                <span class="tag">&lt;/bs3:tab&gt;</span>
-                <span class="tag">&lt;bs3:tab</span> <span 
class="attribute-name">name</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">Dependencies</span><span 
class="delimiter">"</span></span><span class="tag">&gt;</span>
-                    <span class="tag">&lt;bs3:row&gt;</span>
-                        <span class="tag">&lt;bs3:col</span> <span 
class="attribute-name">span</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">12</span><span 
class="delimiter">"</span></span><span class="tag">&gt;</span>
-                            <span class="tag">&lt;c:collection</span> <span 
class="attribute-name">defaultView</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">table</span><span 
class="delimiter">"</span></span> <span class="attribute-name">id</span>=<span 
class="string"><span class="delimiter">"</span><span 
class="content">dependencies</span><span class="delimiter">"</span></span><span 
class="tag">&gt;</span>
-                                <span class="tag">&lt;c:action</span> <span 
class="attribute-name">id</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">add</span><span 
class="delimiter">"</span></span><span class="tag">/&gt;</span>
-                                <span class="tag">&lt;c:action</span> <span 
class="attribute-name">id</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">remove</span><span 
class="delimiter">"</span></span><span class="tag">/&gt;</span>
-                            <span class="tag">&lt;/c:collection&gt;</span>
-                        <span class="tag">&lt;/bs3:col&gt;</span>
-                    <span class="tag">&lt;/bs3:row&gt;</span>
-                <span class="tag">&lt;/bs3:tab&gt;</span></code></pre> 
+             <pre class="CodeRay highlight"><code data-lang="xml"><span 
class="tag">&lt;bs3:tab</span> <span class="attribute-name">name</span>=<span 
class="string"><span class="delimiter">"</span><span class="content">Similar 
to</span><span class="delimiter">"</span></span><span class="tag">&gt;</span>
+    <span class="tag">&lt;bs3:row&gt;</span>
+        <span class="tag">&lt;bs3:col</span> <span 
class="attribute-name">span</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">12</span><span 
class="delimiter">"</span></span><span class="tag">&gt;</span>
+            <span class="tag">&lt;c:collection</span> <span 
class="attribute-name">defaultView</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">table</span><span 
class="delimiter">"</span></span> <span class="attribute-name">id</span>=<span 
class="string"><span class="delimiter">"</span><span 
class="content">similarTo</span><span class="delimiter">"</span></span><span 
class="tag">/&gt;</span>
+        <span class="tag">&lt;/bs3:col&gt;</span>
+    <span class="tag">&lt;/bs3:row&gt;</span>
+<span class="tag">&lt;/bs3:tab&gt;</span>
+<span class="tag">&lt;bs3:tab</span> <span 
class="attribute-name">name</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">Dependencies</span><span 
class="delimiter">"</span></span><span class="tag">&gt;</span>
+    <span class="tag">&lt;bs3:row&gt;</span>
+        <span class="tag">&lt;bs3:col</span> <span 
class="attribute-name">span</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">12</span><span 
class="delimiter">"</span></span><span class="tag">&gt;</span>
+            <span class="tag">&lt;c:collection</span> <span 
class="attribute-name">defaultView</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">table</span><span 
class="delimiter">"</span></span> <span class="attribute-name">id</span>=<span 
class="string"><span class="delimiter">"</span><span 
class="content">dependencies</span><span class="delimiter">"</span></span><span 
class="tag">&gt;</span>
+                <span class="tag">&lt;c:action</span> <span 
class="attribute-name">id</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">add</span><span 
class="delimiter">"</span></span><span class="tag">/&gt;</span>
+                <span class="tag">&lt;c:action</span> <span 
class="attribute-name">id</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">remove</span><span 
class="delimiter">"</span></span><span class="tag">/&gt;</span>
+            <span class="tag">&lt;/c:collection&gt;</span>
+        <span class="tag">&lt;/bs3:col&gt;</span>
+    <span class="tag">&lt;/bs3:row&gt;</span>
+<span class="tag">&lt;/bs3:tab&gt;</span></code></pre> 
             </div> 
            </div> 
            <div class="paragraph"> 
@@ -1837,43 +1846,140 @@ table.CodeRay td.code>pre{padding:0}
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_layout_application-menu">3.3. Application Menu 
Layout</h3>
+         <h3 id="_ugvw_layout_table-columns">3.3. Table Columns</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
-          <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_application-menu.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
+          <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_table-columns.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
           <ul class="dropdown-menu">
-           <li><a 
href="https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_application-menu.adoc";
 target="_blank"><i class="fa fa-pencil-square-o fa-fw" 
aria-hidden="true"></i>&nbsp; Edit</a></li>
-           <li><a 
href="https://github.com/apache/isis/commits/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_application-menu.adoc";
 target="_blank"><i class="fa fa-clock-o fa-fw" aria-hidden="true"></i>&nbsp; 
History</a></li>
-           <li><a 
href="https://github.com/apache/isis/raw/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_application-menu.adoc";
 target="_blank"><i class="fa fa-file-text-o fa-fw" 
aria-hidden="true"></i>&nbsp; Raw</a></li>
-           <li><a 
href="https://github.com/apache/isis/blame/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_application-menu.adoc";
 target="_blank"><i class="fa fa-hand-o-right fa-fw" 
aria-hidden="true"></i>&nbsp; Blame</a></li>
+           <li><a 
href="https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_table-columns.adoc";
 target="_blank"><i class="fa fa-pencil-square-o fa-fw" 
aria-hidden="true"></i>&nbsp; Edit</a></li>
+           <li><a 
href="https://github.com/apache/isis/commits/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_table-columns.adoc";
 target="_blank"><i class="fa fa-clock-o fa-fw" aria-hidden="true"></i>&nbsp; 
History</a></li>
+           <li><a 
href="https://github.com/apache/isis/raw/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_table-columns.adoc";
 target="_blank"><i class="fa fa-file-text-o fa-fw" 
aria-hidden="true"></i>&nbsp; Raw</a></li>
+           <li><a 
href="https://github.com/apache/isis/blame/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_table-columns.adoc";
 target="_blank"><i class="fa fa-hand-o-right fa-fw" 
aria-hidden="true"></i>&nbsp; Blame</a></li>
           </ul>
          </div> 
          <div class="paragraph"> 
-          <p>The actions of domain services are made available as an 
application menu bar. By default each domain service corresponds to a single 
menu on this menu bar, with its actions as the drop-down menu items. This is 
rarely exactly what is required, however. The <code>@MemberOrder</code> and 
<code>@DomainServiceLayout</code> annotations can be used to rearrange the 
placement of menu items.</p> 
+          <p>The optional <a 
href="../rgsvc/rgsvc.html#_rgsvc_presentation-layer-spi_TableColumnOrderService"><code>TableColumnOrderService</code></a>
 SPI service can be used to reorder columns in a table, either for a parented 
collection (owned by parent domain object) or a standalone collection (returned 
from an action invocation).</p> 
          </div> 
          <div class="paragraph"> 
-          <p>The screenshots below are taken from <a 
href="http://github.com/estatio/estatio";>Estatio</a>, an open source estate 
management application built using Apache Isis.</p> 
+          <p>For example, suppose there is a <code>Customer</code> and an 
<code>Order</code>:</p> 
          </div> 
-         <div class="sect3"> 
-          <h4 id="__domainservicelayout">3.3.1. @DomainServiceLayout</h4> 
-          <div class="paragraph"> 
-           <p>Menus for domain services can be placed either on a primary, 
secondary or tertiary menu bar.</p> 
-          </div> 
-          <div class="imageblock"> 
-           <div class="content"> 
-            <a class="image" 
href="images/application-menu/layout-menus.png"><img 
src="images/application-menu/layout-menus.png" alt="layout menus" 
width="800px"></a> 
-           </div> 
-          </div> 
-          <div class="paragraph"> 
-           <p>Within a single top-level menu (eg "Fixed Assets") there can be 
actions from multiple services. The Wicket viewer automatically adds a divider 
between each:</p> 
+         <div class="imageblock"> 
+          <div class="content"> 
+           <img src="images/layouts/customer-order.png" alt="customer order" 
width="108" height="248"> 
           </div> 
-          <div class="imageblock"> 
-           <div class="content"> 
-            <a class="image" href="images/application-menu/dividers.png"><img 
src="images/application-menu/dividers.png" alt="dividers" width="400px"></a> 
-           </div> 
+         </div> 
+         <div class="paragraph"> 
+          <p>The order of these properties of <code>Order</code>, when 
rendered in the context of its owning <code>Customer</code>, can be controlled 
using this implementation of <code>TableColumnOrderService</code>:</p> 
+         </div> 
+         <div class="listingblock"> 
+          <div class="content"> 
+           <pre class="CodeRay highlight"><code data-lang="java"><span 
class="annotation">@DomainService</span>(
+    nature = NatureOfService.DOMAIN,
+    menuOrder = <span class="string"><span class="delimiter">"</span><span 
class="content">100</span><span class="delimiter">"</span></span>               
                <i class="conum" data-value="1"></i><b>(1)</b>
+)
+<span class="directive">public</span> <span class="type">class</span> <span 
class="class">TableColumnOrderServiceForCustomerOrders</span>
+                 <span class="directive">implements</span> 
TableColumnOrderService {
+    <span class="directive">public</span> <span 
class="predefined-type">List</span>&lt;<span 
class="predefined-type">String</span>&gt; orderParented(
+            <span class="directive">final</span> <span 
class="predefined-type">Object</span> parent,
+            <span class="directive">final</span> <span 
class="predefined-type">String</span> collectionId,
+            <span class="directive">final</span> <span 
class="predefined-type">Class</span>&lt;?&gt; collectionType,
+            <span class="directive">final</span> <span 
class="predefined-type">List</span>&lt;<span 
class="predefined-type">String</span>&gt; propertyIds) {
+        <span class="keyword">return</span> parent <span 
class="keyword">instanceof</span> Customer &amp;&amp; <span 
class="string"><span class="delimiter">"</span><span 
class="content">orders</span><span 
class="delimiter">"</span></span>.equals(collectionId)
+             ? <span class="predefined-type">Arrays</span>.asList(<span 
class="string"><span class="delimiter">"</span><span 
class="content">num</span><span class="delimiter">"</span></span>, <span 
class="string"><span class="delimiter">"</span><span 
class="content">placedOn</span><span class="delimiter">"</span></span>, <span 
class="string"><span class="delimiter">"</span><span 
class="content">state</span><span class="delimiter">"</span></span>, <span 
class="string"><span class="delimiter">"</span><span 
class="content">shippedOn</span><span class="delimiter">"</span></span>)
+             : <span class="predefined-constant">null</span>;
+    }
+    <span class="directive">public</span> <span 
class="predefined-type">List</span>&lt;<span 
class="predefined-type">String</span>&gt; orderStandalone(
+            <span class="directive">final</span> <span 
class="predefined-type">Class</span>&lt;?&gt; collectionType,
+            <span class="directive">final</span> <span 
class="predefined-type">List</span>&lt;<span 
class="predefined-type">String</span>&gt; propertyIds) {
+        <span class="keyword">return</span> <span 
class="predefined-constant">null</span>;
+    }
+}</code></pre> 
           </div> 
+         </div> 
+         <div class="colist arabic"> 
+          <table> 
+           <tbody>
+            <tr> 
+             <td><i class="conum" data-value="1"></i><b>1</b></td> 
+             <td>specifies the order in which the 
<code>TableColumnOrderService</code> implementations are called.</td> 
+            </tr> 
+           </tbody>
+          </table> 
+         </div> 
+        </div> 
+       </div> 
+      </div> 
+      <div class="sect1"> 
+       <h2 id="_ugvw_menubars-layout">4. Menu Bars Layout</h2>
+       <div class="btn-group" style="float: right; font-size: small; padding: 
6px; margin-top: -55px; ">
+        <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
+        <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
+        <ul class="dropdown-menu">
+         <li><a 
href="https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout.adoc";
 target="_blank"><i class="fa fa-pencil-square-o fa-fw" 
aria-hidden="true"></i>&nbsp; Edit</a></li>
+         <li><a 
href="https://github.com/apache/isis/commits/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout.adoc";
 target="_blank"><i class="fa fa-clock-o fa-fw" aria-hidden="true"></i>&nbsp; 
History</a></li>
+         <li><a 
href="https://github.com/apache/isis/raw/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout.adoc";
 target="_blank"><i class="fa fa-file-text-o fa-fw" 
aria-hidden="true"></i>&nbsp; Raw</a></li>
+         <li><a 
href="https://github.com/apache/isis/blame/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout.adoc";
 target="_blank"><i class="fa fa-hand-o-right fa-fw" 
aria-hidden="true"></i>&nbsp; Blame</a></li>
+        </ul>
+       </div> 
+       <div class="sectionbody"> 
+        <div class="paragraph"> 
+         <p>The actions of domain services are made available as menu items on 
menus. By default each domain service corresponds to a single menu on this menu 
bar, with its actions as the drop-down menu items. This is rarely exactly what 
is required, however; it often makes sense to group menu items for similar 
domain services together.</p> 
+        </div> 
+        <div class="paragraph"> 
+         <p>For example, the (non-ASF) <a href="http://platform.incode.org"; 
target="_blank">Incode Platform</a> modules provides services whose actions 
appear into two top-level menus:</p> 
+        </div> 
+        <div class="ulist"> 
+         <ul> 
+          <li> <p>its <code>ApplicationUsers</code>, 
<code>ApplicationRoles</code>, <code>ApplicationPermission</code>, 
<code>ApplicationFeatureViewModels</code> and <code>ApplicationTenancies</code> 
domain services are all grouped together in a single "Security" top-level menu, 
on the SECONDARY menu bar</p> </li> 
+          <li> <p>its <code>MeService</code> domain service, which provides 
the <code>me()</code> action, is placed on the TERTIARY menu bar.</p> </li> 
+         </ul> 
+        </div> 
+        <div class="paragraph"> 
+         <p>The menus themselves can be placed either on a primary, secondary 
or tertiary menu bar, as shown in this screenshot (taken from <a 
href="http://github.com/estatio/estatio";>Estatio</a>, an open source estate 
management application built using Apache Isis):</p> 
+        </div> 
+        <div class="imageblock"> 
+         <div class="content"> 
+          <a class="image" 
href="images/application-menu/layout-menus.png"><img 
src="images/application-menu/layout-menus.png" alt="layout menus" 
width="800px"></a> 
+         </div> 
+        </div> 
+        <div class="paragraph"> 
+         <p>Within a single top-level menu (eg "Fixed Assets") there can be 
actions from multiple services. The Wicket viewer shows these as separate 
sections, with a divider between each:</p> 
+        </div> 
+        <div class="imageblock"> 
+         <div class="content"> 
+          <a class="image" href="images/application-menu/dividers.png"><img 
src="images/application-menu/dividers.png" alt="dividers" width="400px"></a> 
+         </div> 
+        </div> 
+        <div class="paragraph"> 
+         <p>The tertiary menu bar consists of a single unnamed menu, rendered 
underneath the user’s login, top right. This is intended primarily for 
actions pertaining to the user themselves, eg their account, profile or 
settings:</p> 
+        </div> 
+        <div class="imageblock"> 
+         <div class="content"> 
+          <a class="image" href="images/application-menu/tertiary.png"><img 
src="images/application-menu/tertiary.png" alt="tertiary" width="300px"></a> 
+         </div> 
+        </div> 
+        <div class="paragraph"> 
+         <p>The Apache Isis framework provides two mechanisms to control the 
arrangement of domain service actions across menubars and menus, either using 
annotations or using a file-based layout.</p> 
+        </div> 
+        <div class="sect2"> 
+         <h3 id="_ugvw_menubars-layout_annotation-based">4.1. Annotation-based 
Menu Bars</h3>
+         <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
+          <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout_annotation-based.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
+          <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
+          <ul class="dropdown-menu">
+           <li><a 
href="https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout_annotation-based.adoc";
 target="_blank"><i class="fa fa-pencil-square-o fa-fw" 
aria-hidden="true"></i>&nbsp; Edit</a></li>
+           <li><a 
href="https://github.com/apache/isis/commits/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout_annotation-based.adoc";
 target="_blank"><i class="fa fa-clock-o fa-fw" aria-hidden="true"></i>&nbsp; 
History</a></li>
+           <li><a 
href="https://github.com/apache/isis/raw/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout_annotation-based.adoc";
 target="_blank"><i class="fa fa-file-text-o fa-fw" 
aria-hidden="true"></i>&nbsp; Raw</a></li>
+           <li><a 
href="https://github.com/apache/isis/blame/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout_annotation-based.adoc";
 target="_blank"><i class="fa fa-hand-o-right fa-fw" 
aria-hidden="true"></i>&nbsp; Blame</a></li>
+          </ul>
+         </div> 
+         <div class="paragraph"> 
+          <p>The annotations-based approach for arranging the placement of 
menu items is achieved through the <a 
href="../rgant/rgant.html#_rgant-MemberOrder"><code>@MemberOrder</code></a> and 
<a 
href="../rgant/rgant.html#_rgant-DomainServiceLayout"><code>@DomainServiceLayout</code></a>
 annotations.</p> 
+         </div> 
+         <div class="sect3"> 
+          <h4 id="__domainservicelayout">4.1.1. @DomainServiceLayout</h4> 
           <div class="paragraph"> 
-           <p>In the example above the top-level menu combines the actions 
from the <code>Properties</code>, <code>Units</code> and 
<code>FixedAssetRegistrations</code> services. The <code>Properties</code> 
service is annotated:</p> 
+           <p>In the example from Estatio shown above the top-level menu 
combines the actions from the <code>Properties</code>, <code>Units</code> and 
<code>FixedAssetRegistrations</code> services. The <code>Properties</code> 
service is annotated:</p> 
           </div> 
           <div class="listingblock"> 
            <div class="content"> 
@@ -1941,7 +2047,7 @@ table.CodeRay td.code>pre{padding:0}
           </div> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_ordering_menu_actions">3.3.2. Ordering menu actions</h4> 
+          <h4 id="_ordering_menu_actions">4.1.2. Ordering menu actions</h4> 
           <div class="paragraph"> 
            <p>For a given service, the actions within a section on a menu is 
determined by the <code>@MemberOrder</code> annotation. Thus, for the 
<code>Units</code> domain service, its actions are annotated:</p> 
           </div> 
@@ -1965,22 +2071,14 @@ table.CodeRay td.code>pre{padding:0}
           <div class="paragraph"> 
            <p>Note that the last is also a prototype action (meaning it is 
only displayed in SERVER_PROTOTYPE (=Wicket Development) mode). In the UI it is 
rendered in italics.</p> 
           </div> 
-          <div class="paragraph"> 
-           <p>(It is possible to override this place of a given action by 
specifying <code>@MemberOrder(name="…​")</code> where the name is that of a 
top-level menu. Prior to <code>1.8.0</code> this was the only way of doing 
things, as of <code>1.8.0</code> its use is not recommended).</p> 
-          </div> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_tertiary_menubar">3.3.3. Tertiary menubar</h4> 
+          <h4 id="_tertiary_menu">4.1.3. Tertiary Menu</h4> 
           <div class="paragraph"> 
-           <p>The tertiary menu bar consists of a single unnamed menu, 
rendered underneath the user’s login, top right. This is intended primarily 
for actions pertaining to the user themselves, eg their account, profile or 
settings:</p> 
-          </div> 
-          <div class="imageblock"> 
-           <div class="content"> 
-            <a class="image" href="images/application-menu/tertiary.png"><img 
src="images/application-menu/tertiary.png" alt="tertiary" width="300px"></a> 
-           </div> 
+           <p>Domain services' actions can be associated with the tertiary 
menu using the same <code>@DomainServiceLayout</code> annotation, but be aware 
that the <code>@DomainServiceLayout#name()</code> attribute will be ignored 
(there is only one effective menu).</p> 
           </div> 
           <div class="paragraph"> 
-           <p>Domain services' actions can be associated with the tertiary 
menu using the same <code>@DomainServiceLayout</code> annotation. For example, 
the <code>updateEpochDate(…​)</code> and 
<code>listAllSettings(…​)</code> actions come from the following 
service:</p> 
+           <p>For example, the <code>updateEpochDate(…​)</code> and 
<code>listAllSettings(…​)</code> actions come from the following 
service:</p> 
           </div> 
           <div class="listingblock"> 
            <div class="content"> 
@@ -2003,91 +2101,142 @@ table.CodeRay td.code>pre{padding:0}
            <p>Because the number of items on the tertiary menu is expected to 
be small and most will pertain to the current user, the viewer does 
<em>not</em> place dividers between actions from different services on the 
tertiary menu.</p> 
           </div> 
          </div> 
-         <div class="sect3"> 
-          <h4 id="_incode_platform_modules">3.3.4. Incode Platform 
modules</h4> 
-          <div class="paragraph"> 
-           <p>Some of the (non-ASF) <a href="http://platform.incode.org"; 
target="_blank">Incode Platform</a> modules also provide services whose actions 
appear in top-level menus.</p> 
-          </div> 
-          <div class="paragraph"> 
-           <p>The security’s module places its domain service menus in three 
top-level menus:</p> 
-          </div> 
-          <div class="ulist"> 
-           <ul> 
-            <li> <p>its <code>ApplicationUsers</code>, 
<code>ApplicationRoles</code>, <code>ApplicationPermission</code>, 
<code>ApplicationFeatureViewModels</code> and <code>ApplicationTenancies</code> 
domain services are all grouped together in a single "Security" top-level menu, 
on the SECONDARY menu bar</p> </li> 
-            <li> <p>its <code>MeService</code> domain service, which provides 
the <code>me()</code> action, is placed on the TERTIARY menu bar.</p> </li> 
-           </ul> 
-          </div> 
-          <div class="paragraph"> 
-           <p>Currently there is no facility to alter the placement of these 
services. However, their UI can be suppressed using security or using a <a 
href="../ugbtb/ugbtb.html#_ugbtb_hints-and-tips_vetoing-visibility">vetoing 
subscriber</a>.</p> 
-          </div> 
-         </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_layout_table-columns">3.4. Table Columns</h3>
+         <h3 id="_ugvw_menubars-layout_file-based">4.2. File-based Menu 
Bars</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
-          <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_table-columns.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
+          <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout_file-based.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
           <ul class="dropdown-menu">
-           <li><a 
href="https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_table-columns.adoc";
 target="_blank"><i class="fa fa-pencil-square-o fa-fw" 
aria-hidden="true"></i>&nbsp; Edit</a></li>
-           <li><a 
href="https://github.com/apache/isis/commits/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_table-columns.adoc";
 target="_blank"><i class="fa fa-clock-o fa-fw" aria-hidden="true"></i>&nbsp; 
History</a></li>
-           <li><a 
href="https://github.com/apache/isis/raw/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_table-columns.adoc";
 target="_blank"><i class="fa fa-file-text-o fa-fw" 
aria-hidden="true"></i>&nbsp; Raw</a></li>
-           <li><a 
href="https://github.com/apache/isis/blame/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_layout_table-columns.adoc";
 target="_blank"><i class="fa fa-hand-o-right fa-fw" 
aria-hidden="true"></i>&nbsp; Blame</a></li>
+           <li><a 
href="https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout_file-based.adoc";
 target="_blank"><i class="fa fa-pencil-square-o fa-fw" 
aria-hidden="true"></i>&nbsp; Edit</a></li>
+           <li><a 
href="https://github.com/apache/isis/commits/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout_file-based.adoc";
 target="_blank"><i class="fa fa-clock-o fa-fw" aria-hidden="true"></i>&nbsp; 
History</a></li>
+           <li><a 
href="https://github.com/apache/isis/raw/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout_file-based.adoc";
 target="_blank"><i class="fa fa-file-text-o fa-fw" 
aria-hidden="true"></i>&nbsp; Raw</a></li>
+           <li><a 
href="https://github.com/apache/isis/blame/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_menubars-layout_file-based.adoc";
 target="_blank"><i class="fa fa-hand-o-right fa-fw" 
aria-hidden="true"></i>&nbsp; Blame</a></li>
           </ul>
          </div> 
          <div class="paragraph"> 
-          <p>The optional <a 
href="../rgsvc/rgsvc.html#_rgsvc_presentation-layer-spi_TableColumnOrderService"><code>TableColumnOrderService</code></a>
 SPI service can be used to reorder columns in a table, either for a parented 
collection (owned by parent domain object) or a standalone collection (returned 
from an action invocation).</p> 
+          <p>The domain service actions can be arranged across menu items 
using the <code>menubars.layout.xml</code> file. Not only is this easier to 
work with, it also can be reloaded dynamically (if in prototype mode), 
substantially redu.</p> 
          </div> 
          <div class="paragraph"> 
-          <p>For example, suppose there is a <code>Customer</code> and an 
<code>Order</code>:</p> 
+          <p>As for <a href="#_ugvw_layout_file-based">file-based object 
layouts</a>, this offers a number of benefits:</p> 
          </div> 
-         <div class="imageblock"> 
-          <div class="content"> 
-           <img src="images/layouts/customer-order.png" alt="customer order" 
width="108" height="248"> 
-          </div> 
+         <div class="ulist"> 
+          <ul> 
+           <li> <p>Probably most significantly, the layout can be updated 
without requiring a recompile of the code and redeploy of the app; fine-tuning 
the layout with your end users is easy to do</p> </li> 
+           <li> <p>Many developers also find it easier to rationalize about 
menu bars layout when all the hints are collated together in a single place 
(rather than scattered across the domain service classes as annotations).</p> 
</li> 
+          </ul> 
          </div> 
          <div class="paragraph"> 
-          <p>The order of these properties of <code>Order</code>, when 
rendered in the context of its owning <code>Customer</code>, can be controlled 
using this implementation of <code>TableColumnOrderService</code>:</p> 
+          <p>There are some disadvantages to using file-based layouts:</p> 
          </div> 
-         <div class="listingblock"> 
-          <div class="content"> 
-           <pre class="CodeRay highlight"><code data-lang="java"><span 
class="annotation">@DomainService</span>(
-    nature = NatureOfService.DOMAIN,
-    menuOrder = <span class="string"><span class="delimiter">"</span><span 
class="content">100</span><span class="delimiter">"</span></span>               
                <i class="conum" data-value="1"></i><b>(1)</b>
-)
-<span class="directive">public</span> <span class="type">class</span> <span 
class="class">TableColumnOrderServiceForCustomerOrders</span>
-                 <span class="directive">implements</span> 
TableColumnOrderService {
-    <span class="directive">public</span> <span 
class="predefined-type">List</span>&lt;<span 
class="predefined-type">String</span>&gt; orderParented(
-            <span class="directive">final</span> <span 
class="predefined-type">Object</span> parent,
-            <span class="directive">final</span> <span 
class="predefined-type">String</span> collectionId,
-            <span class="directive">final</span> <span 
class="predefined-type">Class</span>&lt;?&gt; collectionType,
-            <span class="directive">final</span> <span 
class="predefined-type">List</span>&lt;<span 
class="predefined-type">String</span>&gt; propertyIds) {
-        <span class="keyword">return</span> parent <span 
class="keyword">instanceof</span> Customer &amp;&amp; <span 
class="string"><span class="delimiter">"</span><span 
class="content">orders</span><span 
class="delimiter">"</span></span>.equals(collectionId)
-             ? <span class="predefined-type">Arrays</span>.asList(<span 
class="string"><span class="delimiter">"</span><span 
class="content">num</span><span class="delimiter">"</span></span>, <span 
class="string"><span class="delimiter">"</span><span 
class="content">placedOn</span><span class="delimiter">"</span></span>, <span 
class="string"><span class="delimiter">"</span><span 
class="content">state</span><span class="delimiter">"</span></span>, <span 
class="string"><span class="delimiter">"</span><span 
class="content">shippedOn</span><span class="delimiter">"</span></span>)
-             : <span class="predefined-constant">null</span>;
-    }
-    <span class="directive">public</span> <span 
class="predefined-type">List</span>&lt;<span 
class="predefined-type">String</span>&gt; orderStandalone(
-            <span class="directive">final</span> <span 
class="predefined-type">Class</span>&lt;?&gt; collectionType,
-            <span class="directive">final</span> <span 
class="predefined-type">List</span>&lt;<span 
class="predefined-type">String</span>&gt; propertyIds) {
-        <span class="keyword">return</span> <span 
class="predefined-constant">null</span>;
-    }
-}</code></pre> 
+         <div class="ulist"> 
+          <ul> 
+           <li> <p>file-based layouts are not typesafe: a typo will result in 
the metadata not being picked up for the element.</p> </li> 
+           <li> <p>they also suffer from syntactic fragility: an invalid XML 
document will result in no metadata for the entire class.</p> </li> 
+          </ul> 
+         </div> 
+         <div class="paragraph"> 
+          <p>The <code>menubars.layout.xml</code> file is just the serialized 
form of a <a 
href="../rgcms/rgcms.html#_rgcms_classes_layout"><code>MenuBars</code></a> 
layout class defined within Apache Isis' applib. These are JAXB-annotated 
classes with corresponding XSD schemas; the upshot of that is that IDEs such as 
IntelliJ and Eclipse can provide "intellisense", making it easy to author such 
layout files.</p> 
+         </div> 
+         <div class="sect3"> 
+          <h4 id="_obtaining_an_initial_layout">4.2.1. Obtaining an initial 
layout</h4> 
+          <div class="paragraph"> 
+           <p>An initial <code>menubars.layout.xml</code> - capturing any 
existing metadata either implicit or explicitly specified through annotations 
can be downloaded from the <a 
href="../rgsvc/rgsvc.html#_rgsvc_metadata-api_MenuBarsService"><code>MenuBarsService</code></a>
 (exposed on the prototyping menu):</p> 
+          </div> 
+          <div class="imageblock"> 
+           <div class="content"> 
+            <a class="image" href="images//menubars/010-download.png"><img 
src="images//menubars/010-download.png" alt="010 download" width="300px"></a> 
+           </div> 
+          </div> 
+          <div class="paragraph"> 
+           <p>This action allows either the "Default" or the "Fallback" layout 
to be downloaded.</p> 
+          </div> 
+          <div class="imageblock"> 
+           <div class="content"> 
+            <a class="image" href="images//menubars/020-download.png"><img 
src="images//menubars/020-download.png" alt="020 download" width="400px"></a> 
+           </div> 
+          </div> 
+          <div class="paragraph"> 
+           <p>The "Default" layout is that currently in use, while the 
"Fallback" layout is that provided only from the annotations. Initially these 
are identical.</p> 
+          </div> 
+          <div class="paragraph"> 
+           <p>For example, here’s a fragment of that provided by the 
simpleapp archetype:</p> 
+          </div> 
+          <div class="listingblock"> 
+           <div class="content"> 
+            <pre class="CodeRay highlight"><code data-lang="xml"><span 
class="preprocessor">&lt;?xml version="1.0" encoding="UTF-8" 
standalone="yes"?&gt;</span>
+<span class="tag">&lt;mb3:menuBars</span>
+    <span class="attribute-name">xsi:schemaLocation</span>=<span 
class="string"><span class="delimiter">"</span><span 
class="content">...</span><span class="delimiter">"</span></span>
+    <span class="attribute-name">xmlns:cpt</span>=<span class="string"><span 
class="delimiter">"</span><span 
class="content">http://isis.apache.org/applib/layout/component</span><span 
class="delimiter">"</span></span>
+    <span class="attribute-name">xmlns:lnk</span>=<span class="string"><span 
class="delimiter">"</span><span 
class="content">http://isis.apache.org/applib/layout/links</span><span 
class="delimiter">"</span></span>
+    <span class="attribute-name">xmlns:mb3</span>=<span class="string"><span 
class="delimiter">"</span><span 
class="content">http://isis.apache.org/applib/layout/menubars/bootstrap3</span><span
 class="delimiter">"</span></span>
+    <span class="attribute-name">xmlns:xsi</span>=<span class="string"><span 
class="delimiter">"</span><span 
class="content">http://www.w3.org/2001/XMLSchema-instance</span><span 
class="delimiter">"</span></span><span class="tag">&gt;</span>
+    <span class="tag">&lt;mb3:primary&gt;</span>
+        <span class="tag">&lt;mb3:menu&gt;</span>
+            <span class="tag">&lt;mb3:named&gt;</span>Simple Objects<span 
class="tag">&lt;/mb3:named&gt;</span>
+            <span class="tag">&lt;mb3:section&gt;</span>
+                <span class="tag">&lt;mb3:serviceAction</span> <span 
class="attribute-name">objectType</span>=<span class="string"><span 
class="delimiter">"</span><span 
class="content">simple.SimpleObjectMenu</span><span 
class="delimiter">"</span></span> <span class="attribute-name">id</span>=<span 
class="string"><span class="delimiter">"</span><span 
class="content">listAll</span><span class="delimiter">"</span></span><span 
class="tag">&gt;</span>
+                    <span class="tag">&lt;cpt:named&gt;</span>List All<span 
class="tag">&lt;/cpt:named&gt;</span>
+                <span class="tag">&lt;/mb3:serviceAction&gt;</span>
+                <span class="tag">&lt;mb3:serviceAction</span> <span 
class="attribute-name">objectType</span>=<span class="string"><span 
class="delimiter">"</span><span 
class="content">simple.SimpleObjectMenu</span><span 
class="delimiter">"</span></span> <span class="attribute-name">id</span>=<span 
class="string"><span class="delimiter">"</span><span 
class="content">findByName</span><span class="delimiter">"</span></span><span 
class="tag">&gt;</span>
+                    <span class="tag">&lt;cpt:named&gt;</span>Find By 
Name<span class="tag">&lt;/cpt:named&gt;</span>
+                <span class="tag">&lt;/mb3:serviceAction&gt;</span>
+                <span class="tag">&lt;mb3:serviceAction</span> <span 
class="attribute-name">objectType</span>=<span class="string"><span 
class="delimiter">"</span><span 
class="content">simple.SimpleObjectMenu</span><span 
class="delimiter">"</span></span> <span class="attribute-name">id</span>=<span 
class="string"><span class="delimiter">"</span><span 
class="content">create</span><span class="delimiter">"</span></span><span 
class="tag">&gt;</span>
+                    <span class="tag">&lt;cpt:named&gt;</span>Create<span 
class="tag">&lt;/cpt:named&gt;</span>
+                <span class="tag">&lt;/mb3:serviceAction&gt;</span>
+            <span class="tag">&lt;/mb3:section&gt;</span>
+        <span class="tag">&lt;/mb3:menu&gt;</span>
+        <span class="tag">&lt;mb3:menu</span> <span 
class="attribute-name">unreferencedActions</span>=<span class="string"><span 
class="delimiter">"</span><span class="content">true</span><span 
class="delimiter">"</span></span><span class="tag">&gt;</span>
+            <span class="tag">&lt;mb3:named&gt;</span>Other<span 
class="tag">&lt;/mb3:named&gt;</span>
+        <span class="tag">&lt;/mb3:menu&gt;</span>
+    <span class="tag">&lt;/mb3:primary&gt;</span>
+    <span class="tag">&lt;mb3:secondary&gt;</span>
+        <span class="tag">&lt;mb3:menu&gt;</span>
+            <span class="tag">&lt;mb3:named&gt;</span>Prototyping<span 
class="tag">&lt;/mb3:named&gt;</span>
+            ...
+    <span class="tag">&lt;/mb3:secondary&gt;</span>
+    <span class="tag">&lt;mb3:tertiary&gt;</span>
+        <span class="tag">&lt;mb3:menu&gt;</span>
+            ...
+        <span class="tag">&lt;/mb3:menu&gt;</span>
+    <span class="tag">&lt;/mb3:tertiary&gt;</span>
+<span class="tag">&lt;/mb3:menuBars&gt;</span></code></pre> 
+           </div> 
+          </div> 
+          <div class="paragraph"> 
+           <p>Note the "Other" menu, with <code>unreferencedActions</code> 
attribute set to <code>true</code>. For a layout file to be valid there must be 
exactly one <code>&lt;menu&gt;</code> with this attribute set. Any domain 
service actions that are not explicitly listed will be placed under this 
menu.</p> 
           </div> 
          </div> 
-         <div class="colist arabic"> 
-          <table> 
-           <tbody>
-            <tr> 
-             <td><i class="conum" data-value="1"></i><b>1</b></td> 
-             <td>specifies the order in which the 
<code>TableColumnOrderService</code> implementations are called.</td> 
-            </tr> 
-           </tbody>
-          </table> 
+         <div class="sect3"> 
+          <h4 id="_adjusting_the_layout">4.2.2. Adjusting the layout</h4> 
+          <div class="paragraph"> 
+           <p>The downloaded <code>menubars.layout.xml</code> file can be 
adjusted as necessary, creating new menus and menu sections. Once done, it can 
be saved in the same package as the <code>AppManifest</code> used to bootstrap 
the application. Subsequently, the file is then parsed and used when the 
application is started.</p> 
+          </div> 
+          <div class="paragraph"> 
+           <p>If running in prototype mode, the file will be dynamically 
reloaded from the classpath.</p> 
+          </div> 
+          <div class="paragraph"> 
+           <p>Once the application has bootstrapped with a layout file, 
downloading the "Default" layout (from the prototyping menu) in essence just 
returns this file.</p> 
+          </div> 
+          <div class="admonitionblock tip"> 
+           <table> 
+            <tbody>
+             <tr> 
+              <td class="icon"> <i class="fa icon-tip" title="Tip"></i> </td> 
+              <td class="content"> 
+               <div class="paragraph"> 
+                <p>If, when the application is run, unwanted service actions 
are shown in the "Other" menu (which you would like to place elsewhere), then 
download the "Default" layout again. The downloaded file will list out all 
these domain service actions, so that they can easily be moved elsewhere.</p> 
+               </div> </td> 
+             </tr> 
+            </tbody>
+           </table> 
+          </div> 
          </div> 
         </div> 
        </div> 
       </div> 
       <div class="sect1"> 
-       <h2 id="_ugvw_configuration-properties">4. Configuration Properties</h2>
+       <h2 id="_ugvw_configuration-properties">5. Configuration Properties</h2>
        <div class="btn-group" style="float: right; font-size: small; padding: 
6px; margin-top: -55px; ">
         <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_configuration-properties.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
         <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -2273,7 +2422,7 @@ table.CodeRay td.code>pre{padding:0}
            <td class="tableblock halign-left valign-top">
             <div>
              <div class="paragraph"> 
-              <p><code>isis.viewer.wicket.</code><br> 
<code>disableDependentChoiceAutoSelection</code></p> 
+              <p><code>isis.viewer.wicket.</code><br> 
<code>disableDependent</code><br> <code>ChoiceAutoSelection</code></p> 
              </div>
             </div></td> 
            <td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>true</code>,<code>false</code><br> 
(<code><em>false</em></code>)</p></td> 
@@ -2339,7 +2488,7 @@ table.CodeRay td.code>pre{padding:0}
            <td class="tableblock halign-left valign-top">
             <div>
              <div class="paragraph"> 
-              <p><code>isis.viewer.wicket.</code><br> 
<code>maxTitleLengthInParentedTables</code></p> 
+              <p><code>isis.viewer.wicket.</code><br> 
<code>maxTitleLength</code><br> <code>InParentedTables</code></p> 
              </div>
             </div></td> 
            <td class="tableblock halign-left valign-top"><p 
class="tableblock">+ve integer<br> (<code><em>12</em></code>)</p></td> 
@@ -2354,7 +2503,7 @@ table.CodeRay td.code>pre{padding:0}
            <td class="tableblock halign-left valign-top">
             <div>
              <div class="paragraph"> 
-              <p><code>isis.viewer.wicket.</code><br> 
<code>maxTitleLengthInStandaloneTables</code></p> 
+              <p><code>isis.viewer.wicket.</code><br> 
<code>maxTitleLength</code><br> <code>InStandaloneTables</code></p> 
              </div>
             </div></td> 
            <td class="tableblock halign-left valign-top"><p 
class="tableblock">+ve integer,<br> (<code><em>12</em></code>)</p></td> 
@@ -2384,7 +2533,7 @@ table.CodeRay td.code>pre{padding:0}
            <td class="tableblock halign-left valign-top">
             <div>
              <div class="paragraph"> 
-              <p><code>isis.viewer.wicket.</code><br> 
<code>preventDoubleClickForFormSubmit</code></p> 
+              <p><code>isis.viewer.wicket.</code><br> 
<code>preventDoubleClick</code><br> <code>ForFormSubmit</code></p> 
              </div>
             </div></td> 
            <td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>true</code>,<code>false</code><br> 
(<code><em>true</em></code>)</p></td> 
@@ -2399,7 +2548,7 @@ table.CodeRay td.code>pre{padding:0}
            <td class="tableblock halign-left valign-top">
             <div>
              <div class="paragraph"> 
-              <p><code>isis.viewer.wicket.</code><br> 
<code>preventDoubleClickForNoArgAction</code></p> 
+              <p><code>isis.viewer.wicket.</code><br> 
<code>preventDoubleClick</code><br> <code>ForNoArgAction</code></p> 
              </div>
             </div></td> 
            <td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>true</code>,<code>false</code><br> 
(<code><em>true</em></code>)</p></td> 
@@ -2481,7 +2630,7 @@ table.CodeRay td.code>pre{padding:0}
            <td class="tableblock halign-left valign-top">
             <div>
              <div class="paragraph"> 
-              <p><code>isis.viewer.wicket.</code><br> 
<code>replaceDisabledTagWithReadonlyTag</code></p> 
+              <p><code>isis.viewer.wicket.</code><br> 
<code>replaceDisabledTag</code>-<br> <code>WithReadonlyTag</code></p> 
              </div>
             </div></td> 
            <td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>true</code>,<code>false</code><br> 
(<code><em>true</em></code>)</p></td> 
@@ -2699,15 +2848,116 @@ table.CodeRay td.code>pre{padding:0}
              <div class="paragraph"> 
               <p>Whether the WicketSource plugin should be enabled; by default 
it is not enabled.</p> 
              </div> 
+             <div class="admonitionblock warning"> 
+              <table> 
+               <tbody>
+                <tr> 
+                 <td class="icon"> <i class="fa icon-warning" 
title="Warning"></i> </td> 
+                 <td class="content"> 
+                  <div class="paragraph"> 
+                   <p>Enabling this setting can significantly slow down 
rendering performance of the Wicket viewer.</p> 
+                  </div> </td> 
+                </tr> 
+               </tbody>
+              </table> 
+             </div>
+            </div></td> 
+          </tr> 
+         </tbody> 
+        </table> 
+        <div class="paragraph"> 
+         <p>Also:</p> 
+        </div> 
+        <table class="tableblock frame-all grid-all spread"> 
+         <colgroup> 
+          <col style="width: 33.3333%;"> 
+          <col style="width: 16.6666%;"> 
+          <col style="width: 50.0001%;"> 
+         </colgroup> 
+         <thead> 
+          <tr> 
+           <th class="tableblock halign-left valign-top">Property</th> 
+           <th class="tableblock halign-left valign-top">Value<br> (default 
value)</th> 
+           <th class="tableblock halign-left valign-top">Description</th> 
+          </tr> 
+         </thead> 
+         <tbody> 
+          <tr> 
+           <td class="tableblock halign-left valign-top">
+            <div>
+             <div class="paragraph"> 
+              <p><code>isis.viewers.</code><br> 
<code>paged.parented</code></p> 
+             </div>
+            </div></td> 
+           <td class="tableblock halign-left valign-top"><p 
class="tableblock">positive integer (12)</p></td> 
+           <td class="tableblock halign-left valign-top">
+            <div>
+             <div class="paragraph"> 
+              <p>Default page size for parented collections (as owned by an 
object, eg <code>Customer#getOrders()</code>)</p> 
+             </div>
+            </div></td> 
+          </tr> 
+          <tr> 
+           <td class="tableblock halign-left valign-top">
+            <div>
+             <div class="paragraph"> 
+              <p><code>isis.viewers.</code><br> 
<code>paged.standalone</code></p> 
+             </div>
+            </div></td> 
+           <td class="tableblock halign-left valign-top"><p 
class="tableblock">positive integer (25)</p></td> 
+           <td class="tableblock halign-left valign-top">
+            <div>
+             <div class="paragraph"> 
+              <p>Default page size for standalone collections (as returned 
from an action invocation)</p> 
+             </div>
+            </div></td> 
+          </tr> 
+          <tr> 
+           <td class="tableblock halign-left valign-top">
+            <div>
+             <div class="paragraph"> 
+              <p><code>isis.viewers.</code><br> 
<code>propertyLayout.</code><br> <code>labelPosition</code></p> 
+             </div>
+            </div></td> 
+           <td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>TOP</code>, <code>LEFT</code><br> 
(<code>LEFT</code>)</p></td> 
+           <td class="tableblock halign-left valign-top">
+            <div>
+             <div class="paragraph"> 
+              <p>Default for label position for all properties if not 
explicitly specified using <a 
href="../rgant/rgant.html#_rgant-PropertyLayout_labelPosition"><code>@PropertyLayout#labelPosition()</code></a></p>
 
+             </div> 
+             <div class="paragraph"> 
+              <p>If you want a consistent look-n-feel throughout the app, eg 
all property labels to the top, then it’d be rather frustrating to have to 
annotate every property.</p> 
+             </div> 
              <div class="paragraph"> 
-              <p>Prior to <code>1.12.0</code> this was enabled by default for 
prototyping (not production). However it can significantly slow down rendering, 
hence the introduction of this configuration setting.</p> 
+              <p>If these are not present then Apache Isis will render 
according to internal defaults. At the time of writing, this means labels are 
to the left for all datatypes except multiline strings.</p> 
+             </div>
+            </div></td> 
+          </tr> 
+          <tr> 
+           <td class="tableblock halign-left valign-top">
+            <div>
+             <div class="paragraph"> 
+              <p><code>isis.viewers.</code><br> 
<code>collectionLayout.</code><br> <code>defaultView</code></p> 
+             </div>
+            </div></td> 
+           <td class="tableblock halign-left valign-top"><p 
class="tableblock"><code>hidden</code>, <code>table</code><br> 
(<code>hidden</code>)</p></td> 
+           <td class="tableblock halign-left valign-top">
+            <div>
+             <div class="paragraph"> 
+              <p>Default for the default view for all (parented) collections 
if not explicitly specified using <a 
href="../rgant/rgant.html#_rgant-CollectionLayout_defaultView"><code>@CollectionLayout#defaultView()</code></a></p>
 
+             </div> 
+             <div class="paragraph"> 
+              <p>By default the framework renders (parented) collections as 
"hidden", ie collapsed. These can be overridden on a case-by-case basis using 
the <a 
href="../rgant/rgant.html#_rgant-CollectionLayout_defaultView"><code>@CollectionLayout#defaultView()</code></a>
 or the corresponding <code>&lt;collectionLayout 
defaultView="…​"&gt;</code> element in the <code>Xxx.layout.xml</code> 
layout file.</p> 
+             </div> 
+             <div class="paragraph"> 
+              <p>If the majority of collections should be displayed as "table" 
form, then it is more convenient to specify the default view globally.</p> 
              </div>
             </div></td> 
           </tr> 
          </tbody> 
         </table> 
         <div class="sect2"> 
-         <h3 id="_ugvw_configuration-properties_abbreviating-titles">4.1. 
Abbreviating/suppressing titles in tables</h3>
+         <h3 id="_ugvw_configuration-properties_abbreviating-titles">5.1. 
Abbreviating/suppressing titles in tables</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_configuration-properties_abbreviating-titles.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -2746,7 +2996,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_configuration-properties_suppressing-remember-me">4.2. 
Suppressing 'remember me'</h3>
+         <h3 id="_ugvw_configuration-properties_suppressing-remember-me">5.2. 
Suppressing 'remember me'</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_configuration-properties_suppressing-remember-me.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -2761,7 +3011,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           <p>The 'remember me' checkbox on the login page can be suppressed, 
if required, by setting a configuration flag.</p> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_screenshots_6">4.2.1. Screenshots</h4> 
+          <h4 id="_screenshots_6">5.2.1. Screenshots</h4> 
           <div class="paragraph"> 
            <p>With 'remember me' not suppressed (the default):</p> 
           </div> 
@@ -2780,7 +3030,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           </div> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_configuration_4">4.2.2. Configuration</h4> 
+          <h4 id="_configuration_4">5.2.2. Configuration</h4> 
           <div class="paragraph"> 
            <p>To suppress the 'remember me' checkbox, add the following 
configuration flag:</p> 
           </div> 
@@ -2792,7 +3042,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_configuration-properties_suppressing-sign-up">4.3. 
Suppressing 'sign up'</h3>
+         <h3 id="_ugvw_configuration-properties_suppressing-sign-up">5.3. 
Suppressing 'sign up'</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_configuration-properties_suppressing-sign-up.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -2810,7 +3060,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           <p>The 'sign up' link can be suppressed, if required, by setting a 
configuration flag.</p> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_screenshots_7">4.3.1. Screenshots</h4> 
+          <h4 id="_screenshots_7">5.3.1. Screenshots</h4> 
           <div class="paragraph"> 
            <p>With 'sign up' not suppressed (the default):</p> 
           </div> 
@@ -2829,7 +3079,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           </div> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_configuration_5">4.3.2. Configuration</h4> 
+          <h4 id="_configuration_5">5.3.2. Configuration</h4> 
           <div class="paragraph"> 
            <p>To suppress the 'sign up' link, add the following configuration 
flag:</p> 
           </div> 
@@ -2840,14 +3090,14 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           </div> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_see_also">4.3.3. See also</h4> 
+          <h4 id="_see_also">5.3.3. See also</h4> 
           <div class="paragraph"> 
            <p>The <a 
href="../ugvw/ugvw.html#_ugvw_configuration-properties_suppressing-password-reset">password
 reset link</a> can be suppressed in a similar manner.</p> 
           </div> 
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 
id="_ugvw_configuration-properties_suppressing-password-reset">4.4. Suppressing 
'password reset'</h3>
+         <h3 
id="_ugvw_configuration-properties_suppressing-password-reset">5.4. Suppressing 
'password reset'</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_configuration-properties_suppressing-password-reset.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -2865,7 +3115,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           <p>The 'password reset' link can be suppressed, if required, by 
setting a configuration flag.</p> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_screenshots_8">4.4.1. Screenshots</h4> 
+          <h4 id="_screenshots_8">5.4.1. Screenshots</h4> 
           <div class="paragraph"> 
            <p>With 'password reset' not suppressed (the default):</p> 
           </div> 
@@ -2884,7 +3134,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           </div> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_configuration_6">4.4.2. Configuration</h4> 
+          <h4 id="_configuration_6">5.4.2. Configuration</h4> 
           <div class="paragraph"> 
            <p>To suppress the 'password reset' link, add the following 
configuration flag:</p> 
           </div> 
@@ -2898,14 +3148,14 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           </div> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_see_also_2">4.4.3. See also</h4> 
+          <h4 id="_see_also_2">5.4.3. See also</h4> 
           <div class="paragraph"> 
            <p>The <a 
href="../ugvw/ugvw.html#_ugvw_configuration-properties_suppressing-sign-up">sign
 up link</a> can be suppressed in a similar manner.</p> 
           </div> 
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_configuration-properties_stripped-wicket-tags">4.5. 
Stripped Wicket tags</h3>
+         <h3 id="_ugvw_configuration-properties_stripped-wicket-tags">5.5. 
Stripped Wicket tags</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_configuration-properties_stripped-wicket-tags.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -2942,7 +3192,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_configuration-properties_showing-theme-chooser">4.6. 
Showing a theme chooser</h3>
+         <h3 id="_ugvw_configuration-properties_showing-theme-chooser">5.6. 
Showing a theme chooser</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_configuration-properties_showing-theme-chooser.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -3011,7 +3261,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
        </div> 
       </div> 
       <div class="sect1"> 
-       <h2 id="_ugvw_customisation">5. Customisation</h2>
+       <h2 id="_ugvw_customisation">6. Customisation</h2>
        <div class="btn-group" style="float: right; font-size: small; padding: 
6px; margin-top: -55px; ">
         <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_customisation.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
         <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -3024,7 +3274,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
        </div> 
        <div class="sectionbody"> 
         <div class="sect2"> 
-         <h3 id="_ugvw_customisation_brand-logo">5.1. Brand logo</h3>
+         <h3 id="_ugvw_customisation_brand-logo">6.1. Brand logo</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_customisation_brand-logo.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -3039,7 +3289,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           <p>By default the Wicket viewer will display the application name 
top-left in the header menu. This can be changed to display a png logo 
instead.</p> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_screenshots_9">5.1.1. Screenshots</h4> 
+          <h4 id="_screenshots_9">6.1.1. Screenshots</h4> 
           <div class="paragraph"> 
            <p>The screenshot below shows the Isis addons example <a 
href="https://github.com/isisaddons/isis-app-todoapp/";>todoapp</a> (not ASF) 
with a 'brand logo' image in its header:</p> 
           </div> 
@@ -3058,7 +3308,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           </div> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_configuration_7">5.1.2. Configuration</h4> 
+          <h4 id="_configuration_7">6.1.2. Configuration</h4> 
           <div class="paragraph"> 
            <p>In the application-specific subclass of 
<code>IsisWicketApplication</code>, bind:</p> 
           </div> 
@@ -3110,7 +3360,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_customisation_default-theme">5.2. Specifying a default 
theme</h3>
+         <h3 id="_ugvw_customisation_default-theme">6.2. Specifying a default 
theme</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_customisation_default-theme.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -3142,7 +3392,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_customisation_welcome-page">5.3. Welcome page</h3>
+         <h3 id="_ugvw_customisation_welcome-page">6.3. Welcome page</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_customisation_welcome-page.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -3196,7 +3446,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_customisation_about-page">5.4. About page</h3>
+         <h3 id="_ugvw_customisation_about-page">6.4. About page</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_customisation_about-page.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -3211,7 +3461,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           <p>Isis' Wicket viewer has an About page that, by default, will 
provide a dump of the JARs that make up the webapp. This page will also show 
the manifest attributes of the WAR archive itself, if there are any. One of 
these attributes may also be used as the application version number.</p> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_screenshot">5.4.1. Screenshot</h4> 
+          <h4 id="_screenshot">6.4.1. Screenshot</h4> 
           <div class="paragraph"> 
            <p>Here’s what the About page looks like with this configuration 
added:</p> 
           </div> 
@@ -3247,7 +3497,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           </div> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_configuration_8">5.4.2. Configuration</h4> 
+          <h4 id="_configuration_8">6.4.2. Configuration</h4> 
           <div class="sect4"> 
            <h5 id="_adding_attributes_to_the_war_s_manifest">Adding attributes 
to the WAR’s manifest</h5> 
            <div class="paragraph"> 
@@ -3340,7 +3590,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_customisation_tweaking-css-classes">5.5. Tweaking CSS 
classes</h3>
+         <h3 id="_ugvw_customisation_tweaking-css-classes">6.5. Tweaking CSS 
classes</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_customisation_tweaking-css-classes.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -3365,7 +3615,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           <p>These customizations should generally be added to <a 
href="../rgcfg/rgcfg.html#_rgcfg_application-specific_application-css"><code>application.css</code></a>;
 this file is included by default in every webpage served up by the Wicket 
viewer.</p> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_individual_members">5.5.1. Individual members</h4> 
+          <h4 id="_individual_members">6.5.1. Individual members</h4> 
           <div class="paragraph"> 
            <p>For example, the <code>ToDoItem</code> object of the Isis addons 
example <a href="https://github.com/isisaddons/isis-app-todoapp/";>todoapp</a> 
(not ASF) has a <code>notes</code> property. The HTML for this will be 
something like:</p> 
           </div> 
@@ -3405,7 +3655,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           </div> 
          </div> 
          <div class="sect3"> 
-          <h4 id="_custom_css_styles">5.5.2. Custom CSS styles</h4> 
+          <h4 id="_custom_css_styles">6.5.2. Custom CSS styles</h4> 
           <div class="paragraph"> 
            <p>The above technique works well if you know the class member to 
target, but you might instead want to apply a custom style to a set of members. 
For this, you can use the <code>@CssClass</code>.</p> 
           </div> 
@@ -3447,7 +3697,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           </div> 
          </div> 
          <div class="sect3"> 
-          <h4 
id="__ugvw_customisation_tweaking-css-classes_columns-in-tables">5.5.3. Table 
columns</h4> 
+          <h4 
id="__ugvw_customisation_tweaking-css-classes_columns-in-tables">6.5.3. Table 
columns</h4> 
           <div class="paragraph"> 
            <p>Sometimes you may want to apply styling to specific columns of 
tables. For example, you might want to adjust width so that for certain 
properties have more (or less) room than they otherwise would; or you might 
want to hide the column completely. This also applies to the initial icon/title 
column.</p> 
           </div> 
@@ -3615,7 +3865,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_customisation_cheap-n-cheerful-theme">5.6. 
Cheap-n-cheerful theme</h3>
+         <h3 id="_ugvw_customisation_cheap-n-cheerful-theme">6.6. 
Cheap-n-cheerful theme</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_customisation_cheap-n-cheerful-theme.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -3657,7 +3907,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_customisation_using-different-css-file">5.7. Using a 
different CSS file</h3>
+         <h3 id="_ugvw_customisation_using-different-css-file">6.7. Using a 
different CSS file</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_customisation_using-different-css-file.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -3698,7 +3948,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_customisation_custom-javascript">5.8. Custom 
Javascript</h3>
+         <h3 id="_ugvw_customisation_custom-javascript">6.8. Custom 
Javascript</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_customisation_custom-javascript.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -3757,7 +4007,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_customisation_auto-refresh">5.9. Auto-refresh page</h3>
+         <h3 id="_ugvw_customisation_auto-refresh">6.9. Auto-refresh page</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_customisation_auto-refresh.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -3807,7 +4057,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
          </div> 
         </div> 
         <div class="sect2"> 
-         <h3 id="_ugvw_customisation_request-parameters">5.10. Embedded 
View</h3>
+         <h3 id="_ugvw_customisation_request-parameters">6.10. Embedded 
View</h3>
          <div class="btn-group" style="float: right; font-size: small; 
padding: 6px; margin-top: -55px; ">
           <button type="button" class="btn btn-xs btn-default" 
onclick="window.location.href=&quot;https://github.com/apache/isis/edit/master/adocs/documentation/src/main/asciidoc/guides/ugvw/_ugvw_customisation_request-parameters.adoc&quot;";><i
 class="fa fa-pencil-square-o"></i>&nbsp;Edit</button>
           <button type="button" class="btn btn-xs btn-default dropdown-toggle" 
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span 
class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>
@@ -3825,7 +4075,7 @@ 
isis.viewer.wicket.maxTitleLengthInParentedTables=8</code></pre>
           <p>Currently this support consists simply of being able

<TRUNCATED>

Reply via email to