You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2015/06/05 13:56:22 UTC
[14/51] [abbrv] isis git commit: ISIS-1133: more fixing of references.
ISIS-1133: more fixing of references.
Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/505a311e
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/505a311e
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/505a311e
Branch: refs/heads/master
Commit: 505a311e1281b2b952600cbcb535664fb49dd7d1
Parents: 2af3ad9
Author: Dan Haywood <da...@haywood-associates.co.uk>
Authored: Thu May 28 14:29:49 2015 +0100
Committer: Dan Haywood <da...@haywood-associates.co.uk>
Committed: Thu May 28 14:29:49 2015 +0100
----------------------------------------------------------------------
...tutorials_stop-scaffolding-start-coding.adoc | 108 +++++++++----------
.../asciidoc/user-guide/_ug_wicket-viewer.adoc | 2 +-
..._wicket-viewer_configuration-properties.adoc | 16 +--
...ration-properties_showing-theme-chooser.adoc | 4 +-
...n-properties_suppressing-password-reset.adoc | 2 +-
...guration-properties_suppressing-sign-up.adoc | 2 +-
...er_customisation_cheap-n-cheerful-theme.adoc | 2 +-
...-viewer_customisation_custom-javascript.adoc | 2 +-
...cket-viewer_customisation_default-theme.adoc | 2 +-
9 files changed, 69 insertions(+), 71 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/isis/blob/505a311e/adocs/documentation/src/main/asciidoc/user-guide/_ug_tutorials_stop-scaffolding-start-coding.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_ug_tutorials_stop-scaffolding-start-coding.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_ug_tutorials_stop-scaffolding-start-coding.adoc
index 38a460e..6a10af4 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_ug_tutorials_stop-scaffolding-start-coding.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_ug_tutorials_stop-scaffolding-start-coding.adoc
@@ -306,12 +306,12 @@ Domain entities have state: either values (primitives, strings) or references to
* update the corresponding domain service for creating new instances
* for all non-optional properties will either need to prompt for a value, or calculate some suitable default
* change the implementation of title, if need be
-* revisit the title, consider whether to use the xref:__code_Title_code[`@Title`] annotation
-** rather than the xref:__code_title_code[`title()`] `title()` method
-* order the properties using the xref:__code_MemberOrder_code[`@MemberOrder`], also `@MemberGroupLayout`
-** see also the docs on xref:_static_layouts[static layouts]
-* use the xref:__code_PropertyLayout_code[`@PropertyLayout`] annotation to position property/action parameter labels either to the LEFT, TOP or NONE
-** do the same for parameters using xref:__code_ParameterLayout_code[`@ParameterLayout`]
+* revisit the title, consider whether to use the xref:_ug_reference-annotations_manpage-Title[`@Title`] annotation
+** rather than the xref:_ug_reference-methods_reserved_manpage-title[`title()`] `title()` method
+* order the properties using the xref:_ug_reference-annotations_manpage-MemberOrder[`@MemberOrder`], also `@MemberGroupLayout`
+** see also the docs on xref:_ug_wicket-viewer_layout_static-object-layout[static layouts]
+* use the xref:_ug_reference-annotations_manpage-PropertyLayout[`@PropertyLayout`] annotation to position property/action parameter labels either to the LEFT, TOP or NONE
+** do the same for parameters using xref:_ug_reference-annotations_manpage-ParameterLayout[`@ParameterLayout`]
@@ -320,16 +320,16 @@ Domain entities have state: either values (primitives, strings) or references to
Domain entities can also reference other domain entities. These references may be either scalar (single-valued) or vector (multi-valued). In this section we focus on scalar reference properties.
-* add some xref:_how_to_add_a_property_to_a_domain_entity[reference properties]
+* add some xref:_ug_how-tos_class-structure_properties[reference properties]
* update the corresponding domain service (for creation actoin)
* use different techniques to obtain references (shown in drop-down list box)
-** use the xref:__code_domainobjectlayout_code[`@DomainObjectLayout(bounded=...)`] annotation on the referenced type if there are only a small number (bounded) of instances
-** use a xref:__code_choices_code[`choices...()`] supporting method
-*** on a xref:_how_to_specify_a_set_of_choices_for_a_property[property]
-*** on a xref:_how_to_specify_a_set_of_choices_for_a_parameter[action parameter]
-** use a xref:__code_autoComplete_code[`autoComplete...()`] supporting method
-*** on a xref:_how_to_specify_a_set_of_autoComplete_for_a_property[property]
-*** on a xref:_how_to_specify_a_set_of_autoComplete_for_a_parameter[action parameter]
+** use the xref:_ug_reference-annotations_manpage-DomainObject_bounded[`@DomainObjectLayout(bounded=...)`] annotation on the referenced type if there are only a small number (bounded) of instances
+** use a xref:_ug_reference-methods_prefixes_manpage-choices[`choices...()`] supporting method
+*** on a property
+*** on an action parameter
+** use a xref:_ug_reference-annotations_manpage-DomainObject_autoComplete[`autoComplete...()`] supporting method
+*** on a property
+*** on an action parameter
@@ -338,7 +338,7 @@ Domain entities can also reference other domain entities. These references may b
Quick detour: often we want to set up defaults to go with choices. Sensible defaults for action parameters can really improve the usability of the app.
-* Add xref:_how_to_specify_default_values_for_a_parameter[defaults] for action parameters
+* Add xref:_ug_how-tos_drop-downs-and-defaults[defaults] for action parameters
@@ -348,12 +348,12 @@ Quick detour: often we want to set up defaults to go with choices. Sensible defa
Returning back to references, Isis also supports vector (multi-valued) references to another object instances� in other words collections. We sometimes called these "parented" collections (to distinguish from a "standalone" collection as returned from an action)
* Ensure that all domain classes implement `java.lang.Comparable`
-** use the xref:__code_objectcontracts_code[`ObjectContracts`] utility class to help implement `Comparable`
+** use the xref:_ug_reference-classes_utility_manpage-ObjectContracts[`ObjectContracts`] utility class to help implement `Comparable`
*** you can also `equals()`, `hashCode()`, `toString()`
-* Add a xref:_how_to_create_a_1_to_m_collection[collection] to one of the entities
+* Add a xref:_ug_how-tos_class-structure_collections[collection] to one of the entities
** Use `SortedSet` as the class
-** Use the xref:__code_collectionlayout_code[`@CollectionLayout(render=...)`] annotation to indicate if the collection should be visible or hidden by default
-* optional: use the xref:__code_collectionlayout_code[`@CollectionLayout(sortedBy=...)`] annotation to specify a different comparator than the natural ordering
+** Use the xref:_ug_reference-annotations_manpage-CollectionLayout_render[`@CollectionLayout(render=...)`] annotation to indicate if the collection should be visible or hidden by default
+* optional: use the xref:_ug_reference-annotations_manpage-CollectionLayout_sortedBy[`@CollectionLayout(sortedBy=...)`] annotation to specify a different comparator than the natural ordering
@@ -365,9 +365,9 @@ The Wicket UI doesn't allow collections to be modified (added to/removed from).
* Add domain actions to add/remove from the collection
* to create objects, xref:how_to_inject_srvices_into_a_domain_entity_or_other_service[inject] associated domain service
-** generally we recommend using the xref:__code_inject_code[`@Inject`] annotation with either private or default visibility
-* the service itself should use xref:__code_domainobjectcontainer_code[`DomainObjectContainer`]
-* use the xref:__code_memberorder_code[`@MemberOrder(name=...)`] annotation to associate an action with a property or with a collection
+** generally we recommend using the xref:_ug_reference-annotations_manpage-Inject[`@Inject`] annotation with either private or default visibility
+* the service itself should use xref:_ug_reference-services-api_manpage-DomainObjectContainer[`DomainObjectContainer`]
+* use the xref:_ug_reference-annotations_manpage-MemberOrder[`@MemberOrder(name=...)`] annotation to associate an action with a property or with a collection
@@ -376,11 +376,11 @@ The Wicket UI doesn't allow collections to be modified (added to/removed from).
CSS classes can be associated with any class member (property, collection, action). But for actions in particular:
-* the bootstrap "btn" CSS classes can be used using the xref:__code_actionlayout_code[`@ActionLayout(cssClass=...)`] annotation
+* the bootstrap "btn" CSS classes can be used using the xref:_ug_reference-annotations_manpage-ActionLayout_cssClass[`@ActionLayout(cssClass=...)`] annotation
-* the http://fortawesome.github.io/Font-Awesome/icons/[Font Awesome] icons can be used using the xref:__code_actionlayout_code[`@ActionLayout(cssClassFa=...)`]
+* the http://fortawesome.github.io/Font-Awesome/icons/[Font Awesome] icons can be used using the xref:_ug_reference-annotations_manpage-ActionLayout_cssClassFa[`@ActionLayout(cssClassFa=...)`]
-It's also possible to use Font Awesome icons for the xref:_how_to_specify_the_icon_for_a_domain_entity[domain object icon].
+It's also possible to use Font Awesome icons for the xref:_ug_how-tos_ui-hints_object-titles-and-icons[domain object icon].
So:
- for some of the actions of your domain services or entities, annotate using `@ActionLayout(cssClass=...)` or `@ActionLayout(cssClassFa=...)`
@@ -392,7 +392,7 @@ So:
Up to this point we've been using annotations (`@MemberOrder`, `@MemberGroupLayout`, `@Named`, `@PropertyLayout`, `@ParameterLayout`, `@ActionLayout` and so on) for UI hints. However, the feedback loop is not good: it requires us stopping the app, editing the code, recompiling and running again. So instead, all these UI hints (and more) can be specified dynamically, using a corresponding `.layout.json` file. If edited while the app is running, it will be reloaded automatically (in IntelliJ, use Run>Reload Changed Classes):
-* Delete the various hint annotations and instead specify layout hints using a xref:_dynamic_layouts[.layout.json] file.
+* Delete the various hint annotations and instead specify layout hints using a xref:_ug_wicket-viewer_layout_dynamic-object-layout[.layout.json] file.
@@ -410,30 +410,28 @@ Or, more pithily: "see it, use it, do it"
=== See it!
-* Use the xref:__code_property_code[`Property(hidden=...)`] annotation to make properties invisible
-** likewise xref:__code_collection_code[`@Collection(hidden=...)`] for collections
-** the xref:__code_programmatic_code[`@Programmatic`] annotation can also be used and in many cases is to be preferred; the difference is that the latter means the member is not part of the Isis metamodel.
-* Use the xref:__code_hide_code[`hide...()`] supporting method on xref:_how_to_hide_a_property[properties], xref:_how_to_hide_a_collection[collections] and xref:_how_to_hide_an_action[actions] to make a property/collection/action invisible according to some imperative rule
+* Use the xref:_ug_reference-annotations_manpage-Property_hidden[`Property(hidden=...)`] annotation to make properties invisible
+** likewise xref:_ug_reference-annotations_manpage-Collection_hidden[`@Collection(hidden=...)`] for collections
+** the xref:_ug_reference-annotations_manpage-Programmatic[`@Programmatic`] annotation can also be used and in many cases is to be preferred; the difference is that the latter means the member is not part of the Isis metamodel.
+* Use the xref:_ug_reference-methods_prefixes_manpage-hide[`hide...()`] supporting method on properties, collections and actions to make a property/collection/action invisible according to some imperative rule
=== Use it!
-* Use the xref:__code_property_code[`Property(editing=...)`] annotation to make property read-only
-** likewise xref:__code_collection_code[`@Collection(editing=...)`] for collections
-** alternatively, use xref:__code_domainobject_code[`@DomainObject(editing=...)`] to disable editing for all properties/collections
-* Use the xref:__code_disable_code[`disable...()`] supporting method on xref:_how_to_prevent_a_property_from_being_modified[properties] and xref:_how_to_prevent_an_action_from_being_invoked[actions] to make a property/action disabled according to some imperative rule
+* Use the xref:_ug_reference-annotations_manpage-Property_editing[`Property(editing=...)`] annotation to make property read-only
+** likewise xref:_ug_reference-annotations_manpage-Collection_editing[`@Collection(editing=...)`] for collections
+** alternatively, use xref:_ug_reference-annotations_manpage-DomainObject_editing[`@DomainObject(editing=...)`] to disable editing for all properties/collections
+* Use the xref:_ug_reference-methods_prefixes_manpage-disable[`disable...()`] supporting method on properties and actions to make a property/action disabled according to some imperative rule
=== Do it!
* Validate string properties or action parameters:
-* use the xref:__code_property_code[`@Property(regex=...)`] annotation to specify a pattern
-** and xref:<<__code_parameter_code[`@Parameter(regex=...)`] for parameters
-* use the xref:__code_property_code[`@Property(minLength=...)`] annotation to indicate a minimum number of characters
-** and xref:<<__code_parameter_code[`@Parameter(minLength=...)`] for parameters
-* Use the `validateXxx()` supporting method on xref:_how_to_validate_user_input_for_a_property[properties]] or xref:_how_to_validate_an_action_parameter_argument[action parameter]
+* use the xref:_ug_reference-annotations_manpage-Property_regex[`@Property(regex=...)`] annotation to specify a regex pattern for properties, and use xref:_ug_reference-annotations_manpage-Parameter_regex[`@Parameter(regex=...)`] for parameters
+* use the xref:_ug_reference-annotations_manpage-Property_maxLength[`@Property(maxLength=...)`] annotation to indicate a minimum number of characters, and xref:_ug_reference-annotations_manpage-Parameter_minLength[`@Parameter(minLength=...)`] for parameters
+* Use the xref:_ug_reference-methods_prefixes_manpage-validate[`validate...()`] supporting method on properties or action parameter
* optional: for any data type:
-** use the http://isis.apache.org/reference/recognized-annotations/MustSatisfy.html[@MustSatisfy] annotation to specify an arbitrary constraint
+** use the xref:_ug_reference-annotations_manpage-Property_mustSatisfy[`Property(mustSatisfy=...)`] and xref:_ug_reference-annotations_manpage-Parameter_mustSatisfy[`Parameter(mustSatisfy=...)`] annotations to specify arbitrary constraints on properties and parameters
@@ -442,7 +440,7 @@ Or, more pithily: "see it, use it, do it"
The Wicket UI will automatically invoke the "home page" action, if available. This is a no-arg action of one of the domain services, that can return either an object (eg representing the current user) or a standalone action.
-* Add the xref:__code_homepage_code[`@HomePage`] annotation to one (no more) of the domain services' no-arg actions
+* Add the xref:_ug_reference-annotations_manpage-HomePage[`@HomePage`] annotation to one (no more) of the domain services' no-arg actions
@@ -452,7 +450,7 @@ The Wicket UI will automatically invoke the "home page" action, if available. Th
To ensure testability, there should be no dependencies on system time, for example usage of `LocalDate.now()`. Instead the domain objects should delegate to the provided `ClockService`.
* remove any dependencies on system time (eg defaults for date/time action parameters)
-* inject xref:__code_clockservice_code[`ClockService`]
+* inject xref:_ug_reference-services-api_manpage-ClockService[`ClockService`]
* call `ClockService.now()` etc where required.
@@ -472,7 +470,7 @@ Finally, note that the layout of contributed actions/collections/properties can
* Write a new domain service
** by convention, called "XxxContributions"
-** annotate with xref:__code_domainservice_code[`@DomainService(natureOfService=VIEW_CONTRIBUTIONS_ONLY)`]
+** annotate with xref:_ug_reference-annotations_manpage-DomainService_nature[`@DomainService(nature=NatureOfService.VIEW_CONTRIBUTIONS_ONLY)`]
*** indicates that all of the service's actions should _not_ be included in the main application menu bar
*** should be rendered "as if" an action of the entity
* Write an action accepting >1 args:
@@ -485,7 +483,7 @@ Finally, note that the layout of contributed actions/collections/properties can
* Write a query-only action accepting exactly 1 arg (a domain entity)
* returning a collection, list or set
* For this action:
-** add the xref:__code_actionlayout_code[`@ActionLayout(contributedAs=ASSOCIATION)`] annotation
+** add the xref:_ug_reference-annotations_manpage-ActionLayout_contributedAs[`@ActionLayout(contributedAs=ASSOCIATION)`] annotation
** should be rendered in the UI "as if" a collection of the entity
* use `.layout.json` to position as required
@@ -495,7 +493,7 @@ Finally, note that the layout of contributed actions/collections/properties can
* As for contributed collections, write a new domain service with a query-only action accepting exactly 1 arg (a domain entity); except:
** returning a scalar value rather than a collection
* For this action:
-** add the xref:__code_actionlayout_code[`@ActionLayout(contributedAs=ASSOCIATION)`] annotation
+** add the xref:_ug_reference-annotations_manpage-ActionLayout_contributedAs[`@ActionLayout(contributedAs=ASSOCIATION)`] annotation
* should be rendered in the UI "as if" a property of the entity
* use `.layout.json` to position as required
@@ -507,10 +505,10 @@ Another way in which Apache Isis helps you keep your application nicely modulari
Under the covers Isis uses the https://code.google.com/p/guava-libraries/wiki/EventBusExplained[Guava event bus] and subscribers (always domain services) subscribe by writing methods annotated with `@com.google.common.eventbus.Subscribe` annotation.
-By default the events generated are `ActionDomainEvent.Default` (for actions) and `PropertyDomainEvent.Default` (for properties). Subclasses of these can be specified using the xref:__code_action_code[`@Action(domainEvent=...)`] or `Property(domainEvent=...)` for properties.
+By default the events generated are `ActionDomainEvent.Default` (for actions) and `PropertyDomainEvent.Default` (for properties). Subclasses of these can be specified using the xref:_ug_reference-annotations_manpage-Action_domainEvent[`@Action(domainEvent=...)`] or xref:_ug_reference-annotations_manpage-Property_domainEvent[`Property(domainEvent=...)`] for properties.
-Using the guidance in the docs for the xref:__code_eventbusservice_code[`EventBusService`]:
+Using the guidance in the docs for the xref:_ug_reference-services-api_manpage-EventBusService[`EventBusService`]:
* write a domain service subscriber to subscribe to events
* use the domain service to perform log events
@@ -520,7 +518,7 @@ Using the guidance in the docs for the xref:__code_eventbusservice_code[`EventBu
== Bulk actions (and the `ScratchPad`)
-Bulk actions are actions that can be invoked on a collection of actions, that is on collections returned by invoking an action. Actions are specified as being bulk actions using the xref:__code_action_code[`@action(invokeOn=OBJECT_AND_COLLECTION)`] annotation.
+Bulk actions are actions that can be invoked on a collection of actions, that is on collections returned by invoking an action. Actions are specified as being bulk actions using the xref:_ug_reference-annotations_manpage-Action_invokeOn[`@action(invokeOn=OBJECT_AND_COLLECTION)`] annotation.
[NOTE]
====
@@ -529,12 +527,12 @@ Note that currently (1.8.0) only no-arg actions can be specified as bulk actions
Thus:
* Write a no-arg action for your domain entity, annotate with `@Action(invokeOn=...)`
-* Inject the xref:__code_actioninteractioncontext_code[`ActionInteractionContext`] (request-scoped) service
+* Inject the xref:_ug_reference-services-api_manpage-ActionInvocationContext[`ActionInteractionContext`] (request-scoped) service
* Use the `ActionInteractionContext` service to determine whether the action was invoked in bulk or as a regular action.
* return null if invoked on a collection; the Wicket viewer will go back to the original collection
** (if return non-null, then Wicket viewer will navigate to the object of the last invocation� generally not what is required)
-The similar xref:__code_scratchpad_code[`ScratchPad`] (request-scoped) domain service is a good way to share information between bulk action invocations:
+The similar xref:_ug_reference-services-api_manpage-ScratchPad[`ScratchPad`] (request-scoped) domain service is a good way to share information between bulk action invocations:
* Inject the `ScratchPad` domain service
* for each action, store state (eg a running total)
@@ -545,7 +543,7 @@ The similar xref:__code_scratchpad_code[`ScratchPad`] (request-scoped) domain se
== Performance tuning (optional)
-The xref:__code_queryresultscache_code[`QueryResultsCache`] (request-scoped) domain service allows arbitrary objects to be cached for the duration of a request.
+The xref:_ug_reference-services-api_manpage-QueryResultsCache[`QueryResultsCache`] (request-scoped) domain service allows arbitrary objects to be cached for the duration of a request.
This can be helpful for "naive" code which would normally make the same query within a loop.
@@ -557,7 +555,7 @@ This can be helpful for "naive" code which would normally make the same query wi
== Extending the Wicket UI
-Each element in the Wicket viewer (entity form, properties, collections, action button etc) is a component, each created by a internal API (`ComponentFactory`, described xref:_extending_the_wicket_viewer[here]). For collections there can be multiple views, and the Wicket viewer provides a view selector drop down (top right of each collection panel).
+Each element in the Wicket viewer (entity form, properties, collections, action button etc) is a component, each created by a internal API (`ComponentFactory`, described xref:_ug_extending_wicket-viewer[here]). For collections there can be multiple views, and the Wicket viewer provides a view selector drop down (top right of each collection panel).
Moreover, we can add additional views. In this section we'll explore some of these, already provided through http://www.isisaddons.org/[Isis addons] (not ASF).
@@ -605,7 +603,7 @@ In most cases users can accomplish the business operations they need by invoking
Also, if using Isis' REST API then the REST client may be a native application (on a smartphone or tablet, say) that is deployed by a third party. In these cases exposing the entities directly would be inadvisable because a refactoring of the domain entity would change the REST API and probably break that REST client.
-To support these use cases, Isis therefore allows you to write a view model, either by annotating the class with xref:__code_viewmodel_code[`@ViewModel`] or (for more control) by implementing the `ViewModel` interface.
+To support these use cases, Isis therefore allows you to write a view model, either by annotating the class with xref:_ug_reference-annotations_manpage-ViewModel[`@ViewModel`] or (for more control) by implementing the xref:_ug_reference-classes_super_manpage-AbstractViewModel[`ViewModel`] interface.
* build a view model summarizing the state of the app (a "dashboard")
* write a new `@HomePage` domain service action returning this dashboard viewmodel (and remove the `@HomePage` annotation from any other domain service if present)
@@ -660,7 +658,7 @@ change back to:
There will probably be some compile issues to fix up once you've done this; comment out all code that doesn't compile.
-Isis has great support for writing xref:_integ_test_support[integration tests]; well-written integration tests should leverage fixture scripts and use the xref:__code_wrapperfactory_code[`@WrapperFactory`] domain service.
+Isis has great support for writing xref:_ug_testing_integ-test-support[integration tests]; well-written integration tests should leverage fixture scripts and use the xref:_ug_reference-services-api_manpage-WrapperFactory[`@WrapperFactory`] domain service.
* use the tests from the original archetype and the documentation on the website to develop integration tests for your app's functionality.
@@ -671,7 +669,7 @@ Isis has great support for writing xref:_integ_test_support[integration tests];
The REST API generated by Isis conforms to the Restful Objects specification. Isis 1.8.0 provides experimental support to allow the representations to be customized.
-* as per xref:_restful_objects_viewer[the RO viewer's docs], configure the Restful Objects viewer to generate a simplified object representation: +
+* as per xref:_ug_restfulobjects-viewer_configuration-properties_simplified-object[the documentation], configure the Restful Objects viewer to generate a simplified object representation: +
+
[source,ini]
----
http://git-wip-us.apache.org/repos/asf/isis/blob/505a311e/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer.adoc
index 973d315..ff0bfce 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer.adoc
@@ -23,7 +23,7 @@ include::_ug_wicket-viewer_customisation.adoc[leveloffset=+1]
== Extending the viewer
-APIs to extend the Wicket viewer are discussed in the xref:__a_id_chapter_a_extending[Extending] chapter.
+APIs to extend the Wicket viewer are discussed in the xref:_ug_extending[Extending] chapter.
include::_ug_wicket-viewer_isis-addons.adoc[leveloffset=+1]
http://git-wip-us.apache.org/repos/asf/isis/blob/505a311e/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties.adoc
index f2ea398..8d6523a 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties.adoc
@@ -52,17 +52,17 @@ Note that action pages are still used for bookmarked actions.
|`isis.viewer.wicket.` +
`maxTitleLengthInParentedTables`
| +ve integer, (`_12_`)
-| See discussion xref:_abbreviating_suppressing_titles_in_tables[below].
+| See discussion xref:_ug_wicket-viewer_configuration-properties_abbreviating-titles[below].
|`isis.viewer.wicket.` +
`maxTitleLengthInStandaloneTables`
| +ve integer, (`_12_`)
-| See discussion xref:_abbreviating_suppressing_titles_in_tables[below].
+| See discussion xref:_ug_wicket-viewer_configuration-properties_abbreviating-titles[below].
|`isis.viewer.wicket.` +
`maxTitleLengthInTables`
| +ve integer, (`_12_`)
-| See discussion xref:_abbreviating_suppressing_titles_in_tables[below].
+| See discussion xref:_ug_wicket-viewer_configuration-properties_abbreviating-titles[below].
|`isis.viewer.wicket.` +
`regularCase`
@@ -72,12 +72,12 @@ Note that action pages are still used for bookmarked actions.
|`isis.viewer.wicket.` +
`stripWicketTags`
| `true`,`false` (`_true_`)
-| Whether to force Wicket tags to be stripped in prototype/development mode. See discussion xref:_stripped_wicket_tags[below].
+| Whether to force Wicket tags to be stripped in prototype/development mode. See discussion xref:_ug_wicket-viewer_configuration-properties_stripped-wicket-tags[below].
|`isis.viewer.wicket.` +
`suppressPasswordReset`
| `true`,`false` (`_false_`)
-|If user registration is enabled, whether to suppress the "password reset" link on the login page. See discussion xref:_suppressing_password_reset[below].
+|If user registration is enabled, whether to suppress the "password reset" link on the login page. See discussion xref:_ug_wicket-viewer_configuration-properties_suppressing-password-reset[below].
|`isis.viewer.wicket.` +
`suppressRememberMe`
@@ -87,17 +87,17 @@ Note that action pages are still used for bookmarked actions.
|`isis.viewer.wicket.` +
`suppressSignUp`
| `true`,`false` (`_false_`)
-|If user registration is enabled, whether to suppress the "sign up" link on the login page. See discussion xref:_suppressing_sign_up[below].
+|If user registration is enabled, whether to suppress the "sign up" link on the login page. See discussion xref:_ug_wicket-viewer_configuration-properties_suppressing-sign-up[below].
|`isis.viewer.wicket.` +
`themes.enabled`
| comma separated list ...
-| ... of bootswatch themes. Only applies if `themes.showChooser`==`true`. See discussion xref:_showing_a_theme_chooser[below].
+| ... of bootswatch themes. Only applies if `themes.showChooser`==`true`. See discussion xref:_ug_wicket-viewer_configuration-properties_showing-theme-chooser[below].
|`isis.viewer.wicket.` +
`themes.showChooser`
| `true`,`false` (`_false_`)
-| Whether to show chooser for Bootstrap themes. See discussion xref:_showing_a_theme_chooser[below]
+| Whether to show chooser for Bootstrap themes. See discussion xref:_ug_wicket-viewer_configuration-properties_showing-theme-chooser[below]
|===
http://git-wip-us.apache.org/repos/asf/isis/blob/505a311e/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_showing-theme-chooser.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_showing-theme-chooser.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_showing-theme-chooser.adoc
index 6a2613d..884c3fd 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_showing-theme-chooser.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_showing-theme-chooser.adoc
@@ -8,7 +8,7 @@
The Wicket viewer uses http://getbootstrap.com/[Bootstrap] styles and components (courtesy of the https://github.com/l0rdn1kk0n/wicket-bootstrap[Wicket Bootstrap] integration).
-Unless a xref:_specifying_a_default_theme[default theme has been specified], the viewer uses the default bootstrap theme. However,
+Unless a xref:_ug_wicket-viewer_customisation_default-theme[default theme has been specified], the viewer uses the default bootstrap theme. However,
the viewer can also be configured to allow the end-user to switch theme to another theme, in particular one of those provided by http://bootswatch.com[bootswatch.com].
This is done using the following configuration property (in `WEB-INF/viewer_wicket.properties`):
@@ -37,7 +37,7 @@ where the value is the list of themes (from http://bootswatch.com[bootswatch.com
[TIP]
====
-You can also develop and install a custom themes (eg to fit your company's look-n-feel/interface guidelines); see the xref:_custom_bootstrap_theme[Extending] chapter for further details.
+You can also develop and install a custom themes (eg to fit your company's look-n-feel/interface guidelines); see the xref:_ug_extending_wicket-viewer_custom-bootstrap-theme[Extending] chapter for further details.
====
http://git-wip-us.apache.org/repos/asf/isis/blob/505a311e/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_suppressing-password-reset.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_suppressing-password-reset.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_suppressing-password-reset.adoc
index 28f7cf6..b305948 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_suppressing-password-reset.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_suppressing-password-reset.adoc
@@ -39,7 +39,7 @@ Typically this should be added to the `viewer_wicket.properties` file (in `WEB-I
== See also
-The xref:_suppressing_sign-up[sign up link] can be suppressed in a similar manner.
+The xref:_ug_wicket-viewer_configuration-properties_suppressing-sign-up[sign up link] can be suppressed in a similar manner.
http://git-wip-us.apache.org/repos/asf/isis/blob/505a311e/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_suppressing-sign-up.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_suppressing-sign-up.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_suppressing-sign-up.adoc
index b5f4e00..0455cae 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_suppressing-sign-up.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_configuration-properties_suppressing-sign-up.adoc
@@ -41,7 +41,7 @@ isis.viewer.wicket.suppressSignUp=true
== See also
-The xref:_suppressing_password_reset[password reset link] can be suppressed in a similar manner.
+The xref:_ug_wicket-viewer_configuration-properties_suppressing-password-reset[password reset link] can be suppressed in a similar manner.
http://git-wip-us.apache.org/repos/asf/isis/blob/505a311e/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_cheap-n-cheerful-theme.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_cheap-n-cheerful-theme.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_cheap-n-cheerful-theme.adoc
index 1af6606..7ad6257 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_cheap-n-cheerful-theme.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_cheap-n-cheerful-theme.adoc
@@ -22,7 +22,7 @@ You can therefore use this CSS class as a way of building your own "theme" for t
[TIP]
====
-Alternatively you could "do it properly" and create your xref:_custom_bootstrap_theme[own Bootstrap theme], as described in the <<Extending>> chapter.
+Alternatively you could "do it properly" and create your xref:_ug_extending_wicket-viewer_custom-bootstrap-theme[own Bootstrap theme], as described in the <<Extending>> chapter.
====
http://git-wip-us.apache.org/repos/asf/isis/blob/505a311e/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_custom-javascript.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_custom-javascript.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_custom-javascript.adoc
index cb1817a..919bbf3 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_custom-javascript.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_custom-javascript.adoc
@@ -12,7 +12,7 @@ The Wicket viewer ships with embedded JQuery, so this can be leveraged to perfor
====
Just because something is possible, it doesn't necessarily mean we encourage it. Please be aware that there is no formal API for any custom javascript that you might implement to target; future versions of Isis might break your code.
-If possible, consider using the `ComponentFactory` API described in the xref:_extending_the_wicket_viewer[Extending] chapter.
+If possible, consider using the `ComponentFactory` API described in the xref:_ug_extending_wicket-viewer[Extending] chapter.
====
To register your Javascript code, adjusting the Guice bindings (part of Isis' bootstrapping) in your custom subclass of `IsisWicketApplication`:
http://git-wip-us.apache.org/repos/asf/isis/blob/505a311e/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_default-theme.adoc
----------------------------------------------------------------------
diff --git a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_default-theme.adoc b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_default-theme.adoc
index aafce28..69518bb 100644
--- a/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_default-theme.adoc
+++ b/adocs/documentation/src/main/asciidoc/user-guide/_ug_wicket-viewer_customisation_default-theme.adoc
@@ -21,7 +21,7 @@ protected void init() {
}
----
-If you have developed a custom Bootstrap theme (as described xref:_custom_bootstrap_theme[here]) then this can also be specified using the https://github.com/l0rdn1kk0n/wicket-bootstrap/wiki/Themes[Wicket Bootstrap API].
+If you have developed a custom Bootstrap theme (as described xref:_ug_extending_wicket-viewer_custom-bootstrap-theme[here]) then this can also be specified using the https://github.com/l0rdn1kk0n/wicket-bootstrap/wiki/Themes[Wicket Bootstrap API].