| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to you under the Apache License, |
| Version 2.0 (the "License"); you may not use this file except in |
| compliance with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <document id="scroll-panes"> |
| <properties> |
| <title>Scroll Panes</title> |
| </properties> |
| |
| <body> |
| <p> |
| Scroll panes are a type of viewport that facilitates scrolling by presenting a |
| vertical or horizontal scroll bar that the user can drag to access the obscured parts |
| of the view. They are often used to wrap data-driven components containing a lot of |
| items (such as a <a href="table-views.html">TableView</a> displaying a long list of |
| database query results), or to wrap long forms. |
| </p> |
| |
| <p> |
| The following example demonstrates the use of a scroll pane to display a large |
| image: |
| </p> |
| |
| <application class="org.apache.pivot.wtk.ScriptApplication" |
| width="400" height="320"> |
| <libraries> |
| <library>core</library> |
| <library>wtk</library> |
| <library>wtk-terra</library> |
| <library>tutorials</library> |
| </libraries> |
| <startup-properties> |
| <src>/org/apache/pivot/tutorials/navigation/scroll_panes.bxml</src> |
| </startup-properties> |
| </application> |
| |
| <p> |
| The BXML source for this example is shown below: |
| </p> |
| |
| <source type="xml" location="org/apache/pivot/tutorials/navigation/scroll_panes.bxml"> |
| <![CDATA[ |
| <Window title="Scroll Panes" maximized="true" |
| xmlns:bxml="http://pivot.apache.org/bxml" |
| xmlns:navigation="org.apache.pivot.tutorials.navigation" |
| xmlns="org.apache.pivot.wtk"> |
| <Border styles="{color:10}"> |
| <ScrollPane> |
| <ImageView image="/org/apache/pivot/tutorials/IMG_1147.jpg" |
| tooltipText="Pemaquid Point Lighthouse, Bristol ME"/> |
| |
| <columnHeader> |
| <navigation:Ruler orientation="horizontal"/> |
| </columnHeader> |
| |
| <rowHeader> |
| <navigation:Ruler orientation="vertical"/> |
| </rowHeader> |
| </ScrollPane> |
| </Border> |
| </Window> |
| ]]> |
| </source> |
| |
| <p> |
| In addition to the view (an <tt>ImageView</tt>, in this example), scroll panes also |
| support the concept of row and column "header" components. A column header remains |
| fixed vertically at the top of the scroll pane but scrolls horizontally with the view, |
| and a row header is fixed horizontally at the left of the scroll pane but scrolls |
| vertically with the view. |
| </p> |
| |
| <p> |
| The column header is commonly used to display a <tt>TableViewHeader</tt> component for |
| a <tt>TableView</tt>, discussed in more detail in the <a href="table-views.html">Table |
| Views</a> section. In this example, the header components are set to instances of a |
| custom <tt>Ruler</tt> component that displays a tick mark every 5 pixels. |
| </p> |
| |
| <p> |
| Since this example contains no logic, there is no associated Java source. |
| </p> |
| </body> |
| </document> |