<?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.
-->

<screens xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/widget-screen.xsd">

    <screen name="FormWidgetExamples">
        <section>
            <actions>
                <set field="headerItem" value="FormWidgetExamples"/>
            </actions>
            <widgets>
                <decorator-screen name="main-decorator" location="${parameters.mainDecoratorLocation}">
                    <decorator-section name="body">
                        <section>
                            <condition>
                                <if-has-permission permission="EXAMPLE" action="_VIEW"/>
                            </condition>
                            <widgets>
                                <container style="h1"><label>${uiLabelMap.PageTitleFormWidgetExamples}</label></container>
                                <container style="screenlet-body">
                                    <container style="button-bar"><label style="h2">${uiLabelMap.ExampleDateTimeFields}</label></container>
                                    <container style="screenlet-body">
                                        <label style="h3">${uiLabelMap.ExampleSourceCode}</label>
                                        <label>${uiLabelMap.ExampleDefinitionName} &quot;DateTimeFieldsExampleForm&quot; ${uiLabelMap.ExampleDefinitionFile}</label>
                                        <link target="http://svn.apache.org/repos/asf/ofbiz/trunk/framework/example/widget/example/FormWidgetExampleForms.xml" url-mode="plain" target-window="svnPage" text="${uiLabelMap.ExampleDefinitionFileTooltip}" style="buttontext"/>
                                        <include-form name="DateTimeFieldsExampleForm" location="component://example/widget/example/FormWidgetExampleForms.xml"/>
                                    </container>
                                </container>
                                <container style="screenlet-body">
                                    <container style="button-bar"><label style="h2">${uiLabelMap.ExampleDropDownFields}</label></container>
                                    <container style="screenlet-body">
                                        <label style="h3">${uiLabelMap.ExampleSourceCode}</label>
                                        <label>${uiLabelMap.ExampleDefinitionName} &quot;DropDownFieldsExampleForm&quot; ${uiLabelMap.ExampleDefinitionFile}</label>
                                        <link target="http://svn.apache.org/repos/asf/ofbiz/trunk/framework/example/widget/example/FormWidgetExampleForms.xml" url-mode="plain" target-window="svnPage" text="${uiLabelMap.ExampleDefinitionFileTooltip}" style="buttontext"/>
                                    </container>
                                    <include-form name="DropDownFieldsExampleForm" location="component://example/widget/example/FormWidgetExampleForms.xml"/>
                                </container>
                                <container style="screenlet-body">
                                    <container style="button-bar"><label style="h2">${uiLabelMap.ExampleGroupFields}</label></container>
                                    <container style="screenlet-body">
                                        <label style="h3">${uiLabelMap.ExampleSourceCode}</label>
                                        <label>${uiLabelMap.ExampleDefinitionName} &quot;FieldGroupExampleForm&quot; ${uiLabelMap.ExampleDefinitionFile}</label>
                                        <link target="http://svn.apache.org/repos/asf/ofbiz/trunk/framework/example/widget/example/FormWidgetExampleForms.xml" url-mode="plain" target-window="svnPage" text="${uiLabelMap.ExampleDefinitionFileTooltip}" style="buttontext"/>
                                        <include-form name="FieldGroupExampleForm" location="component://example/widget/example/FormWidgetExampleForms.xml"/>
                                    </container>
                                </container>
                                <container style="screenlet-body">
                                    <container style="button-bar"><label style="h2">${uiLabelMap.ExamplePrintButton}</label></container>
                                    <container style="screenlet-body">
                                        <label>${uiLabelMap.ExampleFopFonts}</label>
                                    </container>
                                    <include-form name="FOPFontsExampleForm" location="component://example/widget/example/FormWidgetExampleForms.xml"/>
                                </container>
                            </widgets>
                            <fail-widgets>
                                <label style="h3">${uiLabelMap.ExampleViewPermissionError}</label>
                            </fail-widgets>
                        </section>
                    </decorator-section>
                </decorator-screen>
            </widgets>
        </section>
    </screen>
    <screen name="printExampleFOPFonts">
        <section>
            <widgets>
                <platform-specific><xsl-fo><html-template location="component://example/webapp/example/reports/fonts.fo.ftl"/></xsl-fo></platform-specific>
            </widgets>
        </section>
    </screen>
</screens>
