client/client/app/components/ngbTracksView/ngbTrack/ngbTrack.tpl.html (200 lines of code) (raw):
<div
flex
layout="row"
layout-wrap="100"
class="ngb-track-container"
ng-class="{'collapsed': !ctrl.showTracksHeaders}"
ng-show="ctrl.trackIsVisible"
>
<div
flex="100"
class="ngb-track-header"
layout="row"
layout-align="start center"
ng-mousedown="ctrl.onHeaderMouseDown($event)"
ng-class="{'collapsed': !ctrl.showTracksHeaders }"
>
<input
ng-if="ctrl.selectable"
type="checkbox"
dnd-nodrag
ng-checked="ctrl.trackIsSelected"
ng-click="ctrl.trackSelectionChanged($event)"
/>
<div class="ngb-track-header-type" ng-if="ctrl.track.format !== 'MOTIFS'">{{ctrl.track.format}}</div>
<input
ngb-autofocus
emit-focus="ctrl.nameInputVisible"
spellcheck="false"
dnd-nodrag
class="ngb-track-header-file-input"
ng-model="ctrl.customNameTemp"
ng-show="ctrl.nameInputVisible"
ng-style="ctrl.customNameTemp && ctrl.trackHeaderStyle"
ng-Blur="ctrl.setCustomName(ctrl.customNameTemp)"
ng-keydown="ctrl.handleNameInputKeydown($event)"
placeholder="Enter new track name..."
/>
<div
dnd-nodrag
class="ngb-track-header-file-name"
ng-hide="ctrl.nameInputVisible"
ng-click="ctrl.showTrackNameInput()"
ng-style="ctrl.trackHeaderStyle"
>
{{ctrl.truncate(ctrl.customName || ctrl.trackName)}}
<md-tooltip md-direction="top">
{{ctrl.customName || ctrl.trackName}}
</md-tooltip>
</div>
<div
class="ngb-track-header-file-hint"
ng-show="ctrl.showFileNameHint"
>
{{ctrl.truncate(ctrl.trackName)}}
<md-tooltip md-direction="top">
{{ctrl.trackName}}
</md-tooltip>
</div>
<div class="ngb-track-error"
ng-class="{'displayed': ctrl.trackInstance && ctrl.trackInstance.error}"
dnd-nodrag>
<ng-md-icon icon="error"
size="16"
class="ngb-track-error-icon"
></ng-md-icon>
<md-tooltip md-direction="top">
{{ctrl.trackInstance ? ctrl.trackInstance.error : ''}}
</md-tooltip>
</div>
<ngb-track-settings style="flex: 1; overflow: hidden;"
ng-if="ctrl.trackInstance !== undefined && ctrl.trackInstance.getSettings"
settings="ctrl.trackInstance.getSettings()">
</ngb-track-settings>
<ngb-track-actions dnd-nodrag
ng-if="ctrl.trackInstance !== undefined && ctrl.trackInstance.actions"
actions="ctrl.trackInstance.actions">
</ngb-track-actions>
<div ng-style="{'visibility': ctrl.trackDataIsLoading ? 'visible' : 'hidden'}">
<md-progress-circular md-mode="indeterminate" md-diameter="12"></md-progress-circular>
</div>
<div title="Hide Track" class="buttons-menu-track hide-track" dnd-nodrag>
<md-button md-no-ink
ng-show="ctrl.showHideTrackButton"
class="md-icon-button track-button close"
ng-click="ctrl.hideTrack($event)"
ng-if="!ctrl.silentInteractions && ctrl.trackClosable"
aria-label="Hide Track">
<ng-md-icon class="button-icon" icon="clear" size="16"></ng-md-icon>
</md-button>
</div>
</div>
<div class="ngb-track-header-floating md-raised md-button"
ng-class="{'collapsed': ctrl.showTracksHeaders, 'reference': ctrl.isReference, 'opened': ctrl.minifiedMenuIsOpened}"
ng-mouseleave="ctrl.onMinifiedHeaderMouseLeave()"
ng-mouseover="ctrl.onMinifiedHeaderMouseOver()"
layout="row">
<ng-md-icon
class="track-button mini button-icon"
icon="format_line_spacing"
size="16"
style="cursor: move;"
/>
<input
ng-if="ctrl.selectable"
type="checkbox"
ng-model="ctrl.trackIsSelected"
dnd-nodrag
/>
<ngb-track-settings
dnd-nodrag
ng-if="ctrl.minifiedMenuIsOpened && ctrl.trackInstance !== undefined && ctrl.trackInstance.getSettings"
style="flex: 1; overflow: hidden"
settings="ctrl.trackInstance.getSettings()"
track-controller="ctrl"
on-menu-opened="::ctrl.onMenuOpened"
on-menu-closed="::ctrl.onMenuClosed"
on-handle="::ctrl.onHandleAction"></ngb-track-settings>
<ngb-track-actions
dnd-nodrag
ng-if="ctrl.minifiedMenuIsOpened && ctrl.trackInstance !== undefined && ctrl.trackInstance.actions"
actions="ctrl.trackInstance.actions"
track-controller="ctrl"
on-handle="::ctrl.onHandleAction"></ngb-track-actions>
<div class="buttons-menu-track"
ng-show="ctrl.isMinifiedMenuButtonVisible">
<md-button md-no-ink
dnd-nodrag
class="md-icon-button track-button mini"
aria-label="Menu"
ng-click="ctrl.openOrCloseMinifiedMenu()">
<ng-md-icon class="button-icon" icon="tune" size="16"></ng-md-icon>
</md-button>
</div>
<div ng-show="ctrl.trackDataIsLoading" class="track-loader-minified">
<md-progress-circular md-mode="indeterminate" md-diameter="12"></md-progress-circular>
</div>
<input
ngb-autofocus
emit-focus="ctrl.nameInputVisible"
spellcheck="false"
dnd-nodrag
class="ngb-track-header-file-input"
ng-model="ctrl.customNameTemp"
ng-show="ctrl.nameInputVisible"
ng-style="ctrl.trackHeaderStyle"
ng-Blur="ctrl.setCustomName(ctrl.customNameTemp)"
ng-keydown="ctrl.handleNameInputKeydown($event)"
placeholder="Enter new track name..."
/>
<div
dnd-nodrag
class="ngb-track-header-file-name"
ng-hide="ctrl.nameInputVisible"
ng-click="ctrl.showTrackNameInput()"
ng-style="ctrl.trackHeaderStyle"
>
{{ctrl.truncate(ctrl.customName || ctrl.trackName)}}
<md-tooltip md-direction="top">
{{ctrl.customName || ctrl.trackName}}
</md-tooltip>
</div>
<div class="buttons-menu-track" dnd-nodrag>
<md-button md-no-ink
ng-show="ctrl.showHideTrackButton"
class="md-icon-button track-button close mini"
ng-click="ctrl.hideTrack($event)"
ng-if="!ctrl.silentInteractions && ctrl.trackClosable"
aria-label="Hide Track">
<ng-md-icon class="button-icon" icon="clear" size="16"></ng-md-icon>
</md-button>
</div>
</div>
<div
dnd-nodrag
class="ngb-track-renderer js-ngb-render-container-target"
flex="100"></div>
<div
dnd-nodrag
flex="100"
layout-margin
ng-hide="ctrl.isLoaded"
ng-style="{height: ctrl.possibleTrackHeight + 'px'}"
layout="row"
layout-align="center center">
<div>
<ngb-progress-circular ngb-mode="indeterminate" flex></ngb-progress-circular>
</div>
</div>
<div
ng-if="ctrl.isResizable"
dnd-nodrag
class="ngb-resize-panel"
flex="100"></div>
<ngb-track-notification
ng-if="!!ctrl.notification"
dnd-nodrag
notification="ctrl.notification"
track-instance="ctrl.trackInstance">
</ngb-track-notification>
</div>