[SSE] Bug 43708 (Cell settings: add buttons (position, add thumb, remove thumb), change gradient slider style)
|
@ -56,8 +56,8 @@ define([
|
||||||
colorValues: ['#000000', '#ffffff'],
|
colorValues: ['#000000', '#ffffff'],
|
||||||
currentThumb: 0,
|
currentThumb: 0,
|
||||||
thumbTemplate: '<div class="thumb img-commonctrl" style="">' +
|
thumbTemplate: '<div class="thumb img-commonctrl" style="">' +
|
||||||
'<div class="thumb-top"></div>' +
|
'<div class="thumb-top"><div class="thumb-top-inner"></div></div>' +
|
||||||
'<div class="thumb-bottom"></div>' +
|
'<div class="thumb-bottom"><div class="thumb-bottom-inner"></div></div>' +
|
||||||
'</div>'
|
'</div>'
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -159,8 +159,18 @@ define([
|
||||||
me.changeSliderStyle();
|
me.changeSliderStyle();
|
||||||
},
|
},
|
||||||
|
|
||||||
addNewThumb: function(index, color) {
|
addNewThumb: function(index, color, pos, curIndex) {
|
||||||
var me = this;
|
var me = this;
|
||||||
|
var color = color;
|
||||||
|
var index = index;
|
||||||
|
if (!_.isUndefined(pos) && !_.isUndefined(curIndex)) {
|
||||||
|
this.addThumb();
|
||||||
|
index = this.thumbs.length - 1;
|
||||||
|
color = this.thumbs[curIndex].colorValue;
|
||||||
|
this.setThumbPosition(index, pos);
|
||||||
|
var value = pos/me.delta + me.minValue;
|
||||||
|
me.thumbs[index].value = value;
|
||||||
|
}
|
||||||
me.thumbs[index].thumbcolor = me.thumbs[index].thumb.find('> div');
|
me.thumbs[index].thumbcolor = me.thumbs[index].thumb.find('> div');
|
||||||
(index>0) && this.setColorValue(color, index);
|
(index>0) && this.setColorValue(color, index);
|
||||||
me.sortThumbs();
|
me.sortThumbs();
|
||||||
|
|
|
@ -22,6 +22,11 @@
|
||||||
border-left: solid 1px @gray-darker;
|
border-left: solid 1px @gray-darker;
|
||||||
border-radius: 0 3px;
|
border-radius: 0 3px;
|
||||||
box-sizing: content-box;
|
box-sizing: content-box;
|
||||||
|
.thumb-top-inner {
|
||||||
|
border-top: solid 1px #fff;
|
||||||
|
border-left: solid 1px #fff;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.thumb-bottom {
|
.thumb-bottom {
|
||||||
|
@ -35,10 +40,28 @@
|
||||||
border-top: none;
|
border-top: none;
|
||||||
border-radius: 2px;
|
border-radius: 2px;
|
||||||
box-sizing: content-box;
|
box-sizing: content-box;
|
||||||
|
.thumb-bottom-inner {
|
||||||
|
border: solid 1px #fff;
|
||||||
|
border-top: none;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&.active .thumb-bottom {
|
&.active {
|
||||||
border-bottom-width: 2px;
|
.thumb-top {
|
||||||
|
border-top: solid 1px #000;
|
||||||
|
border-left: solid 1px #000;
|
||||||
|
}
|
||||||
|
.thumb-bottom {
|
||||||
|
border: solid 1px #000;
|
||||||
|
border-top: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
.thumb-bottom {
|
||||||
|
box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.32);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&.remove {
|
&.remove {
|
||||||
|
@ -58,6 +81,7 @@
|
||||||
|
|
||||||
background-position: 0 0;
|
background-position: 0 0;
|
||||||
outline: 1px solid rgba(162, 162, 162, 1);
|
outline: 1px solid rgba(162, 162, 162, 1);
|
||||||
|
border: 1px solid #FFFFFF;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -41,7 +41,22 @@
|
||||||
<div style="display: inline-block; margin-top: 3px;">
|
<div style="display: inline-block; margin-top: 3px;">
|
||||||
<div id="cell-slider-gradient" style="display: inline-block; vertical-align: middle;"></div>
|
<div id="cell-slider-gradient" style="display: inline-block; vertical-align: middle;"></div>
|
||||||
</div>
|
</div>
|
||||||
<div id="cell-gradient-color-btn" style="display: inline-block;float: right;"></div>
|
<div style="height: 40px;margin-top:6px;display:flex;justify-content:space-between;">
|
||||||
|
<div style="display: flex;">
|
||||||
|
<div style="">
|
||||||
|
<label class="input-label" style=""><%= scope.textGradientColor %></label>
|
||||||
|
<div id="cell-gradient-color-btn"></div>
|
||||||
|
</div>
|
||||||
|
<div style="margin-left: 10px;">
|
||||||
|
<label class="input-label" style=""><%= scope.textPosition %></label>
|
||||||
|
<div id="cell-gradient-position"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style="display:flex;padding-top:15px;">
|
||||||
|
<div id="cell-gradient-add-step"></div>
|
||||||
|
<div id="cell-gradient-remove-step"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
|
@ -249,7 +249,7 @@ define([
|
||||||
|
|
||||||
this.sldrGradient = new Common.UI.MultiSliderGradient({
|
this.sldrGradient = new Common.UI.MultiSliderGradient({
|
||||||
el: $('#cell-slider-gradient'),
|
el: $('#cell-slider-gradient'),
|
||||||
width: 125,
|
width: 192,
|
||||||
minValue: 0,
|
minValue: 0,
|
||||||
maxValue: 100,
|
maxValue: 100,
|
||||||
values: [0, 100]
|
values: [0, 100]
|
||||||
|
@ -261,6 +261,7 @@ define([
|
||||||
var color = me.GradColor.colors[me.GradColor.currentIdx];
|
var color = me.GradColor.colors[me.GradColor.currentIdx];
|
||||||
me.btnGradColor.setColor(color);
|
me.btnGradColor.setColor(color);
|
||||||
me.colorsGrad.select(color,false);
|
me.colorsGrad.select(color,false);
|
||||||
|
me.spnGradPosition.setValue(me.GradColor.values[me.GradColor.currentIdx]);
|
||||||
});
|
});
|
||||||
this.sldrGradient.on('thumbdblclick', function(cmp){
|
this.sldrGradient.on('thumbdblclick', function(cmp){
|
||||||
me.btnGradColor.cmpEl.find('button').dropdown('toggle');
|
me.btnGradColor.cmpEl.find('button').dropdown('toggle');
|
||||||
|
@ -430,6 +431,39 @@ define([
|
||||||
this.spnAngle.on('change', _.bind(this.onAngleChange, this));
|
this.spnAngle.on('change', _.bind(this.onAngleChange, this));
|
||||||
this.spnAngle.on('inputleave', function(){ Common.NotificationCenter.trigger('edit:complete', me);});
|
this.spnAngle.on('inputleave', function(){ Common.NotificationCenter.trigger('edit:complete', me);});
|
||||||
|
|
||||||
|
this.spnGradPosition = new Common.UI.MetricSpinner({
|
||||||
|
el: $('#cell-gradient-position'),
|
||||||
|
step: 1,
|
||||||
|
width: 60,
|
||||||
|
defaultUnit : "%",
|
||||||
|
value: '50 %',
|
||||||
|
allowDecimal: false,
|
||||||
|
maxValue: 100,
|
||||||
|
minValue: 0,
|
||||||
|
disabled: this._locked
|
||||||
|
});
|
||||||
|
this.lockedControls.push(this.spnGradPosition);
|
||||||
|
this.spnGradPosition.on('change', _.bind(this.onPositionChange, this));
|
||||||
|
this.spnGradPosition.on('inputleave', function(){ Common.NotificationCenter.trigger('edit:complete', me);});
|
||||||
|
|
||||||
|
this.btnAddGradientStep = new Common.UI.Button({
|
||||||
|
parentEl: $('#cell-gradient-add-step'),
|
||||||
|
cls: 'btn-toolbar',
|
||||||
|
iconCls: 'toolbar__icon btn-add-breakpoint',
|
||||||
|
disabled: this._locked
|
||||||
|
});
|
||||||
|
this.btnAddGradientStep.on('click', _.bind(this.onAddGradientStep, this));
|
||||||
|
this.lockedControls.push(this.btnAddGradientStep);
|
||||||
|
|
||||||
|
this.btnRemoveGradientStep = new Common.UI.Button({
|
||||||
|
parentEl: $('#cell-gradient-remove-step'),
|
||||||
|
cls: 'btn-toolbar',
|
||||||
|
iconCls: 'toolbar__icon btn-remove-breakpoint',
|
||||||
|
disabled: this._locked
|
||||||
|
});
|
||||||
|
this.btnRemoveGradientStep.on('click', _.bind(this.onRemoveGradientStep, this));
|
||||||
|
this.lockedControls.push(this.btnRemoveGradientStep);
|
||||||
|
|
||||||
this.chWrap = new Common.UI.CheckBox({
|
this.chWrap = new Common.UI.CheckBox({
|
||||||
el: $('#cell-checkbox-wrap'),
|
el: $('#cell-checkbox-wrap'),
|
||||||
labelText: this.strWrap,
|
labelText: this.strWrap,
|
||||||
|
@ -650,6 +684,9 @@ define([
|
||||||
}
|
}
|
||||||
me.sldrGradient.setActiveThumb(me.GradColor.currentIdx);
|
me.sldrGradient.setActiveThumb(me.GradColor.currentIdx);
|
||||||
|
|
||||||
|
// Step position
|
||||||
|
this.spnGradPosition.setValue(this.GradColor.values[this.GradColor.currentIdx]);
|
||||||
|
|
||||||
this.OriginalFillType = Asc.c_oAscFill.FILL_TYPE_GRAD;
|
this.OriginalFillType = Asc.c_oAscFill.FILL_TYPE_GRAD;
|
||||||
this.FGColor = {
|
this.FGColor = {
|
||||||
Value: 1,
|
Value: 1,
|
||||||
|
@ -1171,6 +1208,51 @@ define([
|
||||||
Common.NotificationCenter.trigger('edit:complete', this);
|
Common.NotificationCenter.trigger('edit:complete', this);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
onPositionChange: function(btn) {
|
||||||
|
var me = this,
|
||||||
|
pos = btn.getNumberValue();
|
||||||
|
if (this.api) {
|
||||||
|
this.GradColor.values[this.GradColor.currentIdx] = pos;
|
||||||
|
if (this.gradient == null) {
|
||||||
|
this.gradient = new Asc.asc_CGradientFill();
|
||||||
|
this.gradient.asc_setType(this.GradFillType);
|
||||||
|
}
|
||||||
|
var arrGradStop = [];
|
||||||
|
this.GradColor.values.forEach(function (item, index) {
|
||||||
|
var gradientStop = new Asc.asc_CGradientStop();
|
||||||
|
gradientStop.asc_setColor(Common.Utils.ThemeColor.getRgbColor(Common.Utils.ThemeColor.colorValue2EffectId(me.GradColor.colors[index])));
|
||||||
|
gradientStop.asc_setPosition(me.GradColor.values[index]/100);
|
||||||
|
arrGradStop.push(gradientStop);
|
||||||
|
});
|
||||||
|
this.gradient.asc_putGradientStops(arrGradStop);
|
||||||
|
|
||||||
|
this.fill.asc_setGradientFill(this.gradient);
|
||||||
|
this.api.asc_setCellFill(this.fill);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
onAddGradientStep: function() {
|
||||||
|
var curIndex = this.GradColor.currentIdx;
|
||||||
|
var pos = (this.GradColor.values[curIndex] + this.GradColor.values[curIndex < this.GradColor.colors.length - 1 ? curIndex + 1 : curIndex - 1]) / 2;
|
||||||
|
|
||||||
|
this.GradColor.colors[this.GradColor.colors.length] = this.GradColor.colors[curIndex];
|
||||||
|
this.GradColor.currentIdx = this.GradColor.colors.length - 1;
|
||||||
|
this.sldrGradient.addNewThumb(undefined, undefined, pos, curIndex);
|
||||||
|
|
||||||
|
this.sldrGradient.trigger('change', this.sldrGradient);
|
||||||
|
this.sldrGradient.trigger('changecomplete', this.sldrGradient);
|
||||||
|
},
|
||||||
|
|
||||||
|
onRemoveGradientStep: function() {
|
||||||
|
if (this.GradColor.values.length < 3) return;
|
||||||
|
this.GradColor.values.splice(this.GradColor.currentIdx, 1);
|
||||||
|
this.sldrGradient.removeThumb(this.GradColor.currentIdx);
|
||||||
|
if (_.isUndefined(this.GradColor.currentIdx) || this.GradColor.currentIdx >= this.GradColor.colors.length) {
|
||||||
|
this.GradColor.currentIdx = 0;
|
||||||
|
}
|
||||||
|
this.sldrGradient.setActiveThumb(this.GradColor.currentIdx);
|
||||||
|
},
|
||||||
|
|
||||||
textBorders: 'Border\'s Style',
|
textBorders: 'Border\'s Style',
|
||||||
textBorderColor: 'Color',
|
textBorderColor: 'Color',
|
||||||
textBackColor: 'Background color',
|
textBackColor: 'Background color',
|
||||||
|
@ -1203,7 +1285,9 @@ define([
|
||||||
textGradient: 'Gradient',
|
textGradient: 'Gradient',
|
||||||
textControl: 'Text Control',
|
textControl: 'Text Control',
|
||||||
strWrap: 'Wrap text',
|
strWrap: 'Wrap text',
|
||||||
strShrink: 'Shrink to fit'
|
strShrink: 'Shrink to fit',
|
||||||
|
textGradientColor: 'Color',
|
||||||
|
textPosition: 'Position'
|
||||||
|
|
||||||
}, SSE.Views.CellSettings || {}));
|
}, SSE.Views.CellSettings || {}));
|
||||||
});
|
});
|
|
@ -1263,6 +1263,8 @@
|
||||||
"SSE.Views.CellSettings.textControl": "Text Control",
|
"SSE.Views.CellSettings.textControl": "Text Control",
|
||||||
"SSE.Views.CellSettings.strWrap": "Wrap text",
|
"SSE.Views.CellSettings.strWrap": "Wrap text",
|
||||||
"SSE.Views.CellSettings.strShrink": "Shrink to fit",
|
"SSE.Views.CellSettings.strShrink": "Shrink to fit",
|
||||||
|
"SSE.Views.CellSettings.textGradientColor": "Color",
|
||||||
|
"SSE.Views.CellSettings.textPosition": "Position",
|
||||||
"SSE.Views.ChartSettings.strLineWeight": "Line Weight",
|
"SSE.Views.ChartSettings.strLineWeight": "Line Weight",
|
||||||
"SSE.Views.ChartSettings.strSparkColor": "Color",
|
"SSE.Views.ChartSettings.strSparkColor": "Color",
|
||||||
"SSE.Views.ChartSettings.strTemplate": "Template",
|
"SSE.Views.ChartSettings.strTemplate": "Template",
|
||||||
|
|
After Width: | Height: | Size: 494 B |
After Width: | Height: | Size: 529 B |
After Width: | Height: | Size: 506 B |
After Width: | Height: | Size: 552 B |
After Width: | Height: | Size: 650 B |
After Width: | Height: | Size: 700 B |
After Width: | Height: | Size: 438 B |
After Width: | Height: | Size: 493 B |
After Width: | Height: | Size: 782 B |
After Width: | Height: | Size: 955 B |