Browse Source

feat(zh en): zh en

zh en
master
wpxp123456 5 years ago
parent
commit
040bfe4b45
  1. 467
      src/controllers/conditionformat.js
  2. 502
      src/controllers/menuButton.js
  3. 116
      src/locale/en.js
  4. 117
      src/locale/zh.js

467
src/controllers/conditionformat.js

@ -98,6 +98,8 @@ const conditionformat = {
init: function(){
let _this = this;
const conditionformat_Text = locale().conditionformat;
// 管理规则
$(document).off("change.CFchooseSheet").on("change.CFchooseSheet", "#luckysheet-administerRule-dialog .chooseSheet", function(){
let index = $("#luckysheet-administerRule-dialog .chooseSheet option:selected").val();
@ -221,10 +223,10 @@ const conditionformat = {
$(document).off("click.CFnewConditionRule").on("click.CFnewConditionRule", "#newConditionRule", function(){
if(Store.luckysheet_select_save.length == 0){
if(isEditMode()){
alert("请选择应用范围");
alert(conditionformat_Text.pleaseSelectRange);
}
else{
tooltip.info("请选择应用范围", "");
tooltip.info(conditionformat_Text.pleaseSelectRange, "");
}
return;
}
@ -304,7 +306,7 @@ const conditionformat = {
//条件值是否是选区
let rangeArr1 = _this.getRangeByTxt(v1);
if(rangeArr1.length > 1){
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
else if(rangeArr1.length == 1){
@ -318,13 +320,13 @@ const conditionformat = {
conditionValue.push(v1);
}
else{
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
}
else if(rangeArr1.length == 0){
if(isNaN(v1) || v1 == ""){
_this.infoDialog("条件值只能是数字或者单个单元格", "");
_this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
return;
}
else{
@ -334,7 +336,7 @@ const conditionformat = {
let rangeArr2 = _this.getRangeByTxt(v2);
if(rangeArr2.length > 1){
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
else if(rangeArr2.length == 1){
@ -348,13 +350,13 @@ const conditionformat = {
conditionValue.push(v2);
}
else{
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
}
else if(rangeArr2.length == 0){
if(isNaN(v2) || v2 == ""){
_this.infoDialog("条件值只能是数字或者单个单元格", "");
_this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
return;
}
else{
@ -369,7 +371,7 @@ const conditionformat = {
//条件值是否是选区
let rangeArr = _this.getRangeByTxt(v);
if(rangeArr.length > 1){
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
else if(rangeArr.length == 1){
@ -383,13 +385,13 @@ const conditionformat = {
conditionValue.push(v);
}
else{
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
}
else if(rangeArr.length == 0){
if(isNaN(v) || v == ""){
_this.infoDialog("条件值只能是数字或者单个单元格", "");
_this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
return;
}
else{
@ -407,7 +409,7 @@ const conditionformat = {
//条件值是否是选区
let rangeArr = _this.getRangeByTxt(v);
if(rangeArr.length > 1){
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
else if(rangeArr.length == 1){
@ -421,13 +423,13 @@ const conditionformat = {
conditionValue.push(v);
}
else{
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
}
else if(rangeArr.length == 0){
if(isNaN(v) || v == ""){
_this.infoDialog("条件值只能是数字或者单个单元格", "");
_this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
return;
}
else{
@ -442,7 +444,7 @@ const conditionformat = {
let v = $("#luckysheet-newConditionRule-dialog #daterange-btn").val();
if(v == "" || v == null){
_this.infoDialog("请选择日期", "");
_this.infoDialog(conditionformat_Text.pleaseSelectADate, "");
return;
}
@ -472,7 +474,7 @@ const conditionformat = {
let v = $("#luckysheet-newConditionRule-dialog #conditionVal input").val().trim();
if(parseInt(v) != v || parseInt(v) < 1 || parseInt(v) > 1000){
_this.infoDialog("请输入一个介于 1 和 1000 之间的整数", "");
_this.infoDialog(conditionformat_Text.pleaseEnterInteger, "");
return;
}
@ -669,7 +671,7 @@ const conditionformat = {
//条件值是否是选区
let rangeArr1 = _this.getRangeByTxt(v1);
if(rangeArr1.length > 1){
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
else if(rangeArr1.length == 1){
@ -683,13 +685,13 @@ const conditionformat = {
conditionValue.push(v1);
}
else{
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
}
else if(rangeArr1.length == 0){
if(isNaN(v1) || v1 == ""){
_this.infoDialog("条件值只能是数字或者单个单元格", "");
_this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
return;
}
else{
@ -699,7 +701,7 @@ const conditionformat = {
let rangeArr2 = _this.getRangeByTxt(v2);
if(rangeArr2.length > 1){
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
else if(rangeArr2.length == 1){
@ -713,13 +715,13 @@ const conditionformat = {
conditionValue.push(v2);
}
else{
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
}
else if(rangeArr2.length == 0){
if(isNaN(v2) || v2 == ""){
_this.infoDialog("条件值只能是数字或者单个单元格", "");
_this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
return;
}
else{
@ -734,7 +736,7 @@ const conditionformat = {
//条件值是否是选区
let rangeArr = _this.getRangeByTxt(v);
if(rangeArr.length > 1){
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
else if(rangeArr.length == 1){
@ -748,13 +750,13 @@ const conditionformat = {
conditionValue.push(v);
}
else{
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
}
else if(rangeArr.length == 0){
if(isNaN(v) || v == ""){
_this.infoDialog("条件值只能是数字或者单个单元格", "");
_this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
return;
}
else{
@ -772,7 +774,7 @@ const conditionformat = {
//条件值是否是选区
let rangeArr = _this.getRangeByTxt(v);
if(rangeArr.length > 1){
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
else if(rangeArr.length == 1){
@ -786,13 +788,13 @@ const conditionformat = {
conditionValue.push(v);
}
else{
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
}
else if(rangeArr.length == 0){
if(isNaN(v) || v == ""){
_this.infoDialog("条件值只能是数字或者单个单元格", "");
_this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
return;
}
else{
@ -807,7 +809,7 @@ const conditionformat = {
let v = $("#luckysheet-editorConditionRule-dialog #daterange-btn").val();
if(v == "" || v == null){
_this.infoDialog("请选择日期", "");
_this.infoDialog(conditionformat_Text.pleaseSelectADate, "");
return;
}
@ -837,7 +839,7 @@ const conditionformat = {
let v = $("#luckysheet-editorConditionRule-dialog #conditionVal input").val().trim();
if(parseInt(v) != v || parseInt(v) < 1 || parseInt(v) > 1000){
_this.infoDialog("请输入一个介于 1 和 1000 之间的整数", "");
_this.infoDialog(conditionformat_Text.pleaseEnterInteger, "");
return;
}
@ -998,7 +1000,7 @@ const conditionformat = {
//条件值是否是选区
let rangeArr = _this.getRangeByTxt(v);
if(rangeArr.length > 1){
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
else if(rangeArr.length == 1){
@ -1012,13 +1014,13 @@ const conditionformat = {
conditionValue.push(v);
}
else{
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
}
else if(rangeArr.length == 0){
if(isNaN(v) || v == ""){
_this.infoDialog("条件值只能是数字或者单个单元格", "");
_this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
return;
}
else{
@ -1033,7 +1035,7 @@ const conditionformat = {
//条件值是否是选区
let rangeArr1 = _this.getRangeByTxt(v1);
if(rangeArr1.length > 1){
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
else if(rangeArr1.length == 1){
@ -1047,13 +1049,13 @@ const conditionformat = {
conditionValue.push(v1);
}
else{
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
}
else if(rangeArr1.length == 0){
if(isNaN(v1) || v1 == ""){
_this.infoDialog("条件值只能是数字或者单个单元格", "");
_this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
return;
}
else{
@ -1063,7 +1065,7 @@ const conditionformat = {
let rangeArr2 = _this.getRangeByTxt(v2);
if(rangeArr2.length > 1){
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
else if(rangeArr2.length == 1){
@ -1077,13 +1079,13 @@ const conditionformat = {
conditionValue.push(v2);
}
else{
_this.infoDialog("只能对单个单元格进行引用", "");
_this.infoDialog(conditionformat_Text.onlySingleCell, "");
return;
}
}
else if(rangeArr2.length == 0){
if(isNaN(v2) || v2 == ""){
_this.infoDialog("条件值只能是数字或者单个单元格", "");
_this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
return;
}
else{
@ -1095,7 +1097,7 @@ const conditionformat = {
let v = $("#luckysheet-conditionformat-dialog #daterange-btn").val();
if(v == "" || v == null){
_this.infoDialog("请选择日期", "");
_this.infoDialog(conditionformat_Text.pleaseSelectADate, "");
return;
}
@ -1108,7 +1110,7 @@ const conditionformat = {
let v = $("#luckysheet-conditionformat-dialog #conditionVal").val().trim();
if(parseInt(v) != v || parseInt(v) < 1 || parseInt(v) > 1000){
_this.infoDialog("请输入一个介于 1 和 1000 之间的整数", "");
_this.infoDialog(conditionformat_Text.pleaseEnterInteger, "");
return;
}
@ -1287,7 +1289,7 @@ const conditionformat = {
//新建规则弹出层
if(id == "luckysheet-newConditionRule-dialog"){
let source=$("#" + id).find("#luckysheet-newConditionRule-dialog-close").attr("data-source");
let source = $("#" + id).find("#luckysheet-newConditionRule-dialog-close").attr("data-source");
//新建规则入口
if(source == 1){
$("#luckysheet-administerRule-dialog").show();
@ -1343,12 +1345,15 @@ const conditionformat = {
$("#luckysheet-modal-dialog-mask").hide();
$("#luckysheet-singleRange-dialog").remove();
const conditionformat_Text = locale().conditionformat;
$("body").append(replaceHtml(modelHTML, {
"id": "luckysheet-singleRange-dialog",
"addclass": "luckysheet-singleRange-dialog",
"title": "选择单元格",
"content": '<input readonly="readonly" placeholder="请选择单元格" value="'+value+'"/>',
"botton": '<button id="luckysheet-singleRange-dialog-confirm" class="btn btn-primary" data-source="'+source+'">确定</button><button id="luckysheet-singleRange-dialog-close" class="btn btn-default" data-source="'+source+'">取消</button>',
"title": conditionformat_Text.selectCell,
"content": `<input readonly="readonly" placeholder="${conditionformat_Text.pleaseSelectCell}" value="${value}"/>`,
"botton": `<button id="luckysheet-singleRange-dialog-confirm" class="btn btn-primary" data-source="${source}">${conditionformat_Text.confirm}</button>
<button id="luckysheet-singleRange-dialog-close" class="btn btn-default" data-source="${source}">${conditionformat_Text.cancel}</button>`,
"style": "z-index:100003"
}));
let $t = $("#luckysheet-singleRange-dialog")
@ -1370,12 +1375,15 @@ const conditionformat = {
$("#luckysheet-modal-dialog-mask").hide();
$("#luckysheet-multiRange-dialog").remove();
const conditionformat_Text = locale().conditionformat;
$("body").append(replaceHtml(modelHTML, {
"id": "luckysheet-multiRange-dialog",
"addclass": "luckysheet-multiRange-dialog",
"title": "选择应用范围",
"content": '<input readonly="readonly" placeholder="请选择应用范围" value="'+value+'"/>',
"botton": '<button id="luckysheet-multiRange-dialog-confirm" class="btn btn-primary" data-item="'+dataItem+'">确定</button><button id="luckysheet-multiRange-dialog-close" class="btn btn-default">取消</button>',
"title": conditionformat_Text.selectRange,
"content": `<input readonly="readonly" placeholder="${conditionformat_Text.pleaseSelectRange}" value="${value}"/>`,
"botton": `<button id="luckysheet-multiRange-dialog-confirm" class="btn btn-primary" data-item="${dataItem}">${conditionformat_Text.confirm}</button>
<button id="luckysheet-multiRange-dialog-close" class="btn btn-default">${conditionformat_Text.cancel}</button>`,
"style": "z-index:100003"
}));
let $t = $("#luckysheet-multiRange-dialog")
@ -1431,6 +1439,8 @@ const conditionformat = {
return range;
},
colorSelectInit: function(){
const conditionformat_Text = locale().conditionformat;
$(".luckysheet-conditionformat-config-color").spectrum({
showPalette: true,
showPaletteOnly:true,
@ -1445,12 +1455,12 @@ const conditionformat = {
maxPaletteSize: 8,
maxSelectionSize: 8,
// color: currenColor,
cancelText: "取消",
chooseText: "确定颜色",
cancelText: conditionformat_Text.cancel,
chooseText: conditionformat_Text.confirmColor,
togglePaletteMoreText: "自定义",
togglePaletteLessText: "收起",
togglePaletteOnly: true,
clearText: "清除颜色选择",
clearText: conditionformat_Text.clearColorSelect,
noColorSelectedText: "没有颜色被选择",
localStorageKey: "spectrum.textcolor" + server.gridKey,
palette: [["#000","#444","#666","#999","#ccc","#eee","#f3f3f3","#fff"],
@ -1474,12 +1484,15 @@ const conditionformat = {
$("#luckysheet-modal-dialog-mask").show();
$("#luckysheet-conditionformat-dialog").remove();
const conditionformat_Text = locale().conditionformat;
$("body").append(replaceHtml(modelHTML, {
"id": "luckysheet-conditionformat-dialog",
"addclass": "luckysheet-conditionformat-dialog",
"title": title,
"content": content,
"botton": '<button id="luckysheet-conditionformat-dialog-confirm" class="btn btn-primary">确定</button><button class="btn btn-default luckysheet-model-close-btn">取消</button>',
"botton": `<button id="luckysheet-conditionformat-dialog-confirm" class="btn btn-primary">${conditionformat_Text.confirm}</button>
<button class="btn btn-default luckysheet-model-close-btn">${conditionformat_Text.cancel}</button>`,
"style": "z-index:100003"
}));
let $t = $("#luckysheet-conditionformat-dialog")
@ -1498,7 +1511,7 @@ const conditionformat = {
_this.init();
_this.colorSelectInit();
if(title == "条件格式——发生日期"){
if(title == locale().conditionformat.conditionformat_occurrenceDate){
_this.daterangeInit("luckysheet-conditionformat-dialog");
}
},
@ -1506,68 +1519,70 @@ const conditionformat = {
$("#luckysheet-modal-dialog-mask").show();
$("#luckysheet-CFicons-dialog").remove();
let content = '<div class="box">'+
'<div style="margin-bottom: 10px;">请点击选择一组图标:</div>'+
'<div class="title">方向</div>'+
'<div class="list">'+
'<div class="left">'+
'<div class="item" data-len="3" data-leftMin="0" data-top="0" title="三向箭头(彩色)"><div style="background-position:0 0;"></div></div>'+
'<div class="item" data-len="3" data-leftMin="0" data-top="1" title="3个三角形"><div style="background-position:0 -20px;"></div></div>'+
'<div class="item" data-len="4" data-leftMin="0" data-top="2" title="四向箭头(彩色)"><div style="background-position:0 -40px;"></div></div>'+
'<div class="item" data-len="5" data-leftMin="0" data-top="3" title="五向箭头(彩色)"><div style="background-position:0 -60px;"></div></div>'+
'</div>'+
'<div class="right">'+
'<div class="item" data-len="3" data-leftMin="5" data-top="0" title="三向箭头(灰色)"><div style="background-position:-131px 0;"></div></div>'+
'<div class="item" data-len="4" data-leftMin="5" data-top="1" title="四向箭头(灰色)"><div style="background-position:-131px -20px;"></div></div>'+
'<div class="item" data-len="5" data-leftMin="5" data-top="2" title="五向箭头(灰色)"><div style="background-position:-131px -40px;"></div></div>'+
'</div>'+
'<div style="clear:both;"></div>'+
'</div>'+
'<div class="title">形状</div>'+
'<div class="list">'+
'<div class="left">'+
'<div class="item" data-len="3" data-leftMin="0" data-top="4" title="三色交通灯(无边框)"><div style="background-position:0 -80px;"></div></div>'+
'<div class="item" data-len="3" data-leftMin="0" data-top="5" title="三标志"><div style="background-position:0 -100px;"></div></div>'+
'<div class="item" data-len="4" data-leftMin="0" data-top="6" title="绿-红-黑渐变"><div style="background-position:0 -120px;"></div></div>'+
'</div>'+
'<div class="right">'+
'<div class="item" data-len="3" data-leftMin="5" data-top="4" title="三色交通灯(有边框)"><div style="background-position:-131px -80px;"></div></div>'+
'<div class="item" data-len="4" data-leftMin="5" data-top="5" title="四色交通灯"><div style="background-position:-131px -100px;"></div></div>'+
'</div>'+
'<div style="clear:both;"></div>'+
'</div>'+
'<div class="title">标记</div>'+
'<div class="list">'+
'<div class="left">'+
'<div class="item" data-len="3" data-leftMin="0" data-top="7" title="三个符号(有圆圈)"><div style="background-position:0 -140px;"></div></div>'+
'<div class="item" data-len="3" data-leftMin="0" data-top="8" title="三色旗"><div style="background-position:0 -160px;"></div></div>'+
'</div>'+
'<div class="right">'+
'<div class="item" data-len="3" data-leftMin="5" data-top="7" title="三个符号(无圆圈)"><div style="background-position:-131px -140px;"></div></div>'+
'</div>'+
'<div style="clear:both;"></div>'+
'</div>'+
'<div class="title">等级</div>'+
'<div class="list">'+
'<div class="left">'+
'<div class="item" data-len="3" data-leftMin="0" data-top="9" title="3个星形"><div style="background-position:0 -180px;"></div></div>'+
'<div class="item" data-len="5" data-leftMin="0" data-top="10" title="五象限图"><div style="background-position:0 -200px;"></div></div>'+
'<div class="item" data-len="5" data-leftMin="0" data-top="11" title="5个框"><div style="background-position:0 -220px;"></div></div>'+
'</div>'+
'<div class="right">'+
'<div class="item" data-len="4" data-leftMin="5" data-top="9" title="四等级"><div style="background-position:-131px -180px;"></div></div>'+
'<div class="item" data-len="5" data-leftMin="5" data-top="10" title="五等级"><div style="background-position:-131px -200px;"></div></div>'+
'</div>'+
'<div style="clear:both;"></div>'+
'</div>'+
'</div>';
const conditionformat_Text = locale().conditionformat;
let content = `<div class="box">
<div style="margin-bottom: 10px;">${conditionformat_Text.pleaseSelectIcon}</div>
<div class="title">${conditionformat_Text.direction}</div>
<div class="list">
<div class="left">
<div class="item" data-len="3" data-leftMin="0" data-top="0" title="${conditionformat_Text.threeWayArrow}(${conditionformat_Text.multicolor})"><div style="background-position:0 0;"></div></div>
<div class="item" data-len="3" data-leftMin="0" data-top="1" title="${conditionformat_Text.threeTriangles}"><div style="background-position:0 -20px;"></div></div>
<div class="item" data-len="4" data-leftMin="0" data-top="2" title="${conditionformat_Text.fourWayArrow}(${conditionformat_Text.multicolor})"><div style="background-position:0 -40px;"></div></div>
<div class="item" data-len="5" data-leftMin="0" data-top="3" title="${conditionformat_Text.fiveWayArrow}(${conditionformat_Text.multicolor})"><div style="background-position:0 -60px;"></div></div>
</div>
<div class="right">
<div class="item" data-len="3" data-leftMin="5" data-top="0" title="${conditionformat_Text.threeWayArrow}(${conditionformat_Text.grayColor})"><div style="background-position:-131px 0;"></div></div>
<div class="item" data-len="4" data-leftMin="5" data-top="1" title="${conditionformat_Text.fourWayArrow}(${conditionformat_Text.grayColor})"><div style="background-position:-131px -20px;"></div></div>
<div class="item" data-len="5" data-leftMin="5" data-top="2" title="${conditionformat_Text.fiveWayArrow}(${conditionformat_Text.grayColor})"><div style="background-position:-131px -40px;"></div></div>
</div>
<div style="clear:both;"></div>
</div>
<div class="title">${conditionformat_Text.shape}</div>
<div class="list">
<div class="left">
<div class="item" data-len="3" data-leftMin="0" data-top="4" title="${conditionformat_Text.threeColorTrafficLight}(${conditionformat_Text.rimless})"><div style="background-position:0 -80px;"></div></div>
<div class="item" data-len="3" data-leftMin="0" data-top="5" title="${conditionformat_Text.threeSigns}"><div style="background-position:0 -100px;"></div></div>
<div class="item" data-len="4" data-leftMin="0" data-top="6" title="${conditionformat_Text.greenRedBlackGradient}"><div style="background-position:0 -120px;"></div></div>
</div>
<div class="right">
<div class="item" data-len="3" data-leftMin="5" data-top="4" title="${conditionformat_Text.threeColorTrafficLight}(${conditionformat_Text.bordered})"><div style="background-position:-131px -80px;"></div></div>
<div class="item" data-len="4" data-leftMin="5" data-top="5" title="${conditionformat_Text.fourColorTrafficLight}"><div style="background-position:-131px -100px;"></div></div>
</div>
<div style="clear:both;"></div>
</div>
<div class="title">${conditionformat_Text.mark}</div>
<div class="list">
<div class="left">
<div class="item" data-len="3" data-leftMin="0" data-top="7" title="${conditionformat_Text.threeSymbols}(${conditionformat_Text.circled})"><div style="background-position:0 -140px;"></div></div>
<div class="item" data-len="3" data-leftMin="0" data-top="8" title="${conditionformat_Text.tricolorFlag}"><div style="background-position:0 -160px;"></div></div>
</div>
<div class="right">
<div class="item" data-len="3" data-leftMin="5" data-top="7" title="${conditionformat_Text.threeSymbols}(${conditionformat_Text.noCircle})"><div style="background-position:-131px -140px;"></div></div>
</div>
<div style="clear:both;"></div>
</div>
<div class="title">${conditionformat_Text.grade}</div>
<div class="list">
<div class="left">
<div class="item" data-len="3" data-leftMin="0" data-top="9" title="${conditionformat_Text.threeStars}"><div style="background-position:0 -180px;"></div></div>
<div class="item" data-len="5" data-leftMin="0" data-top="10" title="${conditionformat_Text.fiveQuadrantDiagram}"><div style="background-position:0 -200px;"></div></div>
<div class="item" data-len="5" data-leftMin="0" data-top="11" title="${conditionformat_Text.fiveBoxes}"><div style="background-position:0 -220px;"></div></div>
</div>
<div class="right">
<div class="item" data-len="4" data-leftMin="5" data-top="9" title="${conditionformat_Text.grade4}"><div style="background-position:-131px -180px;"></div></div>
<div class="item" data-len="5" data-leftMin="5" data-top="10" title="${conditionformat_Text.grade5}"><div style="background-position:-131px -200px;"></div></div>
</div>
<div style="clear:both;"></div>
</div>
</div>`;
$("body").append(replaceHtml(modelHTML, {
"id": "luckysheet-CFicons-dialog",
"addclass": "luckysheet-CFicons-dialog",
"title": "图标集",
"title": conditionformat_Text.icons,
"content": content,
"botton": '<button class="btn btn-default luckysheet-model-close-btn">关闭</button>',
"botton": `<button class="btn btn-default luckysheet-model-close-btn">${conditionformat_Text.close}</button>`,
"style": "z-index:100003"
}));
let $t = $("#luckysheet-CFicons-dialog")
@ -1912,6 +1927,8 @@ const conditionformat = {
editorConditionRuleDialog: function(){
let _this = this;
const conditionformat_Text = locale().conditionformat;
let rule = _this.editorRule.data;
let ruleType = rule["type"], ruleFormat = rule["format"];
@ -1965,9 +1982,9 @@ const conditionformat = {
$("#luckysheet-editorConditionRule-dialog").remove();
let content = '<div>' +
'<div class="boxTitle">选择规则类型:</div>' +
'<div class="boxTitle">'+ conditionformat_Text.chooseRuleType +':</div>' +
_this.ruleTypeHtml() +
'<div class="boxTitle">编辑规则说明:</div>' +
'<div class="boxTitle">'+ conditionformat_Text.editRuleDescription +':</div>' +
'<div class="ruleExplainBox">' +
ruleExplainHtml +
'</div>' +
@ -1976,9 +1993,10 @@ const conditionformat = {
$("body").append(replaceHtml(modelHTML, {
"id": "luckysheet-editorConditionRule-dialog",
"addclass": "luckysheet-newEditorRule-dialog",
"title": "编辑格式规则",
"title": conditionformat_Text.editFormatRule,
"content": content,
"botton": '<button id="luckysheet-editorConditionRule-dialog-confirm" class="btn btn-primary">确定</button><button id="luckysheet-editorConditionRule-dialog-close" class="btn btn-default">取消</button>',
"botton": `<button id="luckysheet-editorConditionRule-dialog-confirm" class="btn btn-primary">${conditionformat_Text.confirm}</button>
<button id="luckysheet-editorConditionRule-dialog-close" class="btn btn-default">${conditionformat_Text.cancel}</button>`,
"style": "z-index:100003"
}));
let $t = $("#luckysheet-editorConditionRule-dialog")
@ -2129,7 +2147,7 @@ const conditionformat = {
"addclass": "",
"title": title,
"content": content,
"botton": '<button id="luckysheet-conditionformat-info-dialog-close" class="btn btn-default">&nbsp;&nbsp;关闭&nbsp;&nbsp;</button>',
"botton": `<button id="luckysheet-conditionformat-info-dialog-close" class="btn btn-default">${locale().conditionformat.close}</button>`,
"style": "z-index:100003"
}));
let $t = $("#luckysheet-conditionformat-info-dialog")
@ -2213,138 +2231,159 @@ const conditionformat = {
<li><div data-len="5" data-leftmin="5" data-top="2" title="${conditionformat_Text.fiveWayArrow}(${conditionformat_Text.grayColor})" style="background-position: -131px -40px;"></div></li>
<li><div data-len="3" data-leftmin="0" data-top="4" title="${conditionformat_Text.threeColorTrafficLight}(${conditionformat_Text.rimless})" style="background-position: 0 -80px;"></div></li>
<li><div data-len="3" data-leftmin="5" data-top="4" title="${conditionformat_Text.threeColorTrafficLight}(${conditionformat_Text.bordered})" style="background-position: -131px -80px;"></div></li>
<li><div data-len="3" data-leftmin="0" data-top="5" title="三标志" style="background-position: 0 -100px;"></div></li>
<li><div data-len="3" data-leftmin="0" data-top="5" title="${conditionformat_Text.threeSigns}" style="background-position: 0 -100px;"></div></li>
<li><div data-len="4" data-leftmin="5" data-top="5" title="${conditionformat_Text.fourColorTrafficLight}" style="background-position: -131px -100px;"></div></li>
<li><div data-len="4" data-leftmin="0" data-top="6" title="绿-红-黑渐变" style="background-position: 0 -120px;"></div></li>
<li><div data-len="3" data-leftmin="0" data-top="7" title="三个符号(有圆圈)" style="background-position: 0 -140px;"></div></li>
<li><div data-len="3" data-leftmin="5" data-top="7" title="三个符号(无圆圈)" style="background-position: -131px -140px;"></div></li>
<li><div data-len="3" data-leftmin="0" data-top="8" title="三色旗" style="background-position: 0 -160px;"></div></li>
<li><div data-len="3" data-leftmin="0" data-top="9" title="3个星形" style="background-position: 0 -180px;"></div></li>
<li><div data-len="5" data-leftmin="0" data-top="10" title="五象限图" style="background-position: 0 -200px;"></div></li>
<li><div data-len="5" data-leftmin="0" data-top="11" title="5个框" style="background-position: 0 -220px;"></div></li>
<li><div data-len="4" data-leftmin="5" data-top="9" title="四等级" style="background-position: -131px -180px;"></div></li>
<li><div data-len="5" data-leftmin="5" data-top="10" title="五等级" style="background-position: -131px -200px;"></div></li>
<li><div data-len="4" data-leftmin="0" data-top="6" title="${conditionformat_Text.greenRedBlackGradient}" style="background-position: 0 -120px;"></div></li>
<li><div data-len="3" data-leftmin="0" data-top="7" title="${conditionformat_Text.threeSymbols}(${conditionformat_Text.circled})" style="background-position: 0 -140px;"></div></li>
<li><div data-len="3" data-leftmin="5" data-top="7" title="${conditionformat_Text.threeSymbols}(${conditionformat_Text.noCircle})" style="background-position: -131px -140px;"></div></li>
<li><div data-len="3" data-leftmin="0" data-top="8" title="${conditionformat_Text.tricolorFlag}" style="background-position: 0 -160px;"></div></li>
<li><div data-len="3" data-leftmin="0" data-top="9" title="${conditionformat_Text.threeStars}" style="background-position: 0 -180px;"></div></li>
<li><div data-len="5" data-leftmin="0" data-top="10" title="${conditionformat_Text.fiveQuadrantDiagram}" style="background-position: 0 -200px;"></div></li>
<li><div data-len="5" data-leftmin="0" data-top="11" title="${conditionformat_Text.fiveBoxes}" style="background-position: 0 -220px;"></div></li>
<li><div data-len="4" data-leftmin="5" data-top="9" title="${conditionformat_Text.grade4}" style="background-position: -131px -180px;"></div></li>
<li><div data-len="5" data-leftmin="5" data-top="10" title="${conditionformat_Text.grade5}" style="background-position: -131px -200px;"></div></li>
</ul>
</div>
</div>`;
break;
case 1: //只为包含以下内容的单元格设置格式
ruleExplainHtml = '<div class="title">只为满足以下条件的单元格:</div>' +
'<div style="height: 30px;margin-bottom: 10px;">' +
'<select id="type1">' +
'<option value="number">单元格值</option>' +
'<option value="text">特定文本</option>' +
'<option value="date">发生日期</option>' +
'</select>'+
'<div>' +
'<div class="type1Box numberBox">' +
'<select id="type2">' +
'<option value="greaterThan">大于</option>' +
'<option value="lessThan">小于</option>' +
'<option value="betweenness">介于</option>' +
'<option value="equal">等于</option>' +
'</select>' +
'<div class="inpbox range" id="conditionVal">' +
'<input class="formulaInputFocus"/><i class="fa fa-table" aria-hidden="true" title="点击选择单元格"></i>' +
'</div>' +
'<span class="txt" style="display: none;">到</span>' +
'<div class="inpbox range" id="conditionVal2" style="display: none;">' +
'<input class="formulaInputFocus"/><i class="fa fa-table" aria-hidden="true" title="点击选择数据范围"></i>' +
'</div>' +
'</div>' +
'<div class="type1Box textBox" style="display: none;">' +
'<select id="type2">' +
'<option value="">包含</option>' +
'</select>' +
'<div class="inpbox range" id="conditionVal">' +
'<input class="formulaInputFocus"/><i class="fa fa-table" aria-hidden="true" title="点击选择单元格"></i>' +
'</div>' +
'</div>' +
'<div class="type1Box dateBox" style="display: none;">' +
'<div style="width: 162px;" class="inpbox">' +
'<input style="width: 150px;" id="daterange-btn" readonly="readonly" placeholder="请选择日期"/>' +
'</div>' +
'</div>' +
'</div>' +
'</div>' +
'<div class="title">设置格式:</div>' + textCellColorHtml;
ruleExplainHtml = `<div class="title">${conditionformat_Text.ruleTypeItem2_title}:</div>
<div style="height: 30px;margin-bottom: 10px;">
<select id="type1">
<option value="number">${conditionformat_Text.cellValue}</option>
<option value="text">${conditionformat_Text.specificText}</option>
<option value="date">${conditionformat_Text.occurrence}</option>
</select>
<div>
<div class="type1Box numberBox">
<select id="type2">
<option value="greaterThan">${conditionformat_Text.greaterThan}</option>
<option value="lessThan">${conditionformat_Text.lessThan}</option>
<option value="betweenness">${conditionformat_Text.between}</option>
<option value="equal">${conditionformat_Text.equal}</option>
</select>
<div class="inpbox range" id="conditionVal">
<input class="formulaInputFocus"/>
<i class="fa fa-table" aria-hidden="true" title="${conditionformat_Text.selectCell}"></i>
</div>
<span class="txt" style="display: none;">${conditionformat_Text.in}</span>
<div class="inpbox range" id="conditionVal2" style="display: none;">
<input class="formulaInputFocus"/>
<i class="fa fa-table" aria-hidden="true" title="${conditionformat_Text.selectDataRange}"></i>
</div>
</div>
<div class="type1Box textBox" style="display: none;">
<select id="type2">
<option value="">${conditionformat_Text.contain}</option>
</select>
<div class="inpbox range" id="conditionVal">
<input class="formulaInputFocus"/>
<i class="fa fa-table" aria-hidden="true" title="${conditionformat_Text.selectCell}"></i>
</div>
</div>
<div class="type1Box dateBox" style="display: none;">
<div style="width: 162px;" class="inpbox">
<input style="width: 150px;" id="daterange-btn" readonly="readonly" placeholder="${conditionformat_Text.pleaseSelectADate}"/>
</div>
</div>
</div>
</div>
<div class="title">设置格式</div>${textCellColorHtml}`;
break;
case 2: //仅对排名靠前或靠后的数值设置格式
ruleExplainHtml = '<div class="title">为以下排名内的值:</div>'+
'<div style="height: 30px;margin-bottom: 10px;">'+
'<select id="type1">'+
'<option value="top">前</option>'+
'<option value="last">后</option>'+
'</select>'+
'<div class="inpbox" id="conditionVal">'+
'<input class="formulaInputFocus" type="number" value="10"/>'+
'</div>'+
'<input id="isPercent" type="checkbox"/>'+
'<label for="isPercent" class="txt">所选范围的百分比</label>'+
'</div>'+
'<div class="title">设置格式:</div>' + textCellColorHtml;
ruleExplainHtml = `<div class="title">${conditionformat_Text.ruleTypeItem3_title}:</div>
<div style="height: 30px;margin-bottom: 10px;">
<select id="type1">
<option value="top">${conditionformat_Text.top}</option>
<option value="last">${conditionformat_Text.last}</option>
</select>
<div class="inpbox" id="conditionVal">
<input class="formulaInputFocus" type="number" value="10"/>
</div>
<input id="isPercent" type="checkbox"/>
<label for="isPercent" class="txt">${conditionformat_Text.selectRange_percent}</label>
</div>
<div class="title">${conditionformat_Text.setFormat}</div>${textCellColorHtml}`;
break;
case 3: //仅对高于或低于平均值的数值设置格式
ruleExplainHtml = '<div class="title">为满足以下条件的值:</div>'+
'<div style="height: 30px;margin-bottom: 10px;">'+
'<select id="type1">'+
'<option value="AboveAverage">高于</option>'+
'<option value="SubAverage">低于</option>'+
'</select>'+
'<span class="txt">选定范围的平均值</span>'+
'</div>'+
'<div class="title">设置格式:</div>' + textCellColorHtml;
ruleExplainHtml = `<div class="title">${conditionformat_Text.ruleTypeItem4_title}:</div>
<div style="height: 30px;margin-bottom: 10px;">
<select id="type1">
<option value="AboveAverage">${conditionformat_Text.above}</option>
<option value="SubAverage">${conditionformat_Text.below}</option>
</select>
<span class="txt">${conditionformat_Text.selectRange_average}</span>
</div>
<div class="title">${conditionformat_Text.setFormat}</div>${textCellColorHtml}`;
break;
case 4: //仅对唯一值或重复值设置格式
ruleExplainHtml = '<div class="title">全部:</div>'+
'<div style="height: 30px;margin-bottom: 10px;">'+
'<select id="type1">'+
'<option value="0">重复</option>'+
'<option value="1">唯一</option>'+
'</select>'+
'<span class="txt">选定范围中的数值</span>'+
'</div>'+
'<div class="title">设置格式:</div>' + textCellColorHtml;
ruleExplainHtml = `<div class="title">${conditionformat_Text.all}:</div>
<div style="height: 30px;margin-bottom: 10px;">
<select id="type1">
<option value="0">${conditionformat_Text.duplicateValue}</option>
<option value="1">${conditionformat_Text.uniqueValue}</option>
</select>
<span class="txt">${conditionformat_Text.selectRange_value}</span>
</div>
<div class="title">${conditionformat_Text.setFormat}</div>${textCellColorHtml}`;
break;
}
return ruleExplainHtml;
},
daterangeInit: function(id){
const conditionformat_Text = locale().conditionformat;
//日期选择插件
$('.ranges_1 ul').remove();
$('#' + id).find("#daterange-btn").daterangepicker({
ranges:
{
// '全部': [moment(), moment().subtract(-1, 'days')],
'昨天': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
'今天': [moment(), moment()],
// '明天': [moment().subtract(-1, 'days'), moment().subtract(-1, 'days')],
'上周': [moment(moment().subtract(1, 'week')).subtract(new Date().getDay() - 1, 'days'), moment().subtract(new Date().getDay(), 'days')],
'本周': [moment().subtract(new Date().getDay() - 1, 'days'), moment().add(7 - new Date().getDay(), 'days')],
'上月': [moment(moment().format('YYYY-MM')).subtract(1, 'month'), moment(moment().format('YYYY-MM')).subtract(1, 'day')],
'本月': [moment().format('YYYY-MM'), moment(moment(moment().format('YYYY-MM')).add(1, 'month')).subtract(1, 'day')],
'去年': [moment(moment(moment().format('YYYY'))).subtract(1, 'years').format('YYYY'), moment(moment().format('YYYY')).subtract(1, 'day')],
'本年': [moment().format('YYYY'), moment(moment(moment().add(1, 'years')).format('YYYY')).subtract(1, 'day')],
'最近7天': [moment().subtract(6, 'days'), moment()],
'最近30天': [moment().subtract(29, 'days'), moment()]
// '未来七天': [moment(),moment().subtract(-6, 'days')],
// '未来30天': [moment(),moment().subtract(-29, 'days')],
// '未来60天': [moment(),moment().subtract(-59, 'days'), ]
// [conditionformat_Text.all]: [moment(), moment().subtract(-1, 'days')],
[conditionformat_Text.yesterday]: [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
[conditionformat_Text.today]: [moment(), moment()],
// [conditionformat_Text.tomorrow]: [moment().subtract(-1, 'days'), moment().subtract(-1, 'days')],
[conditionformat_Text.lastWeek]: [moment(moment().subtract(1, 'week')).subtract(new Date().getDay() - 1, 'days'), moment().subtract(new Date().getDay(), 'days')],
[conditionformat_Text.thisWeek]: [moment().subtract(new Date().getDay() - 1, 'days'), moment().add(7 - new Date().getDay(), 'days')],
[conditionformat_Text.lastMonth]: [moment(moment().format('YYYY-MM')).subtract(1, 'month'), moment(moment().format('YYYY-MM')).subtract(1, 'day')],
[conditionformat_Text.thisMonth]: [moment().format('YYYY-MM'), moment(moment(moment().format('YYYY-MM')).add(1, 'month')).subtract(1, 'day')],
[conditionformat_Text.lastYear]: [moment(moment(moment().format('YYYY'))).subtract(1, 'years').format('YYYY'), moment(moment().format('YYYY')).subtract(1, 'day')],
[conditionformat_Text.thisYear]: [moment().format('YYYY'), moment(moment(moment().add(1, 'years')).format('YYYY')).subtract(1, 'day')],
[conditionformat_Text.last7days]: [moment().subtract(6, 'days'), moment()],
[conditionformat_Text.last30days]: [moment().subtract(29, 'days'), moment()]
// [conditionformat_Text.next7days]: [moment(),moment().subtract(-6, 'days')],
// [conditionformat_Text.next30days]: [moment(),moment().subtract(-29, 'days')],
// [conditionformat_Text.next60days]: [moment(),moment().subtract(-59, 'days'), ]
},
startDate: moment(),
endDate: moment()
},
function(start, end,label) {
//label:通过它来知道用户选择的是什么,传给后台进行相应的展示
if(label == '全部'){
let format1 = [
conditionformat_Text.yesterday,
conditionformat_Text.today
];
let format2 = [
conditionformat_Text.lastWeek,
conditionformat_Text.thisWeek,
conditionformat_Text.lastMonth,
conditionformat_Text.thisMonth,
conditionformat_Text.lastYear,
conditionformat_Text.thisYear,
conditionformat_Text.last7days,
conditionformat_Text.last30days
]
if(label == conditionformat_Text.all){
$('#daterange-btn').val('');
}
else if(label == '昨天' || label == '今天'){
else if(format1.indexOf(label) > -1){
$('#daterange-btn').val(start.format('YYYY/MM/DD'));
}
else if(label == '上周' || label == '本周' || label == '上月' || label == '本月' || label == '去年' || label == '本年' || label == '最近7天' || label == '最近30天'){
$('#daterange-btn').val(start.format('YYYY/MM/DD')+'-'+end.format('YYYY/MM/DD'));
else if(format2.indexOf(label) > -1){
$('#daterange-btn').val(start.format('YYYY/MM/DD') + '-' + end.format('YYYY/MM/DD'));
}
}
);

502
src/controllers/menuButton.js

@ -2108,131 +2108,132 @@ const menuButton = {
$("#luckysheet-icon-conditionformat").click(function(){
let menuButtonId = $(this).attr("id") + "-menuButton";
let $menuButton = $("#" + menuButtonId);
const conditionformat_text = locale().conditionformat;
if($menuButton.length == 0){
let itemdata = [
{"text": "突出显示单元格规则", "value": "highlightCellRule", "example": "more"},
{"text": "项目选取规则", "value": "projectSelectRule", "example": "more"},
{"text": "数据条", "value": "dataBar", "example": "more"},
{"text": "色阶", "value": "colorGradation", "example": "more"},
{"text": "图标集", "value": "icons", "example": ""},
{"text": "", "value": "split", "example": ""},
{"text": "新建规则", "value": "newRule", "example": ""},
{"text": "清除规则", "value": "deleteRule", "example": "more"},
{"text": "管理规则", "value": "administerRule", "example": ""}
{ "text": conditionformat_text.highlightCellRules, "value": "highlightCellRule", "example": "more" },
{ "text": conditionformat_text.itemSelectionRules, "value": "projectSelectRule", "example": "more" },
{ "text": conditionformat_text.dataBar, "value": "dataBar", "example": "more" },
{ "text": conditionformat_text.colorGradation, "value": "colorGradation", "example": "more" },
{ "text": conditionformat_text.icons, "value": "icons", "example": "" },
{ "text": "", "value": "split", "example": "" },
{ "text": conditionformat_text.newRule, "value": "newRule", "example": "" },
{ "text": conditionformat_text.deleteRule, "value": "deleteRule", "example": "more" },
{ "text": conditionformat_text.manageRules, "value": "administerRule", "example": "" }
];
let itemset = _this.createButtonMenu(itemdata);
let menu = replaceHtml(_this.menu, {"id": "conditionformat", "item": itemset, "subclass": "", "sub": ""});
//突出显示单元格规则子菜单
let subitemdata = [
{"text": "大于", "value": "greaterThan", "example": ">"},
{"text": "小于", "value": "lessThan", "example": "<"},
{"text": "介于", "value": "betweenness", "example": "[]"},
{"text": "等于", "value": "equal", "example": "="},
{"text": "文本包含", "value": "textContains", "example": "()"},
{"text": "发生日期", "value": "occurrenceDate", "example": "昨天"},
{"text": "重复值", "value": "duplicateValue", "example": "##"}
{ "text": conditionformat_text.greaterThan, "value": "greaterThan", "example": ">" },
{ "text": conditionformat_text.lessThan, "value": "lessThan", "example": "<" },
{ "text": conditionformat_text.between, "value": "betweenness", "example": "[]" },
{ "text": conditionformat_text.equal, "value": "equal", "example": "=" },
{ "text": conditionformat_text.textContains, "value": "textContains", "example": "()" },
{ "text": conditionformat_text.occurrence, "value": "occurrenceDate", "example": conditionformat_text.yesterday },
{ "text": conditionformat_text.duplicateValue, "value": "duplicateValue", "example": "##" }
];
let subitemset = _this.createButtonMenu(subitemdata);
let submenu = replaceHtml(_this.menu, {"id": "highlightCellRule", "item": subitemset, "subclass": "luckysheet-menuButton-sub"});
//项目选取规则子菜单
let subitemdata2 = [
{"text": "前 10 项", "value": "top10", "example": "前10项"},
{"text": "前 10%", "value": "top10%", "example": "前10%"},
{"text": "最后 10 项", "value": "last10", "example": "后10项"},
{"text": "最后 10%", "value": "last10%", "example": "后10%"},
{"text": "高于平均值", "value": "AboveAverage", "example": "高于均值"},
{"text": "低于平均值", "value": "SubAverage", "example": "低于均值"}
{ "text": conditionformat_text.top10, "value": "top10", "example": conditionformat_text.top10 },
{ "text": conditionformat_text.top10_percent, "value": "top10%", "example": conditionformat_text.top10_percent },
{ "text": conditionformat_text.last10, "value": "last10", "example": conditionformat_text.last10 },
{ "text": conditionformat_text.last10_percent, "value": "last10%", "example": conditionformat_text.last10_percent },
{ "text": conditionformat_text.aboveAverage, "value": "AboveAverage", "example": conditionformat_text.aboveAverage },
{ "text": conditionformat_text.belowAverage, "value": "SubAverage", "example": conditionformat_text.belowAverage }
];
let subitemset2 = _this.createButtonMenu(subitemdata2);
let submenu2 = replaceHtml(_this.menu, {"id": "projectSelectRule", "item": subitemset2, "subclass": "luckysheet-menuButton-sub"});
//数据条子菜单
let submenu3 = '<div class="luckysheet-cols-menu luckysheet-rightgclick-menu luckysheet-menuButton luckysheet-menuButton-sub luckysheet-mousedown-cancel" id="luckysheet-icon-dataBar-menuButton" style="width: 126px;padding: 5px;top: 118.5px;left: 1321.48px;display: none;">' +
'<div itemvalue="0" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 0;" title="蓝-白渐变数据条"></div>' +
'</div>' +
'<div itemvalue="1" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px 0;" title="绿-白渐变数据条"></div>' +
'</div>' +
'<div itemvalue="2" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px 0;" title="红-白渐变数据条"></div>' +
'</div>' +
'<div itemvalue="3" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 -36px;" title="橙-白渐变数据条"></div>' +
'</div>' +
'<div itemvalue="4" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px -36px;" title="浅蓝-白渐变数据条"></div>' +
'</div>' +
'<div itemvalue="5" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px -36px;" title="紫-白渐变数据条"></div>' +
'</div>' +
'<div itemvalue="6" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 -72px;" title="蓝色数据条"></div>' +
'</div>' +
'<div itemvalue="7" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px -72px;" title="绿色数据条"></div>' +
'</div>' +
'<div itemvalue="8" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px -72px;" title="红色数据条"></div>' +
'</div>' +
'<div itemvalue="9" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 -108px;" title="橙色数据条"></div>' +
'</div>' +
'<div itemvalue="10" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px -108px;" title="浅蓝色数据条"></div>' +
'</div>' +
'<div itemvalue="11" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px -108px;" title="紫色数据条"></div>' +
'</div>' +
'</div>';
let submenu3 = `<div id="luckysheet-icon-dataBar-menuButton" class="luckysheet-cols-menu luckysheet-rightgclick-menu luckysheet-menuButton luckysheet-menuButton-sub luckysheet-mousedown-cancel" style="width: 126px;padding: 5px;top: 118.5px;left: 1321.48px;display: none;">
<div itemvalue="0" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 0;" title="${conditionformat_text.gradientDataBar_1}"></div>
</div>
<div itemvalue="1" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px 0;" title="${conditionformat_text.gradientDataBar_2}"></div>
</div>
<div itemvalue="2" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px 0;" title="${conditionformat_text.gradientDataBar_3}"></div>
</div>
<div itemvalue="3" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 -36px;" title="${conditionformat_text.gradientDataBar_4}"></div>
</div>
<div itemvalue="4" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px -36px;" title="${conditionformat_text.gradientDataBar_5}"></div>
</div>
<div itemvalue="5" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px -36px;" title="${conditionformat_text.gradientDataBar_6}"></div>
</div>
<div itemvalue="6" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 -72px;" title="${conditionformat_text.solidColorDataBar_1}"></div>
</div>
<div itemvalue="7" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px -72px;" title="${conditionformat_text.solidColorDataBar_2}"></div>
</div>
<div itemvalue="8" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px -72px;" title="${conditionformat_text.solidColorDataBar_3}"></div>
</div>
<div itemvalue="9" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 -108px;" title="${conditionformat_text.solidColorDataBar_4}"></div>
</div>
<div itemvalue="10" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px -108px;" title="${conditionformat_text.solidColorDataBar_5}"></div>
</div>
<div itemvalue="11" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px -108px;" title="${conditionformat_text.solidColorDataBar_6}"></div>
</div>
</div>`;
//色阶
let submenu4 = '<div class="luckysheet-cols-menu luckysheet-rightgclick-menu luckysheet-menuButton luckysheet-menuButton-sub luckysheet-mousedown-cancel" id="luckysheet-icon-colorGradation-menuButton" style="width: 126px;padding: 5px;top: 143.5px;left: 1321.48px;display: none;">' +
'<div itemvalue="0" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 0;" title="绿-黄-红色阶"></div>' +
'</div>' +
'<div itemvalue="1" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px 0;" title="红-黄-绿色阶"></div>' +
'</div>' +
'<div itemvalue="2" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px 0;" title="绿-白-红色阶"></div>' +
'</div>' +
'<div itemvalue="3" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -114px 0;" title="红-白-绿色阶"></div>' +
'</div>' +
'<div itemvalue="4" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 -36px;" title="蓝-白-红色阶"></div>' +
'</div>' +
'<div itemvalue="5" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px -36px;" title="红-白-蓝色阶"></div>' +
'</div>' +
'<div itemvalue="6" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px -36px;" title="白-红色阶"></div>' +
'</div>' +
'<div itemvalue="7" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -114px -36px;" title="红-白色阶"></div>' +
'</div>' +
'<div itemvalue="8" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 -72px;" title="绿-白色阶"></div>' +
'</div>' +
'<div itemvalue="9" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px -72px;" title="白-绿色阶"></div>' +
'</div>' +
'<div itemvalue="10" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px -72px;" title="绿-黄色阶"></div>' +
'</div>' +
'<div itemvalue="11" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">' +
'<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -114px -72px;" title="黄-绿色阶"></div>' +
'</div>' +
'</div>';
let submenu4 = `<div id="luckysheet-icon-colorGradation-menuButton" class="luckysheet-cols-menu luckysheet-rightgclick-menu luckysheet-menuButton luckysheet-menuButton-sub luckysheet-mousedown-cancel" style="width: 126px;padding: 5px;top: 143.5px;left: 1321.48px;display: none;">
<div itemvalue="0" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 0;" title="${conditionformat_text.colorGradation_1}"></div>
</div>
<div itemvalue="1" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px 0;" title="${conditionformat_text.colorGradation_2}"></div>
</div>
<div itemvalue="2" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px 0;" title="${conditionformat_text.colorGradation_3}"></div>
</div>
<div itemvalue="3" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -114px 0;" title="${conditionformat_text.colorGradation_4}"></div>
</div>
<div itemvalue="4" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 -36px;" title="${conditionformat_text.colorGradation_5}"></div>
</div>
<div itemvalue="5" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px -36px;" title="${conditionformat_text.colorGradation_6}"></div>
</div>
<div itemvalue="6" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px -36px;" title="${conditionformat_text.colorGradation_7}"></div>
</div>
<div itemvalue="7" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -114px -36px;" title="${conditionformat_text.colorGradation_8}"></div>
</div>
<div itemvalue="8" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: 0 -72px;" title="${conditionformat_text.colorGradation_9}"></div>
</div>
<div itemvalue="9" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -38px -72px;" title="${conditionformat_text.colorGradation_10}"></div>
</div>
<div itemvalue="10" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -76px -72px;" title="${conditionformat_text.colorGradation_11}"></div>
</div>
<div itemvalue="11" class="luckysheet-cols-menuitem luckysheet-mousedown-cancel" style="width: 28px; height: 26px;padding: 5px;float: left;">
<div class="luckysheet-mousedown-cancel bgImgBox" style="background-position: -114px -72px;" title="${conditionformat_text.colorGradation_12}"></div>
</div>
</div>`;
//清除规则子菜单
let subitemdata6 = [
// {"text":"清除所选单元格的规则", "value":"", "example":""},
{"text":"清除整个工作表的规则", "value":"delSheet", "example":""}
{ "text": conditionformat_text.deleteSheetRule, "value": "delSheet", "example": "" }
];
let subitemset6 = _this.createButtonMenu(subitemdata6);
let submenu6 = replaceHtml(_this.menu, {"id": "deleteRule", "item": subitemset6, "subclass":"luckysheet-menuButton-sub"});
@ -2251,10 +2252,10 @@ const menuButton = {
if(itemvalue == "icons"){
if(Store.luckysheet_select_save.length == 0){
if(isEditMode()){
alert("请选择应用范围");
alert(conditionformat_text.pleaseSelectRange);
}
else{
tooltip.info("请选择应用范围", "");
tooltip.info(conditionformat_text.pleaseSelectRange, "");
}
return;
}
@ -2265,10 +2266,10 @@ const menuButton = {
else if(itemvalue == "newRule"){
if(Store.luckysheet_select_save.length == 0){
if(isEditMode()){
alert("请选择应用范围");
alert(conditionformat_text.pleaseSelectRange);
}
else{
tooltip.info("请选择应用范围", "");
tooltip.info(conditionformat_text.pleaseSelectRange, "");
}
return;
}
@ -2329,108 +2330,107 @@ const menuButton = {
if(Store.luckysheet_select_save.length == 0){
if(isEditMode()){
alert("请选择条件格式的应用范围");
alert(conditionformat_text.pleaseSelectRange);
}
else{
tooltip.info("请选择条件格式的应用范围", "");
tooltip.info(conditionformat_text.pleaseSelectRange, "");
}
return;
}
else{
let textCellColorHtml = conditionformat.textCellColorHtml;
let textCellColorHtml = conditionformat.textCellColorHtml();
let title, content;
switch(itemvalue){
case "greaterThan":
title = "条件格式——大于";
content = '<div class="box" data-itemvalue="greaterThan">' +
'<div class="boxTitleOne">为大于以下值的单元格设置格式:</div>' +
'<div class="inpbox range">' +
'<input id="conditionVal" class="formulaInputFocus"/>' +
'<i class="fa fa-table" aria-hidden="true" title="点击选择单元格"></i>' +
'</div>' +
'<div style="margin: 5px 0;">设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_greaterThan;
content = `<div class="box" data-itemvalue="greaterThan">
<div class="boxTitleOne">${conditionformat_text.conditionformat_greaterThan_title}</div>
<div class="inpbox range">
<input id="conditionVal" class="formulaInputFocus"/>
<i class="fa fa-table" aria-hidden="true" title="${conditionformat_text.selectCell}"></i>
</div>
<div style="margin: 5px 0;">${conditionformat_text.setAs}</div>
${textCellColorHtml}
</div>`;
break;
case "lessThan":
title = "条件格式——小于";
content = '<div class="box" data-itemvalue="lessThan">' +
'<div class="boxTitleOne">为小于以下值的单元格设置格式:</div>' +
'<div class="inpbox range">' +
'<input id="conditionVal" class="formulaInputFocus"/>' +
'<i class="fa fa-table" aria-hidden="true" title="点击选择单元格"></i>' +
'</div>' +
'<div style="margin: 5px 0;">设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_lessThan;
content = `<div class="box" data-itemvalue="lessThan">
<div class="boxTitleOne">${conditionformat_text.conditionformat_lessThan_title}</div>
<div class="inpbox range">
<input id="conditionVal" class="formulaInputFocus"/>
<i class="fa fa-table" aria-hidden="true" title="${conditionformat_text.selectCell}"></i>
</div>
<div style="margin: 5px 0;">${conditionformat_text.setAs}</div>
${textCellColorHtml}
</div>`;
break;
case "betweenness":
title = "条件格式——介于";
content = '<div class="box" data-itemvalue="betweenness">' +
'<div class="boxTitleOne">为介于以下值的单元格设置格式:</div>' +
'<div style="height: 30px;line-height: 30px;">' +
'<div class="inpbox2 range">' +
'<input id="conditionVal" class="formulaInputFocus"/>' +
'<i class="fa fa-table" aria-hidden="true" title="点击选择单元格"></i>' +
'</div>' +
'<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">到</div>' +
'<div class="inpbox2 range">' +
'<input id="conditionVal2" class="formulaInputFocus"/>' +
'<i class="fa fa-table" aria-hidden="true" title="点击选择单元格"></i>' +
'</div>' +
'</div>' +
'<div style="margin: 5px 0;">设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_betweenness;
content = `<div class="box" data-itemvalue="betweenness">
<div class="boxTitleOne">${conditionformat_text.conditionformat_betweenness_title}</div>
<div style="height: 30px;line-height: 30px;">
<div class="inpbox2 range">
<input id="conditionVal" class="formulaInputFocus"/>
<i class="fa fa-table" aria-hidden="true" title="${conditionformat_text.selectCell}"></i>
</div>
<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">${conditionformat_text.to}</div>
<div class="inpbox2 range">
<input id="conditionVal2" class="formulaInputFocus"/>
<i class="fa fa-table" aria-hidden="true" title="${conditionformat_text.selectCell}"></i>
</div>
</div>
<div style="margin: 5px 0;">${conditionformat_text.setAs}</div>
${textCellColorHtml}
</div>`;
break;
case "equal":
title = "条件格式——等于";
content = '<div class="box" data-itemvalue="equal">' +
'<div class="boxTitleOne">为等于以下值的单元格设置格式:</div>' +
'<div class="inpbox range">' +
'<input id="conditionVal" class="formulaInputFocus"/>' +
'<i class="fa fa-table" aria-hidden="true" title="点击选择单元格"></i>' +
'</div>' +
'<div style="margin: 5px 0;">设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_equal;
content = `<div class="box" data-itemvalue="equal">
<div class="boxTitleOne">${conditionformat_text.conditionformat_equal_title}</div>
<div class="inpbox range">
<input id="conditionVal" class="formulaInputFocus"/>
<i class="fa fa-table" aria-hidden="true" title="${conditionformat_text.selectCell}"></i>
</div>
<div style="margin: 5px 0;">${conditionformat_text.setAs}</div>
${textCellColorHtml}
</div>`;
break;
case "textContains":
title = "条件格式——文本包含";
content = '<div class="box" data-itemvalue="textContains">' +
'<div class="boxTitleOne">为包含以下文本的单元格设置格式:</div>' +
'<div class="inpbox range">' +
'<input id="conditionVal" class="formulaInputFocus"/>' +
'<i class="fa fa-table" aria-hidden="true" title="点击选择单元格"></i>' +
'</div>' +
'<div style="margin: 5px 0;">设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_textContains;
content = `<div class="box" data-itemvalue="textContains">
<div class="boxTitleOne">${conditionformat_text.conditionformat_textContains_title}</div>
<div class="inpbox range">
<input id="conditionVal" class="formulaInputFocus"/>
<i class="fa fa-table" aria-hidden="true" title="${conditionformat_text.selectCell}"></i>
</div>
<div style="margin: 5px 0;">${conditionformat_text.setAs}</div>
${textCellColorHtml}
</div>`;
break;
case "occurrenceDate":
title = "条件格式——发生日期";
content = '<div class="box" data-itemvalue="occurrenceDate">' +
'<div class="boxTitleOne">为包含以下日期的单元格设置格式:</div>' +
'<div class="inpbox">' +
'<input id="daterange-btn" class="formulaInputFocus" readonly="readonly" placeholder="请选择日期"/>' +
'</div>' +
'<div style="margin: 5px 0;">设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_occurrenceDate;
content = `<div class="box" data-itemvalue="occurrenceDate">
<div class="boxTitleOne">${conditionformat_text.conditionformat_occurrenceDate_title}</div>
<div class="inpbox">
<input id="daterange-btn" class="formulaInputFocus" readonly="readonly" placeholder="${conditionformat_text.pleaseSelectADate}"/>
</div>
<div style="margin: 5px 0;">${conditionformat_text.setAs}</div>
${textCellColorHtml}
</div>`;
break;
case "duplicateValue":
title = "条件格式——重复值";
content = '<div class="box" data-itemvalue="duplicateValue">' +
'<div class="boxTitleOne">为包含以下类型值的单元格设置格式:</div>' +
'<select id="conditionVal" class="selectbox">' +
'<option value="0">重复</option>' +
'<option value="1">唯一</option>' +
'</select>' +
'<span style="margin-left: 5px;">值</span>' +
'<div style="margin:5px 0;">设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_duplicateValue;
content = `<div class="box" data-itemvalue="duplicateValue">
<div class="boxTitleOne">${conditionformat_text.conditionformat_duplicateValue_title}</div>
<select id="conditionVal" class="selectbox">
<option value="0">${conditionformat_text.duplicateValue}</option>
<option value="1">${conditionformat_text.uniqueValue}</option>
</select>
<div style="margin:5px 0;">${conditionformat_text.setAs}</div>
${textCellColorHtml}
</div>`;
break;
}
@ -2448,93 +2448,93 @@ const menuButton = {
if(Store.luckysheet_select_save.length == 0){
if(isEditMode()){
alert("请选择条件格式的应用范围");
alert(conditionformat_text.pleaseSelectRange);
}
else{
tooltip.info("请选择条件格式的应用范围", "");
tooltip.info(conditionformat_text.pleaseSelectRange, "");
}
return;
}
else{
let textCellColorHtml = conditionformat.textCellColorHtml;
let textCellColorHtml = conditionformat.textCellColorHtml();
let title, content;
switch(itemvalue){
case "top10":
title = "条件格式——前 10 项";
content = '<div class="box" data-itemvalue="top10">' +
'<div class="boxTitleOne">为值最大的那些单元格设置格式:</div>' +
'<div style="height: 30px;line-height: 30px;">' +
'<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">前</div>' +
'<div class="inpbox2">' +
'<input id="conditionVal" class="formulaInputFocus" type="number" value="10"/>' +
'</div>' +
'<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">项</div>' +
'</div>' +
'<div style="margin: 5px 0;">设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_top10;
content = `<div class="box" data-itemvalue="top10">
<div class="boxTitleOne">${conditionformat_text.conditionformat_top10_title}</div>
<div style="height: 30px;line-height: 30px;">
<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">${conditionformat_text.top}</div>
<div class="inpbox2">
<input id="conditionVal" class="formulaInputFocus" type="number" value="10"/>
</div>
<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">${conditionformat_text.oneself}</div>
</div>
<div style="margin: 5px 0;">${conditionformat_text.setAs}</div>
${textCellColorHtml}
</div>`;
break;
case "top10%":
title = "条件格式——前 10%";
content = '<div class="box" data-itemvalue="top10%">' +
'<div class="boxTitleOne">为值最大的那些单元格设置格式:</div>' +
'<div style="height: 30px;line-height: 30px;">' +
'<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">前</div>' +
'<div class="inpbox2">' +
'<input id="conditionVal" class="formulaInputFocus" type="number" value="10"/>' +
'</div>' +
'<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">%</div>' +
'</div>' +
'<div style="margin: 5px 0;">设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_top10_percent;
content = `<div class="box" data-itemvalue="top10%">
<div class="boxTitleOne">${conditionformat_text.conditionformat_top10_title}</div>
<div style="height: 30px;line-height: 30px;">
<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">${conditionformat_text.top}</div>
<div class="inpbox2">
<input id="conditionVal" class="formulaInputFocus" type="number" value="10"/>
</div>
<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">%</div>
</div>
<div style="margin: 5px 0;">${conditionformat_text.setAs}</div>
${textCellColorHtml}
</div>`;
break;
case "last10":
title = "条件格式——最后 10 项";
content = '<div class="box" data-itemvalue="last10">' +
'<div class="boxTitleOne">为值最小的那些单元格设置格式:</div>' +
'<div style="height: 30px;line-height: 30px;">' +
'<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">最后</div>' +
'<div class="inpbox2">' +
'<input id="conditionVal" class="formulaInputFocus" type="number" value="10"/>' +
'</div>' +
'<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">项</div>' +
'</div>' +
'<div style="margin: 5px 0;">设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_last10;
content = `<div class="box" data-itemvalue="last10">
<div class="boxTitleOne">${conditionformat_text.conditionformat_last10_title}</div>
<div style="height: 30px;line-height: 30px;">
<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">${conditionformat_text.last}</div>
<div class="inpbox2">
<input id="conditionVal" class="formulaInputFocus" type="number" value="10"/>
</div>
<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">${conditionformat_text.oneself}</div>
</div>
<div style="margin: 5px 0;">${conditionformat_text.setAs}</div>
${textCellColorHtml}
</div>`;
break;
case "last10%":
title = "条件格式——最后 10%";
content = '<div class="box" data-itemvalue="last10%">' +
'<div class="boxTitleOne">为值最小的那些单元格设置格式:</div>' +
'<div style="height: 30px;line-height: 30px;">' +
'<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">最后</div>' +
'<div class="inpbox2">' +
'<input id="conditionVal" class="formulaInputFocus" type="number" value="10"/>' +
'</div>' +
'<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">%</div>' +
'</div>' +
'<div style="margin:5px 0;">设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_last10_percent;
content = `<div class="box" data-itemvalue="last10%">
<div class="boxTitleOne">${conditionformat_text.conditionformat_last10_title}</div>
<div style="height: 30px;line-height: 30px;">
<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">${conditionformat_text.last}</div>
<div class="inpbox2">
<input id="conditionVal" class="formulaInputFocus" type="number" value="10"/>
</div>
<div style="float: left;height: 30px;line-height: 30px;margin: 0 5px;">%</div>
</div>
<div style="margin:5px 0;">设置为</div>
${textCellColorHtml}
</div>`;
break;
case "AboveAverage":
title = "条件格式——高于平均值";
content = '<div class="box" data-itemvalue="AboveAverage">' +
'<div class="boxTitleOne">为高于平均值的单元格设置格式:</div>' +
'<div style="margin: 5px 0;">针对选定区域,设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_AboveAverage;
content = `<div class="box" data-itemvalue="AboveAverage">
<div class="boxTitleOne">${conditionformat_text.conditionformat_AboveAverage_title}</div>
<div style="margin: 5px 0;">${conditionformat_text.setAsByArea}</div>
${textCellColorHtml}
</div>`;
break;
case "SubAverage":
title = "条件格式——低于平均值";
content = '<div class="box" data-itemvalue="SubAverage">' +
'<div class="boxTitleOne">为低于平均值的单元格设置格式:</div>' +
'<div style="margin: 5px 0;">针对选定区域,设置为:</div>' +
textCellColorHtml +
'</div>';
title = conditionformat_text.conditionformat_SubAverage;
content = `<div class="box" data-itemvalue="SubAverage">
<div class="boxTitleOne">${conditionformat_text.conditionformat_SubAverage_title}</div>
<div style="margin: 5px 0;">${conditionformat_text.setAsByArea}</div>
${textCellColorHtml}
</div>`;
break;
}

116
src/locale/en.js

@ -615,46 +615,147 @@ export default {
chooseText: 'Confirm color',
},
conditionformat: {
conditionformat_greaterThan: 'Conditionformat-GreaterThan',
conditionformat_greaterThan_title: 'Format cells greater than',
conditionformat_lessThan: 'Conditionformat-LessThan',
conditionformat_lessThan_title: 'Format cells smaller than',
conditionformat_betweenness: 'Conditionformat-Betweenness',
conditionformat_betweenness_title: 'Format cells with values between',
conditionformat_equal: 'Conditionformat-Equal',
conditionformat_equal_title: 'Format cells equal to',
conditionformat_textContains: 'Conditionformat-TextContains',
conditionformat_textContains_title: 'Format cells containing the following text',
conditionformat_occurrenceDate: 'Conditionformat-OccurrenceDate',
conditionformat_occurrenceDate_title: 'Format cells containing the following dates',
conditionformat_duplicateValue: 'Conditionformat-DuplicateValue',
conditionformat_duplicateValue_title: 'Format cells containing the following types of values',
conditionformat_top10: 'Conditionformat-Top10',
conditionformat_top10_percent: 'Conditionformat-Top10%',
conditionformat_top10_title: 'Format the cells with the highest value',
conditionformat_last10: 'Conditionformat-Last10',
conditionformat_last10_percent: 'Conditionformat-Last10%',
conditionformat_last10_title: 'Format the cells with the smallest value',
conditionformat_AboveAverage: 'Conditionformat-AboveAverage',
conditionformat_AboveAverage_title: 'Format cells above average',
conditionformat_SubAverage: 'Conditionformat-SubAverage',
conditionformat_SubAverage_title: 'Format cells below average',
rule: 'Rule',
newRule: 'New rule',
editRule: 'Edit rule',
deleteRule: 'Delete rule',
deleteCellRule: 'Delete cell rule',
deleteSheetRule: 'Delete sheet rule',
manageRules: 'Management rules',
showRules: 'Show its formatting rules',
highlightCellRules: 'Highlight cell rules',
itemSelectionRules: 'Item selection rules',
manageRules: 'Conditional Formatting Rule Manager',
format: 'Format',
setFormat: 'Set format',
setAs: 'Set as',
setAsByArea: 'For the selected area, set to',
applyRange: 'Apply range',
selectRange: 'Click to select application range',
selectRange_percent: 'Percentage of selected range',
selectRange_average: 'Average value of selected range',
selectRange_value: 'Value in the selected range',
pleaseSelectRange: 'Please select application range',
selectDataRange: 'Click to select data range',
selectCell: 'select cell',
pleaseSelectCell: 'Please select cell',
pleaseSelectADate: 'Please select a date',
pleaseEnterInteger: 'Please enter an integer between 1 and 1000',
onlySingleCell: 'Only a single cell can be referenced',
conditionValueCanOnly: 'The condition value can only be a number or a single cell',
ruleTypeItem1: 'Format all cells based on their respective values',
ruleTypeItem2: 'Only format cells that contain',
ruleTypeItem2_title: 'Only for cells that meet the following conditions',
ruleTypeItem3: 'Format only the top or bottom numbers',
ruleTypeItem3_title: 'Is the value in the following ranking',
ruleTypeItem4: 'Format only values above or below the average',
ruleTypeItem4_title: 'Is a value that satisfies the following conditions',
ruleTypeItem5: 'Format only unique or repeated values',
textColor: 'Text color',
cellColor: 'Cell color',
confirm: 'Confirm',
confirmColor: 'Confirm color',
cancel: 'Cancel',
close: 'Close',
clearColorSelect: 'Clear color select',
sheet: 'Sheet',
currentSheet: 'CurrentSheet',
dataBar: 'dataBar',
dataBarColor: 'dataBar color',
gradientDataBar_1: 'Blue-white gradient data bar',
gradientDataBar_2: 'Green-white gradient data bar',
gradientDataBar_3: 'Red-white gradient data bar',
gradientDataBar_4: 'Orange-white gradient stripes',
gradientDataBar_5: 'Light blue-white gradient stripes',
gradientDataBar_6: 'Purple-white gradient data bar',
solidColorDataBar_1: 'Blue data bar',
solidColorDataBar_2: 'Green data bar',
solidColorDataBar_3: 'Red data bar',
solidColorDataBar_4: 'Orange data bar',
solidColorDataBar_5: 'Light blue data bar',
solidColorDataBar_6: 'Purple data bar',
colorGradation: 'colorGradation',
colorGradation_1: 'Green-yellow-red color gradation',
colorGradation_2: 'Red-yellow-green color gradation',
colorGradation_3: 'Green-white-red color gradation',
colorGradation_4: 'Red-white-green color gradation',
colorGradation_5: 'Blue-white-red color gradation',
colorGradation_6: 'Red-white-blue color gradation',
colorGradation_7: 'White-red color gradation',
colorGradation_8: 'Red-white color gradation',
colorGradation_9: 'Green-white color gradation',
colorGradation_10: 'White-green color gradation',
colorGradation_11: 'Green-yellow color gradation',
colorGradation_12: 'Yellow-green color gradation',
icons: 'icons',
pleaseSelectIcon: 'Please click to select a group of icons:',
cellValue: 'Cell value',
specificText: 'Specific text',
occurrence: 'Date of occurrence',
greaterThan: 'Greater than',
lessThan: 'Less than',
between: 'Between',
equal: 'Equal',
in: 'In',
between2: '',
contain: 'Contain',
textContains: 'Text contains',
duplicateValue: 'Duplicate value',
uniqueValue: 'Unique value',
top: 'Top',
top10: 'Top10',
top10_percent: 'Top10%',
last: 'Last',
last10: 'Last10',
last10_percent: 'Last10%',
oneself: '',
above: 'Above',
aboveAverage: 'Above average',
below: 'Below',
belowAverage: 'Below average',
all: 'All',
yesterday: 'Yesterday',
today: 'Today',
tomorrow: 'Tomorrow',
lastWeek: 'Last week',
thisWeek: 'This week',
lastMonth: 'Last month',
thisMonth: 'This month',
lastYear: 'Last year',
thisYear: 'This year',
last7days: 'Last 7 days',
last30days: 'Last 30 days',
next7days: 'Next 7 days',
next30days: 'Next 30 days',
next60days: 'Next 60 days',
chooseRuleType: 'Choose rule type',
editRuleDescription: 'Edit rule description',
newFormatRule: 'New format rule',
editFormatRule: 'Edit format rule',
formatStyle: 'Format style',
fillType: 'Fill type',
color: 'Color',
@ -667,14 +768,29 @@ export default {
maxValue: 'Max value',
medianValue: 'Median value',
minValue: 'Min value',
direction: 'Direction',
threeWayArrow: 'Three-way arrow',
fourWayArrow: 'Four-way arrow',
fiveWayArrow: 'Five-way arrow',
threeTriangles: 'Three triangles',
shape: 'Shape',
threeColorTrafficLight: 'Three-color traffic light',
fourColorTrafficLight: 'Four-color traffic light',
threeSigns: 'Three signs',
greenRedBlackGradient: 'Green-red-black gradient',
rimless: 'Rimless',
bordered: 'Bordered',
mark: 'Mark',
threeSymbols: 'Three symbols',
tricolorFlag: 'Tricolor flag',
circled: 'Circled',
noCircle: 'No circle',
grade: 'Grade',
grade4: '4 Grade',
grade5: '5 Grade',
threeStars: '3 Stars',
fiveQuadrantDiagram: 'Five-quadrant diagram',
fiveBoxes: '5 Boxes',
},
formula:{
sum:"Sum",

117
src/locale/zh.js

@ -624,46 +624,148 @@ export default {
chooseText: '确定颜色',
},
conditionformat: {
conditionformat_greaterThan: '条件格式——大于',
conditionformat_greaterThan_title: '为大于以下值的单元格设置格式',
conditionformat_lessThan: '条件格式——小于',
conditionformat_lessThan_title: '为小于以下值的单元格设置格式',
conditionformat_betweenness: '条件格式——介于',
conditionformat_betweenness_title: '为介于以下值的单元格设置格式',
conditionformat_equal: '条件格式——等于',
conditionformat_equal_title: '为等于以下值的单元格设置格式',
conditionformat_textContains: '条件格式——文本包含',
conditionformat_textContains_title: '为包含以下文本的单元格设置格式',
conditionformat_occurrenceDate: '条件格式——发生日期',
conditionformat_occurrenceDate_title: '为包含以下日期的单元格设置格式',
conditionformat_duplicateValue: '条件格式——重复值',
conditionformat_duplicateValue_title: '为包含以下类型值的单元格设置格式',
conditionformat_top10: '条件格式——前 10 项',
conditionformat_top10_percent: '条件格式——前 10%',
conditionformat_top10_title: '为值最大的那些单元格设置格式',
conditionformat_last10: '条件格式——最后 10 项',
conditionformat_last10_percent: '条件格式——最后 10%',
conditionformat_last10_title: '为值最小的那些单元格设置格式',
conditionformat_AboveAverage: '条件格式——高于平均值',
conditionformat_AboveAverage_title: '为高于平均值的单元格设置格式',
conditionformat_SubAverage: '条件格式——低于平均值',
conditionformat_SubAverage_title: '为低于平均值的单元格设置格式',
rule: '规则',
newRule: '新建规则',
editRule: '编辑规则',
deleteRule: '删除规则',
deleteCellRule: '清除所选单元格的规则',
deleteSheetRule: '清除整个工作表的规则',
manageRules: '管理规则',
showRules: '显示其格式规则',
highlightCellRules: '突出显示单元格规则',
itemSelectionRules: '项目选取规则',
manageRules: '条件格式规则管理器',
format: '格式',
setFormat: '设置格式',
setAs: '设置为',
setAsByArea: '针对选定区域,设置为',
applyRange: '应用范围',
selectRange: '点击选择应用范围',
selectRange_percent: '所选范围的百分比',
selectRange_average: '选定范围的平均值',
selectRange_value: '选定范围中的数值',
pleaseSelectRange: '请选择应用范围',
selectDataRange: '点击选择数据范围',
selectCell: '选择单元格',
pleaseSelectCell: '请选择单元格',
pleaseSelectADate: '请选择日期',
pleaseEnterInteger: '请输入一个介于 1 和 1000 之间的整数',
onlySingleCell: '只能对单个单元格进行引用',
conditionValueCanOnly: '条件值只能是数字或者单个单元格',
ruleTypeItem1: '基于各自值设置所有单元格的格式',
ruleTypeItem2: '只为包含以下内容的单元格设置格式',
ruleTypeItem2_title: '只为满足以下条件的单元格',
ruleTypeItem3: '仅对排名靠前或靠后的数值设置格式',
ruleTypeItem3_title: '为以下排名内的值',
ruleTypeItem4: '仅对高于或低于平均值的数值设置格式',
ruleTypeItem4_title: '为满足以下条件的值',
ruleTypeItem5: '仅对唯一值或重复值设置格式',
textColor: '文本颜色',
cellColor: '单元格颜色',
confirm: '确定',
confirmColor: '确定颜色',
cancel: '取消',
close: '关闭',
clearColorSelect: '清除颜色选择',
sheet: '表',
currentSheet: '当前工作表',
dataBar: '数据条',
dataBarColor: '数据条颜色',
gradientDataBar_1: '蓝-白渐变数据条',
gradientDataBar_2: '绿-白渐变数据条',
gradientDataBar_3: '红-白渐变数据条',
gradientDataBar_4: '橙-白渐变数据条',
gradientDataBar_5: '浅蓝-白渐变数据条',
gradientDataBar_6: '紫-白渐变数据条',
solidColorDataBar_1: '蓝色数据条',
solidColorDataBar_2: '绿色数据条',
solidColorDataBar_3: '红色数据条',
solidColorDataBar_4: '橙色数据条',
solidColorDataBar_5: '浅蓝色数据条',
solidColorDataBar_6: '紫色数据条',
colorGradation: '色阶',
colorGradation_1: '绿-黄-红色阶',
colorGradation_2: '红-黄-绿色阶',
colorGradation_3: '绿-白-红色阶',
colorGradation_4: '红-白-绿色阶',
colorGradation_5: '蓝-白-红色阶',
colorGradation_6: '红-白-蓝色阶',
colorGradation_7: '白-红色阶',
colorGradation_8: '红-白色阶',
colorGradation_9: '绿-白色阶',
colorGradation_10: '白-绿色阶',
colorGradation_11: '绿-黄色阶',
colorGradation_12: '黄-绿色阶',
icons: '图标集',
pleaseSelectIcon: '请点击选择一组图标:',
cellValue: '单元格值',
specificText: '特定文本',
occurrence: '发生日期',
greaterThan: '大于',
lessThan: '小于',
between: '介于',
equal: '等于',
in: '和',
to: '到',
between2: '之间',
contain: '包含',
textContains: '文本包含',
duplicateValue: '重复值',
uniqueValue: '唯一值',
top: '前',
top10: '前 10 项',
top10_percent: '前 10%',
last: '后',
last10: '后 10 项',
last10_percent: '后 10%',
oneself: '个',
above: '高于',
aboveAverage: '高于平均值',
below: '低于',
belowAverage: '低于平均值',
all: '全部',
yesterday: '昨天',
today: '今天',
tomorrow: '明天',
lastWeek: '上周',
thisWeek: '本周',
lastMonth: '上月',
thisMonth: '本月',
lastYear: '去年',
thisYear: '本年',
last7days: '最近7天',
last30days: '最近30天',
next7days: '未来7天',
next30days: '未来30天',
next60days: '未来60天',
chooseRuleType: '选择规则类型',
editRuleDescription: '编辑规则说明',
newFormatRule: '新建格式规则',
editFormatRule: '编辑格式规则',
formatStyle: '格式样式',
fillType: '填充类型',
color: '颜色',
@ -676,14 +778,29 @@ export default {
maxValue: '最大值',
medianValue: '中间值',
minValue: '最小值',
direction: '方向',
threeWayArrow: '三向箭头',
fourWayArrow: '四向箭头',
fiveWayArrow: '五向箭头',
threeTriangles: '3个三角形',
shape: '形状',
threeColorTrafficLight: '三色交通灯',
fourColorTrafficLight: '四色交通灯',
threeSigns: '三标志',
greenRedBlackGradient: '绿-红-黑渐变',
rimless: '无边框',
bordered: '有边框',
mark: '标记',
threeSymbols: '三个符号',
tricolorFlag: '三色旗',
circled: '有圆圈',
noCircle: '无圆圈',
grade: '等级',
grade4: '四等级',
grade5: '五等级',
threeStars: '3个星形',
fiveQuadrantDiagram: '五象限图',
fiveBoxes: '5个框',
},
formula:{
sum:"求和",

Loading…
Cancel
Save