Merge pull request #577 from GMartigny/559-TooLongLayerName

Add ellipsis to overflowing layer item name #559
This commit is contained in:
Julian Descottes 2016-12-06 03:19:48 +01:00 committed by GitHub
commit 732c3c2d76
3 changed files with 22 additions and 6 deletions

View File

@ -59,20 +59,30 @@
.layer-item { .layer-item {
position: relative; position: relative;
display: flex;
height:24px; height:24px;
line-height: 24px; line-height: 24px;
padding: 0 0 0 10px;
border-top: 1px solid #444; border-top: 1px solid #444;
cursor: pointer; cursor: pointer;
} }
.layer-item .layer-name {
padding: 0 0 0 10px;
flex: 1 auto;
white-space: nowrap;
}
.layer-item .layer-name.overflowing-name {
overflow: hidden;
text-overflow: ellipsis;
}
.layer-item:hover { .layer-item:hover {
background : #222; background : #222;
} }
.layer-item-opacity { .layer-item-opacity {
position: absolute; padding-right: 8px;
right: 8px;
} }
.current-layer-item, .current-layer-item,

View File

@ -99,6 +99,12 @@
}); });
var layerItem = pskl.utils.Template.createFromHTML(layerItemHtml); var layerItem = pskl.utils.Template.createFromHTML(layerItemHtml);
this.layersListEl.insertBefore(layerItem, this.layersListEl.firstChild); this.layersListEl.insertBefore(layerItem, this.layersListEl.firstChild);
if (layerItem.offsetWidth < layerItem.scrollWidth) {
$(layerItem).find('.layer-name')
.addClass('overflowing-name')
.attr('title', layer.getName())
.tooltip();
}
}; };
ns.LayersListController.prototype.onClick_ = function (evt) { ns.LayersListController.prototype.onClick_ = function (evt) {
@ -106,8 +112,8 @@
var index; var index;
if (el.classList.contains('button')) { if (el.classList.contains('button')) {
this.onButtonClick_(el); this.onButtonClick_(el);
} else if (el.classList.contains('layer-item')) { } else if (el.classList.contains('layer-name')) {
index = el.dataset.layerIndex; index = pskl.utils.Dom.getData(el, 'layerIndex');
this.piskelController.setCurrentLayerIndex(parseInt(index, 10)); this.piskelController.setCurrentLayerIndex(parseInt(index, 10));
} else if (el.classList.contains('layer-item-opacity')) { } else if (el.classList.contains('layer-item-opacity')) {
index = pskl.utils.Dom.getData(el, 'layerIndex'); index = pskl.utils.Dom.getData(el, 'layerIndex');

View File

@ -36,7 +36,7 @@
<script type="text/template" id="layer-item-template"> <script type="text/template" id="layer-item-template">
<li class="layer-item {{isselected:current-layer-item}}" <li class="layer-item {{isselected:current-layer-item}}"
data-layer-index="{{layerindex}}"> data-layer-index="{{layerindex}}">
{{layername}} <span class="layer-name" data-placement="top">{{layername}}</span>
<span class="layer-item-opacity" <span class="layer-item-opacity"
title="Layer opacity" rel="tooltip" data-placement="top"> title="Layer opacity" rel="tooltip" data-placement="top">
{{opacity}}&#945; {{opacity}}&#945;