<!--
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.
-->
<div id="catalog-resource">
    <div class="row row-fluid">
        <div class="span12 composer" id="composer">
            <div class="navbar_top">
                <h3 style="margin-top: 6px;">Blueprint Composer</h3>
                <div class="apps-tree-toolbar btn-toolbar" style="margin-top: -24px !important;">
                    <span class="btn-group">
                    <button id="button-example" class="btn btn-sm fa fa-file-text-o" title="Insert Example"></button>
                    </span>
                    
                    <span class="btn-group">
                    <button id="button-docs" class="btn btn-sm fa fa-book" title="Open Brooklyn Website Documentation"></button>
                    </span>
                    
                    <!-- no need for this
                    <span class="btn-group">
                    <button id="button-delete" class="btn btn-danger btn-sm">Clear</button>
                    </span>
                    -->
                    
                    <span class="btn-group" role="group">
                        <button id="button-switch-app" class="btn btn-sm">Application</button>
                        <button id="button-switch-catalog" class="btn btn-sm">Catalog</button>
                    </span>
                    
                    <!-- text will be changed by JS -->
                    <span class="btn-group" style="width: 12em;">
                            <button id="button-run" class="btn btn-success btn-sm" style="margin-left: 24px; float: right;">Go</button>
                    </span>
                </div>
            </div>
            <div class="error-message label-message hide">
                <div class="label-important">ERROR</div>
                <span class="error-message-text"></span>
            </div>
            <div class="navbar_main_wrapper">
                <div class="navbar_main">
                    <div class="composer-editor">
                        <div class="composer-toolbar">
                            <!-- the toolbar -->
                        </div>
                        <textarea id="yaml_code" mode="yaml" class="code-textarea" style="height:760px; width:98%"></textarea>
                    </div>
                    <div class="composer-editor-loading hide"><span>Loading item...</span></div>
                </div>
            </div>
            <div class="navbar_main_wrapper" style="background-color: #f0f0f0 !important;">
                <div class="apps-tree-toolbar btn-toolbar" style="margin: 9px 12px 6px 12px !important; float: none;">
                    <span class="btn-group" style="float: left;">
                        <button id="button-delete" class="btn btn-danger btn-sm">Clear</button>
                    </span>
                    
                    <!-- text will be changed by JS -->
                    <span class="btn-group" style="width: 12em;">
                            <button id="button-run" class="btn btn-success btn-sm" style="margin-left: 24px; float: right;">Go</button>
                    </span>
                </div>
            </div>
        </div>
    </div>
</div>
