<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
  ~ 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>
  <properties>
    <title>Continuum</title>
  </properties>
  <body>
    <h1>Settings</h1>

    <form action="../index.html">
    <table>
      <tr>
        <th>Working Directory</th>
        <td><input type="text" size="100" /><br/>
          Enter the working directory of the Continuum web application
        </td>
      </tr>
      <tr>
        <th>Build Output Directory</th>
        <td><input type="text" size="100" /><br/>
          Enter the build output directory of the Continuum web application
        </td>
      </tr>
      <tr>
        <th>Deployment Repository Directory</th>
        <td><input type="text" size="100" /><br/>
          Enter the deployment repository directory of the Continuum web application
        </td>
      </tr>
      <tr>
        <th>Base URL</th>
        <td><input type="text" size="100" /><br/>
          Enter the base URL for the Continuum web application
        </td>
      </tr>
      <tr>
        <td></td>
        <td><input type="submit" value="Save" /></td>
      </tr>
    </table>
    </form>
  </body>
</document>

