From ce2c8ee09127a1b2154733fd74ae6c5de9e16e1c Mon Sep 17 00:00:00 2001
From: liurunze <1414556676@qq.com>
Date: Fri, 31 Jul 2020 15:09:52 +0800
Subject: [PATCH] 'chart'
---
src/controllers/handler.js | 4 +-
src/controllers/sheetmanage.js | 3 +-
src/demoData/sheetCell.js | 13 +-
src/demoData/sheetComment.js | 13 +-
src/demoData/sheetConditionFormat.js | 13 +-
src/demoData/sheetFormula.js | 13 +-
src/demoData/sheetPivotTable.js | 13 +-
src/demoData/sheetPivotTableData.js | 13 +-
src/demoData/sheetSparkline.js | 13 +-
src/demoData/sheetTable.js | 13 +-
src/expendPlugins/chart/plugin.js | 1575 +++++++++++++-------------
11 files changed, 825 insertions(+), 861 deletions(-)
diff --git a/src/controllers/handler.js b/src/controllers/handler.js
index 418f9df..2031d05 100644
--- a/src/controllers/handler.js
+++ b/src/controllers/handler.js
@@ -56,7 +56,7 @@ import { getBorderInfoCompute } from '../global/border';
import { luckysheetDrawMain } from '../global/draw';
import locale from '../locale/locale';
import Store from '../store';
-import { createLuckyChart } from '../expendPlugins/chart/plugin'
+import { createLuckyChart, hideAllNeedRangeShow } from '../expendPlugins/chart/plugin'
//, columeflowset, rowflowset
export default function luckysheetHandler() {
@@ -828,7 +828,7 @@ export default function luckysheetHandler() {
if (!isEditMode()) {
//chartMix 隐藏当前页的数据选择区域高亮
- !!window.store && store.commit("hideAllNeedRangeShow");
+ hideAllNeedRangeShow();
}
$("#luckysheet-helpbox-cell").text(getRangetxt(Store.currentSheetIndex, Store.luckysheet_select_save[Store.luckysheet_select_save.length - 1]));
diff --git a/src/controllers/sheetmanage.js b/src/controllers/sheetmanage.js
index 11b3ea1..a4d2899 100644
--- a/src/controllers/sheetmanage.js
+++ b/src/controllers/sheetmanage.js
@@ -21,6 +21,7 @@ import { createFilterOptions, labelFilterOptionState } from './filter';
import { selectHightlightShow, selectionCopyShow } from './select';
import Store from '../store';
import locale from '../locale/locale';
+import { renderChartShow } from '../expendPlugins/chart/plugin'
const sheetmanage = {
generateRandomSheetIndex: function(prefix) {
@@ -928,7 +929,7 @@ const sheetmanage = {
$("#luckysheet-datavisual-selection-set-" + index).show();
//隐藏其他sheet的图表,显示当前sheet的图表 chartMix
- !!window.generator && generator.renderChartShow(index);
+ renderChartShow(index);
luckysheetFreezen.initialFreezen(index);
_this.restoreselect();
diff --git a/src/demoData/sheetCell.js b/src/demoData/sheetCell.js
index 16f7c5d..e3f058b 100644
--- a/src/demoData/sheetCell.js
+++ b/src/demoData/sheetCell.js
@@ -1164,18 +1164,7 @@ const sheetCell = {
}
},
"index": "0",
- "chart": [{
- "sheetIndex": "0",
- "dataSheetIndex": "0",
- "chartType": "column",
- "row": "[1,3]",
- "column": "[3,3]",
- "chartStyle": "default",
- "myWidth": "480",
- "myHeight": "288",
- "myLeft": "67",
- "myTop": "11"
- }],
+ "chart": [],
"status": "1",
"order": "0",
"column": 18,
diff --git a/src/demoData/sheetComment.js b/src/demoData/sheetComment.js
index 395c031..944fc75 100644
--- a/src/demoData/sheetComment.js
+++ b/src/demoData/sheetComment.js
@@ -7,18 +7,7 @@ const sheetComment = {
}
},
"index": "5",
- "chart": [{
- "sheetIndex": "0",
- "dataSheetIndex": "0",
- "chartType": "column",
- "row": "[1,3]",
- "column": "[3,3]",
- "chartStyle": "default",
- "myWidth": "480",
- "myHeight": "288",
- "myLeft": "67",
- "myTop": "11"
- }],
+ "chart": [],
"status": "0",
"order": "5",
"column": 18,
diff --git a/src/demoData/sheetConditionFormat.js b/src/demoData/sheetConditionFormat.js
index c7a2978..a07b96f 100644
--- a/src/demoData/sheetConditionFormat.js
+++ b/src/demoData/sheetConditionFormat.js
@@ -154,18 +154,7 @@ const sheetConditionFormat = {
}
},
"index": "2",
- "chart": [{
- "sheetIndex": "0",
- "dataSheetIndex": "0",
- "chartType": "column",
- "row": "[1,3]",
- "column": "[3,3]",
- "chartStyle": "default",
- "myWidth": "480",
- "myHeight": "288",
- "myLeft": "67",
- "myTop": "11"
- }],
+ "chart": [],
"status": "0",
"order": "2",
"column": 18,
diff --git a/src/demoData/sheetFormula.js b/src/demoData/sheetFormula.js
index 4ac8e44..93d1e5a 100644
--- a/src/demoData/sheetFormula.js
+++ b/src/demoData/sheetFormula.js
@@ -85,18 +85,7 @@ const sheetFormula = {
}
},
"index": "1",
- "chart": [{
- "sheetIndex": "0",
- "dataSheetIndex": "0",
- "chartType": "column",
- "row": "[1,3]",
- "column": "[3,3]",
- "chartStyle": "default",
- "myWidth": "480",
- "myHeight": "288",
- "myLeft": "67",
- "myTop": "11"
- }],
+ "chart": [],
"status": 1,
"order": "1",
"column": 18,
diff --git a/src/demoData/sheetPivotTable.js b/src/demoData/sheetPivotTable.js
index 20fbf2c..3ac5178 100644
--- a/src/demoData/sheetPivotTable.js
+++ b/src/demoData/sheetPivotTable.js
@@ -3,18 +3,7 @@ const sheetPivotTable = {
"color": "",
"config": {},
"index": "7",
- "chart": [{
- "sheetIndex": "0",
- "dataSheetIndex": "0",
- "chartType": "column",
- "row": "[1,3]",
- "column": "[3,3]",
- "chartStyle": "default",
- "myWidth": "480",
- "myHeight": "288",
- "myLeft": "67",
- "myTop": "11"
- }],
+ "chart": [],
"status": "0",
"order": "7",
"column": 18,
diff --git a/src/demoData/sheetPivotTableData.js b/src/demoData/sheetPivotTableData.js
index b1fdd7f..452c0ff 100644
--- a/src/demoData/sheetPivotTableData.js
+++ b/src/demoData/sheetPivotTableData.js
@@ -5,18 +5,7 @@ const sheetPivotTableData = {
"merge": {}
},
"index": "6",
- "chart": [{
- "sheetIndex": "0",
- "dataSheetIndex": "0",
- "chartType": "column",
- "row": "[1,3]",
- "column": "[3,3]",
- "chartStyle": "default",
- "myWidth": "480",
- "myHeight": "288",
- "myLeft": "67",
- "myTop": "11"
- }],
+ "chart": [],
"status": "0",
"order": "6",
"hide": 0,
diff --git a/src/demoData/sheetSparkline.js b/src/demoData/sheetSparkline.js
index 2123fad..2cdf5b4 100644
--- a/src/demoData/sheetSparkline.js
+++ b/src/demoData/sheetSparkline.js
@@ -444,18 +444,7 @@ const sheetSparkline = {
}]
},
"index": "4",
- "chart": [{
- "sheetIndex": "0",
- "dataSheetIndex": "0",
- "chartType": "column",
- "row": "[1,3]",
- "column": "[3,3]",
- "chartStyle": "default",
- "myWidth": "480",
- "myHeight": "288",
- "myLeft": "67",
- "myTop": "11"
- }],
+ "chart": [],
"status": 1,
"order": "4",
"column": 18,
diff --git a/src/demoData/sheetTable.js b/src/demoData/sheetTable.js
index e398bf1..27df982 100644
--- a/src/demoData/sheetTable.js
+++ b/src/demoData/sheetTable.js
@@ -42,18 +42,7 @@ const sheetTable = {
}
},
"index": "3",
- "chart": [{
- "sheetIndex": "0",
- "dataSheetIndex": "0",
- "chartType": "column",
- "row": "[1,3]",
- "column": "[3,3]",
- "chartStyle": "default",
- "myWidth": "480",
- "myHeight": "288",
- "myLeft": "67",
- "myTop": "11"
- }],
+ "chart": [],
"status": "0",
"order": "3",
"column": 18,
diff --git a/src/expendPlugins/chart/plugin.js b/src/expendPlugins/chart/plugin.js
index 39554cb..43ce31f 100644
--- a/src/expendPlugins/chart/plugin.js
+++ b/src/expendPlugins/chart/plugin.js
@@ -13,7 +13,8 @@ import {
} from '../../controllers/sheetMove';
import { isEditMode } from '../../global/validate';
import luckysheetsizeauto from '../../controllers/resize';
-import { getvisibledatarow, getvisibledatacolumn} from '../../methods/get'
+import { getvisibledatarow, getvisibledatacolumn } from '../../methods/get'
+import { setluckysheet_scroll_status } from '../../methods/set';
let _rowLocation = rowLocation
let _colLocation = colLocation
@@ -24,13 +25,13 @@ const dependScripts = [
'https://cdn.bootcdn.net/ajax/libs/element-ui/2.13.2/index.js',
'https://cdn.bootcdn.net/ajax/libs/echarts/4.8.0/echarts.min.js',
// 'expendPlugins/chart/chartmix.umd.js'
- 'http://192.168.10.246:8000/chartmix.umd.js'
+ 'http://26.26.26.1:8000/chartmix.umd.js'
]
const dependLinks = [
'https://cdn.bootcdn.net/ajax/libs/element-ui/2.13.2/theme-chalk/index.css',
// 'expendPlugins/chart/chartmix.css'
- 'http://192.168.10.246:8000/chartmix.css'
+ 'http://26.26.26.1:8000/chartmix.css'
]
// Initialize the chart component
@@ -65,739 +66,739 @@ function chart() {
});
}
-function chart_selection(){
- return {
- create: function () {
- var chart_json = chartInfo.currentChart
-
- if (chart_json.rangeArray.length > 1) {
- return
- }
-
- $('#luckysheet-chart-rangeShow').empty()
- $('#luckysheet-cell-selected-boxs').hide()
- $('#luckysheet-cell-selected-focus').hide()
- $('#luckysheet-rows-h-selected').hide()
- $('#luckysheet-cols-h-selected').hide()
- $('#luckysheet-row-count-show').hide()
- $('#luckysheet-column-count-show').hide()
-
- var st_r = chart_json.rangeArray[0].row[0]
- var st_c = chart_json.rangeArray[0].column[0]
-
- var rangeSplitArray = chart_json.rangeSplitArray
-
- //首行是否标题
- var rangeRowCheck = chart_json.rangeRowCheck
-
- if (rangeRowCheck.exits) {
- var chart_rowtitle_html = getRangeShowHtml(
- 'rowtitle',
- rangeSplitArray.rowtitle.row[0] + st_r,
- rangeSplitArray.rowtitle.row[1] + st_r,
- rangeSplitArray.rowtitle.column[0] + st_c,
- rangeSplitArray.rowtitle.column[1] + st_c
- )
- } else {
- var chart_rowtitle_html = ''
- }
-
- //首列是否标题
- var rangeColCheck = chart_json.rangeColCheck
-
- if (rangeColCheck.exits) {
- var chart_coltitle_html = getRangeShowHtml(
- 'coltitle',
- rangeSplitArray.coltitle.row[0] + st_r,
- rangeSplitArray.coltitle.row[1] + st_r,
- rangeSplitArray.coltitle.column[0] + st_c,
- rangeSplitArray.coltitle.column[1] + st_c
- )
- } else {
- var chart_coltitle_html = ''
- }
-
- //内容块
- var chart_content_html = getRangeShowHtml(
- 'content',
- rangeSplitArray.content.row[0] + st_r,
- rangeSplitArray.content.row[1] + st_r,
- rangeSplitArray.content.column[0] + st_c,
- rangeSplitArray.content.column[1] + st_c
- )
-
- $('#luckysheet-chart-rangeShow').append(
- chart_rowtitle_html + chart_coltitle_html + chart_content_html
- )
-
- function getRangeShowHtml(type, r1, r2, c1, c2) {
- var visibledatarow = getvisibledatarow()
- var visibledatacolumn = getvisibledatacolumn()
-
- var row = visibledatarow[r2],
- row_pre = r1 - 1 == -1 ? 0 : visibledatarow[r1 - 1]
- var col = visibledatacolumn[c2],
- col_pre = c1 - 1 == -1 ? 0 : visibledatacolumn[c1 - 1]
-
- if (type == 'rowtitle') {
- var color = '#C65151'
- }
-
- if (type == 'coltitle') {
- var color = '#9667C0'
- }
-
- if (type == 'content') {
- var color = '#4970D1'
+function chart_selection() {
+ return {
+ create: function () {
+ var chart_json = chartInfo.currentChart
+
+ if (chart_json.rangeArray.length > 1) {
+ return
}
-
- var html =
- '
' +
- '
' +
- '
' +
- '
' +
- '
' +
- '
' +
- '
' +
- '
' +
- '
' +
- '
' +
- '
'
-
- return html
- }
- },
- rangeMove: false,
- rangeMovexy: null,
- rangeMoveIndex: null,
- rangeMoveObj: null,
- rangeMoveDraging: function (event, sheetBarHeight, statisticBarHeight) {
- var chart_json = chartInfo.currentChart
- var st_r = chart_json.rangeArray[0].row[0]
- var st_c = chart_json.rangeArray[0].column[0]
- var rangeRowCheck = chart_json.rangeRowCheck
- var rangeColCheck = chart_json.rangeColCheck
- var rangeSplitArray = chart_json.rangeSplitArray
-
- var mouse = mouseposition(event.pageX, event.pageY)
- var scrollLeft = $('#luckysheet-cell-main').scrollLeft()
- var scrollTop = $('#luckysheet-cell-main').scrollTop()
-
- var x = mouse[0] + scrollLeft
- var y = mouse[1] + scrollTop
-
- var winH =
- $(window).height() + scrollTop - sheetBarHeight - statisticBarHeight,
- winW = $(window).width() + scrollLeft
-
- var rowLocation = _rowLocation(y),
- row_index = rowLocation[2]
- var colLocation = _colLocation(x),
- col_index = colLocation[2]
-
- var visibledatarow = getvisibledatarow()
- var visibledatacolumn = getvisibledatacolumn()
-
- var $id = chartInfo.chart_selection.rangeMoveObj.attr('id')
-
- if ($id == 'luckysheet-chart-rangeShow-content') {
- //行
- var row_s =
- chartInfo.chart_selection.rangeMoveIndex[0] -
- chartInfo.chart_selection.rangeMovexy[0] +
- row_index
-
+
+ $('#luckysheet-chart-rangeShow').empty()
+ $('#luckysheet-cell-selected-boxs').hide()
+ $('#luckysheet-cell-selected-focus').hide()
+ $('#luckysheet-rows-h-selected').hide()
+ $('#luckysheet-cols-h-selected').hide()
+ $('#luckysheet-row-count-show').hide()
+ $('#luckysheet-column-count-show').hide()
+
+ var st_r = chart_json.rangeArray[0].row[0]
+ var st_c = chart_json.rangeArray[0].column[0]
+
+ var rangeSplitArray = chart_json.rangeSplitArray
+
+ //首行是否标题
+ var rangeRowCheck = chart_json.rangeRowCheck
+
if (rangeRowCheck.exits) {
- if (row_s < st_r + rangeRowCheck.range[1] + 1 || y < 0) {
- row_s = st_r + rangeRowCheck.range[1] + 1
- }
+ var chart_rowtitle_html = getRangeShowHtml(
+ 'rowtitle',
+ rangeSplitArray.rowtitle.row[0] + st_r,
+ rangeSplitArray.rowtitle.row[1] + st_r,
+ rangeSplitArray.rowtitle.column[0] + st_c,
+ rangeSplitArray.rowtitle.column[1] + st_c
+ )
} else {
- if (row_s < 0 || y < 0) {
- row_s = 0
- }
- }
-
- var row_e =
- rangeSplitArray.content.row[1] - rangeSplitArray.content.row[0] + row_s
-
- if (row_e >= visibledatarow.length - 1 || y > winH) {
- row_s =
- visibledatarow.length -
- 1 -
- rangeSplitArray.content.row[1] +
- rangeSplitArray.content.row[0]
- row_e = visibledatarow.length - 1
+ var chart_rowtitle_html = ''
}
-
- //列
- var col_s =
- chartInfo.chart_selection.rangeMoveIndex[1] -
- chartInfo.chart_selection.rangeMovexy[1] +
- col_index
+
+ //首列是否标题
+ var rangeColCheck = chart_json.rangeColCheck
+
if (rangeColCheck.exits) {
- if (col_s < st_c + rangeColCheck.range[1] + 1 || x < 0) {
- col_s = st_c + rangeColCheck.range[1] + 1
- }
+ var chart_coltitle_html = getRangeShowHtml(
+ 'coltitle',
+ rangeSplitArray.coltitle.row[0] + st_r,
+ rangeSplitArray.coltitle.row[1] + st_r,
+ rangeSplitArray.coltitle.column[0] + st_c,
+ rangeSplitArray.coltitle.column[1] + st_c
+ )
} else {
- if (col_s < 0 || x < 0) {
- col_s = 0
- }
+ var chart_coltitle_html = ''
}
-
- var col_e =
- rangeSplitArray.content.column[1] -
- rangeSplitArray.content.column[0] +
- col_s
-
- if (col_e >= visibledatacolumn.length - 1 || x > winW) {
- col_s =
- visibledatacolumn.length -
- 1 -
- rangeSplitArray.content.column[1] +
- rangeSplitArray.content.column[0]
- col_e = visibledatacolumn.length - 1
- }
-
- //更新
- if (rangeRowCheck.exits && rangeColCheck.exits) {
- chart_json.rangeArray = [{ row: [st_r, row_e], column: [st_c, col_e] }]
- chart_json.rangeSplitArray.range = {
- row: [st_r, row_e],
- column: [st_c, col_e]
- }
-
- chart_json.rangeSplitArray.content = {
- row: [row_s - st_r, row_e - st_r],
- column: [col_s - st_c, col_e - st_c]
- }
-
- chart_json.rangeSplitArray.rowtitle = {
- row: chart_json.rangeSplitArray.rowtitle.row,
- column: [col_s - st_c, col_e - st_c]
- }
-
- chart_json.rangeSplitArray.coltitle = {
- row: [row_s - st_r, row_e - st_r],
- column: chart_json.rangeSplitArray.coltitle.column
- }
- } else if (rangeRowCheck.exits) {
- chart_json.rangeArray = [{ row: [st_r, row_e], column: [col_s, col_e] }]
- chart_json.rangeSplitArray.range = {
- row: [st_r, row_e],
- column: [col_s, col_e]
- }
-
- chart_json.rangeSplitArray.content = {
- row: [row_s - st_r, row_e - st_r],
- column: chart_json.rangeSplitArray.content.column
- }
- } else if (rangeColCheck.exits) {
- chart_json.rangeArray = [{ row: [row_s, row_e], column: [st_c, col_e] }]
- chart_json.rangeSplitArray.range = {
- row: [row_s, row_e],
- column: [st_c, col_e]
- }
-
- chart_json.rangeSplitArray.content = {
- row: chart_json.rangeSplitArray.content.row,
- column: [col_s - st_c, col_e - st_c]
- }
- } else {
- chart_json.rangeArray = [
- { row: [row_s, row_e], column: [col_s, col_e] }
- ]
- chart_json.rangeSplitArray.range = {
- row: [row_s, row_e],
- column: [col_s, col_e]
+
+ //内容块
+ var chart_content_html = getRangeShowHtml(
+ 'content',
+ rangeSplitArray.content.row[0] + st_r,
+ rangeSplitArray.content.row[1] + st_r,
+ rangeSplitArray.content.column[0] + st_c,
+ rangeSplitArray.content.column[1] + st_c
+ )
+
+ $('#luckysheet-chart-rangeShow').append(
+ chart_rowtitle_html + chart_coltitle_html + chart_content_html
+ )
+
+ function getRangeShowHtml(type, r1, r2, c1, c2) {
+ var visibledatarow = getvisibledatarow()
+ var visibledatacolumn = getvisibledatacolumn()
+
+ var row = visibledatarow[r2],
+ row_pre = r1 - 1 == -1 ? 0 : visibledatarow[r1 - 1]
+ var col = visibledatacolumn[c2],
+ col_pre = c1 - 1 == -1 ? 0 : visibledatacolumn[c1 - 1]
+
+ if (type == 'rowtitle') {
+ var color = '#C65151'
}
- }
- } else if ($id == 'luckysheet-chart-rangeShow-rowtitle') {
- //列
- var col_s =
- chartInfo.chart_selection.rangeMoveIndex[1] -
- chartInfo.chart_selection.rangeMovexy[1] +
- col_index
-
- if (rangeColCheck.exits) {
- if (col_s < st_c + rangeColCheck.range[1] + 1 || x < 0) {
- col_s = st_c + rangeColCheck.range[1] + 1
+
+ if (type == 'coltitle') {
+ var color = '#9667C0'
}
- } else {
- if (col_s < 0 || x < 0) {
- col_s = 0
+
+ if (type == 'content') {
+ var color = '#4970D1'
}
+
+ var html =
+ '' +
+ '
' +
+ '
' +
+ '
' +
+ '
' +
+ '
' +
+ '
' +
+ '
' +
+ '
' +
+ '
' +
+ '
'
+
+ return html
}
-
- var col_e =
- rangeSplitArray.rowtitle.column[1] -
- rangeSplitArray.rowtitle.column[0] +
- col_s
-
- if (col_e >= visibledatacolumn.length - 1 || x > winW) {
- col_s =
- visibledatacolumn.length -
- 1 -
- rangeSplitArray.rowtitle.column[1] +
- rangeSplitArray.rowtitle.column[0]
- col_e = visibledatacolumn.length - 1
- }
-
- //更新
- if (rangeColCheck.exits) {
- chart_json.rangeArray = [
- { row: chart_json.rangeArray[0].row, column: [st_c, col_e] }
- ]
- chart_json.rangeSplitArray.range = {
- row: chart_json.rangeArray[0].row,
- column: [st_c, col_e]
- }
-
- chart_json.rangeSplitArray.rowtitle = {
- row: chart_json.rangeSplitArray.rowtitle.row,
- column: [col_s - st_c, col_e - st_c]
- }
- chart_json.rangeSplitArray.content = {
- row: chart_json.rangeSplitArray.content.row,
- column: [col_s - st_c, col_e - st_c]
- }
- } else {
- chart_json.rangeArray = [
- { row: chart_json.rangeArray[0].row, column: [col_s, col_e] }
- ]
- chart_json.rangeSplitArray.range = {
- row: chart_json.rangeArray[0].row,
- column: [col_s, col_e]
+ },
+ rangeMove: false,
+ rangeMovexy: null,
+ rangeMoveIndex: null,
+ rangeMoveObj: null,
+ rangeMoveDraging: function (event, sheetBarHeight, statisticBarHeight) {
+ var chart_json = chartInfo.currentChart
+ var st_r = chart_json.rangeArray[0].row[0]
+ var st_c = chart_json.rangeArray[0].column[0]
+ var rangeRowCheck = chart_json.rangeRowCheck
+ var rangeColCheck = chart_json.rangeColCheck
+ var rangeSplitArray = chart_json.rangeSplitArray
+
+ var mouse = mouseposition(event.pageX, event.pageY)
+ var scrollLeft = $('#luckysheet-cell-main').scrollLeft()
+ var scrollTop = $('#luckysheet-cell-main').scrollTop()
+
+ var x = mouse[0] + scrollLeft
+ var y = mouse[1] + scrollTop
+
+ var winH =
+ $(window).height() + scrollTop - sheetBarHeight - statisticBarHeight,
+ winW = $(window).width() + scrollLeft
+
+ var rowLocation = _rowLocation(y),
+ row_index = rowLocation[2]
+ var colLocation = _colLocation(x),
+ col_index = colLocation[2]
+
+ var visibledatarow = getvisibledatarow()
+ var visibledatacolumn = getvisibledatacolumn()
+
+ var $id = chartInfo.chart_selection.rangeMoveObj.attr('id')
+
+ if ($id == 'luckysheet-chart-rangeShow-content') {
+ //行
+ var row_s =
+ chartInfo.chart_selection.rangeMoveIndex[0] -
+ chartInfo.chart_selection.rangeMovexy[0] +
+ row_index
+
+ if (rangeRowCheck.exits) {
+ if (row_s < st_r + rangeRowCheck.range[1] + 1 || y < 0) {
+ row_s = st_r + rangeRowCheck.range[1] + 1
+ }
+ } else {
+ if (row_s < 0 || y < 0) {
+ row_s = 0
+ }
}
- }
- } else if ($id == 'luckysheet-chart-rangeShow-coltitle') {
- //行
- var row_s =
- chartInfo.chart_selection.rangeMoveIndex[0] -
- chartInfo.chart_selection.rangeMovexy[0] +
- row_index
- if (rangeRowCheck.exits) {
- if (row_s < st_r + rangeRowCheck.range[1] + 1 || y < 0) {
- row_s = st_r + rangeRowCheck.range[1] + 1
+
+ var row_e =
+ rangeSplitArray.content.row[1] - rangeSplitArray.content.row[0] + row_s
+
+ if (row_e >= visibledatarow.length - 1 || y > winH) {
+ row_s =
+ visibledatarow.length -
+ 1 -
+ rangeSplitArray.content.row[1] +
+ rangeSplitArray.content.row[0]
+ row_e = visibledatarow.length - 1
}
- } else {
- if (row_s < 0 || y < 0) {
- row_s = 0
+
+ //列
+ var col_s =
+ chartInfo.chart_selection.rangeMoveIndex[1] -
+ chartInfo.chart_selection.rangeMovexy[1] +
+ col_index
+ if (rangeColCheck.exits) {
+ if (col_s < st_c + rangeColCheck.range[1] + 1 || x < 0) {
+ col_s = st_c + rangeColCheck.range[1] + 1
+ }
+ } else {
+ if (col_s < 0 || x < 0) {
+ col_s = 0
+ }
}
- }
-
- //更新
- var row_e =
- rangeSplitArray.coltitle.row[1] -
- rangeSplitArray.coltitle.row[0] +
- row_s
-
- if (row_e >= visibledatarow.length - 1 || y > winH) {
- row_s =
- visibledatarow.length -
- 1 -
- rangeSplitArray.coltitle.row[1] +
- rangeSplitArray.coltitle.row[0]
- row_e = visibledatarow.length - 1
- }
-
- if (rangeRowCheck.exits) {
- chart_json.rangeArray = [
- { row: [st_r, row_e], column: chart_json.rangeArray[0].column }
- ]
- chart_json.rangeSplitArray.range = {
- row: [st_r, row_e],
- column: chart_json.rangeArray[0].column
+
+ var col_e =
+ rangeSplitArray.content.column[1] -
+ rangeSplitArray.content.column[0] +
+ col_s
+
+ if (col_e >= visibledatacolumn.length - 1 || x > winW) {
+ col_s =
+ visibledatacolumn.length -
+ 1 -
+ rangeSplitArray.content.column[1] +
+ rangeSplitArray.content.column[0]
+ col_e = visibledatacolumn.length - 1
}
-
- chart_json.rangeSplitArray.coltitle = {
- row: [row_s - st_r, row_e - st_r],
- column: chart_json.rangeSplitArray.coltitle.column
+
+ //更新
+ if (rangeRowCheck.exits && rangeColCheck.exits) {
+ chart_json.rangeArray = [{ row: [st_r, row_e], column: [st_c, col_e] }]
+ chart_json.rangeSplitArray.range = {
+ row: [st_r, row_e],
+ column: [st_c, col_e]
+ }
+
+ chart_json.rangeSplitArray.content = {
+ row: [row_s - st_r, row_e - st_r],
+ column: [col_s - st_c, col_e - st_c]
+ }
+
+ chart_json.rangeSplitArray.rowtitle = {
+ row: chart_json.rangeSplitArray.rowtitle.row,
+ column: [col_s - st_c, col_e - st_c]
+ }
+
+ chart_json.rangeSplitArray.coltitle = {
+ row: [row_s - st_r, row_e - st_r],
+ column: chart_json.rangeSplitArray.coltitle.column
+ }
+ } else if (rangeRowCheck.exits) {
+ chart_json.rangeArray = [{ row: [st_r, row_e], column: [col_s, col_e] }]
+ chart_json.rangeSplitArray.range = {
+ row: [st_r, row_e],
+ column: [col_s, col_e]
+ }
+
+ chart_json.rangeSplitArray.content = {
+ row: [row_s - st_r, row_e - st_r],
+ column: chart_json.rangeSplitArray.content.column
+ }
+ } else if (rangeColCheck.exits) {
+ chart_json.rangeArray = [{ row: [row_s, row_e], column: [st_c, col_e] }]
+ chart_json.rangeSplitArray.range = {
+ row: [row_s, row_e],
+ column: [st_c, col_e]
+ }
+
+ chart_json.rangeSplitArray.content = {
+ row: chart_json.rangeSplitArray.content.row,
+ column: [col_s - st_c, col_e - st_c]
+ }
+ } else {
+ chart_json.rangeArray = [
+ { row: [row_s, row_e], column: [col_s, col_e] }
+ ]
+ chart_json.rangeSplitArray.range = {
+ row: [row_s, row_e],
+ column: [col_s, col_e]
+ }
}
- chart_json.rangeSplitArray.content = {
- row: [row_s - st_r, row_e - st_r],
- column: chart_json.rangeSplitArray.content.column
+ } else if ($id == 'luckysheet-chart-rangeShow-rowtitle') {
+ //列
+ var col_s =
+ chartInfo.chart_selection.rangeMoveIndex[1] -
+ chartInfo.chart_selection.rangeMovexy[1] +
+ col_index
+
+ if (rangeColCheck.exits) {
+ if (col_s < st_c + rangeColCheck.range[1] + 1 || x < 0) {
+ col_s = st_c + rangeColCheck.range[1] + 1
+ }
+ } else {
+ if (col_s < 0 || x < 0) {
+ col_s = 0
+ }
}
- } else {
- chart_json.rangeArray = [
- { row: [row_s, row_e], column: chart_json.rangeArray[0].column }
- ]
- chart_json.rangeSplitArray.range = {
- row: [row_s, row_e],
- column: chart_json.rangeArray[0].column
+
+ var col_e =
+ rangeSplitArray.rowtitle.column[1] -
+ rangeSplitArray.rowtitle.column[0] +
+ col_s
+
+ if (col_e >= visibledatacolumn.length - 1 || x > winW) {
+ col_s =
+ visibledatacolumn.length -
+ 1 -
+ rangeSplitArray.rowtitle.column[1] +
+ rangeSplitArray.rowtitle.column[0]
+ col_e = visibledatacolumn.length - 1
}
- }
- }
-
- chartInfo.chart_selection.create(chartInfo.currentChart)
- },
- rangeMoveDragged: function () {
- chartInfo.chart_selection.rangeMove = false
-
- var updateJson = chartInfo.currentChart
-
- updateJson.rangeTxt = getRangetxt(
- chartInfo.currentSheetIndex,
- updateJson.rangeArray[0],
- chartInfo.currentSheetIndex
- )
- updateJson.chartData = getdatabyselection(
- updateJson.rangeArray[0],
- chartInfo.currentSheetIndex
- )
- // 渲染
- chartInfo.changeChartRange(updateJson.chart_id, updateJson.chartData, updateJson.rangeArray, updateJson.rangeTxt)
- },
- rangeResize: false,
- rangeResizexy: null,
- rangeResizeIndex: null,
- rangeResizeObj: null,
- rangeResizeDraging: function (event, sheetBarHeight, statisticBarHeight) {
- var chart_json = chartInfo.currentChart
-
- var st_r = chart_json.rangeArray[0].row[0]
- var st_c = chart_json.rangeArray[0].column[0]
- var rangeRowCheck = chart_json.rangeRowCheck
- var rangeColCheck = chart_json.rangeColCheck
- var rangeSplitArray = chart_json.rangeSplitArray
-
- var mouse = mouseposition(event.pageX, event.pageY)
- var scrollLeft = $('#luckysheet-cell-main').scrollLeft()
- var scrollTop = $('#luckysheet-cell-main').scrollTop()
-
- var x = mouse[0] + scrollLeft
- var y = mouse[1] + scrollTop
-
- var winH =
- $(window).height() + scrollTop - sheetBarHeight - statisticBarHeight,
- winW = $(window).width() + scrollLeft
-
- var rowLocation = _rowLocation(y),
- row_index = rowLocation[2]
- var colLocation = _colLocation(x),
- col_index = colLocation[2]
-
- var visibledatarow = getvisibledatarow()
- var visibledatacolumn = getvisibledatacolumn()
-
- var $id = chartInfo.chart_selection.rangeResizeObj.attr('id')
-
- if ($id == 'luckysheet-chart-rangeShow-content') {
- var r1, r2, c1, c2
-
- if (chartInfo.chart_selection.rangeResize == 'lt') {
- r1 = chartInfo.chart_selection.rangeResizeIndex.row[0]
- c1 = chartInfo.chart_selection.rangeResizeIndex.column[0]
-
- r2 = chartInfo.chart_selection.rangeResizeIndex.row[1]
- c2 = chartInfo.chart_selection.rangeResizeIndex.column[1]
- } else if (chartInfo.chart_selection.rangeResize == 'lb') {
- r1 = chartInfo.chart_selection.rangeResizeIndex.row[1]
- c1 = chartInfo.chart_selection.rangeResizeIndex.column[0]
-
- r2 = chartInfo.chart_selection.rangeResizeIndex.row[0]
- c2 = chartInfo.chart_selection.rangeResizeIndex.column[1]
- } else if (chartInfo.chart_selection.rangeResize == 'rt') {
- r1 = chartInfo.chart_selection.rangeResizeIndex.row[0]
- c1 = chartInfo.chart_selection.rangeResizeIndex.column[1]
-
- r2 = chartInfo.chart_selection.rangeResizeIndex.row[1]
- c2 = chartInfo.chart_selection.rangeResizeIndex.column[0]
- } else if (chartInfo.chart_selection.rangeResize == 'rb') {
- r1 = chartInfo.chart_selection.rangeResizeIndex.row[1]
- c1 = chartInfo.chart_selection.rangeResizeIndex.column[1]
-
- r2 = chartInfo.chart_selection.rangeResizeIndex.row[0]
- c2 = chartInfo.chart_selection.rangeResizeIndex.column[0]
- }
-
- //行
- if (rangeRowCheck.exits) {
- var row_s = r1 - chartInfo.chart_selection.rangeResizexy[0] + row_index
-
- if (row_s < st_r + rangeRowCheck.range[1] + 1 || y < 0) {
- row_s = st_r + rangeRowCheck.range[1] + 1
- } else if (row_s >= visibledatarow.length - 1 || y > winH) {
- row_s = visibledatarow.length - 1
+
+ //更新
+ if (rangeColCheck.exits) {
+ chart_json.rangeArray = [
+ { row: chart_json.rangeArray[0].row, column: [st_c, col_e] }
+ ]
+ chart_json.rangeSplitArray.range = {
+ row: chart_json.rangeArray[0].row,
+ column: [st_c, col_e]
+ }
+
+ chart_json.rangeSplitArray.rowtitle = {
+ row: chart_json.rangeSplitArray.rowtitle.row,
+ column: [col_s - st_c, col_e - st_c]
+ }
+ chart_json.rangeSplitArray.content = {
+ row: chart_json.rangeSplitArray.content.row,
+ column: [col_s - st_c, col_e - st_c]
+ }
+ } else {
+ chart_json.rangeArray = [
+ { row: chart_json.rangeArray[0].row, column: [col_s, col_e] }
+ ]
+ chart_json.rangeSplitArray.range = {
+ row: chart_json.rangeArray[0].row,
+ column: [col_s, col_e]
+ }
}
- } else {
- var row_s = st_r - chartInfo.chart_selection.rangeResizexy[0] + row_index
-
- if (row_s < 0 || y < 0) {
- row_s = 0
- } else if (row_s >= visibledatarow.length - 1 || y > winH) {
- row_s = visibledatarow.length - 1
+ } else if ($id == 'luckysheet-chart-rangeShow-coltitle') {
+ //行
+ var row_s =
+ chartInfo.chart_selection.rangeMoveIndex[0] -
+ chartInfo.chart_selection.rangeMovexy[0] +
+ row_index
+ if (rangeRowCheck.exits) {
+ if (row_s < st_r + rangeRowCheck.range[1] + 1 || y < 0) {
+ row_s = st_r + rangeRowCheck.range[1] + 1
+ }
+ } else {
+ if (row_s < 0 || y < 0) {
+ row_s = 0
+ }
}
- }
-
- //列
- if (rangeColCheck.exits) {
- var col_s = c1 - chartInfo.chart_selection.rangeResizexy[1] + col_index
-
- if (col_s < st_c + rangeColCheck.range[1] + 1 || x < 0) {
- col_s = st_c + rangeColCheck.range[1] + 1
- } else if (col_s >= visibledatacolumn.length - 1 || x > winW) {
- col_s = visibledatacolumn.length - 1
+
+ //更新
+ var row_e =
+ rangeSplitArray.coltitle.row[1] -
+ rangeSplitArray.coltitle.row[0] +
+ row_s
+
+ if (row_e >= visibledatarow.length - 1 || y > winH) {
+ row_s =
+ visibledatarow.length -
+ 1 -
+ rangeSplitArray.coltitle.row[1] +
+ rangeSplitArray.coltitle.row[0]
+ row_e = visibledatarow.length - 1
}
- } else {
- var col_s = st_c - chartInfo.chart_selection.rangeResizexy[1] + col_index
-
- if (col_s < 0 || x < 0) {
- col_s = 0
- } else if (col_s >= visibledatacolumn.length - 1 || x > winW) {
- col_s = visibledatacolumn.length - 1
+
+ if (rangeRowCheck.exits) {
+ chart_json.rangeArray = [
+ { row: [st_r, row_e], column: chart_json.rangeArray[0].column }
+ ]
+ chart_json.rangeSplitArray.range = {
+ row: [st_r, row_e],
+ column: chart_json.rangeArray[0].column
+ }
+
+ chart_json.rangeSplitArray.coltitle = {
+ row: [row_s - st_r, row_e - st_r],
+ column: chart_json.rangeSplitArray.coltitle.column
+ }
+ chart_json.rangeSplitArray.content = {
+ row: [row_s - st_r, row_e - st_r],
+ column: chart_json.rangeSplitArray.content.column
+ }
+ } else {
+ chart_json.rangeArray = [
+ { row: [row_s, row_e], column: chart_json.rangeArray[0].column }
+ ]
+ chart_json.rangeSplitArray.range = {
+ row: [row_s, row_e],
+ column: chart_json.rangeArray[0].column
+ }
}
}
-
- var obj_r1, obj_r2, obj_c1, obj_c2
-
- if (row_s > r2) {
- obj_r1 = r2
- obj_r2 = row_s
- } else {
- obj_r1 = row_s
- obj_r2 = r2
- }
-
- if (col_s > c2) {
- obj_c1 = c2
- obj_c2 = col_s
- } else {
- obj_c1 = col_s
- obj_c2 = c2
- }
-
- if (!rangeRowCheck.exits && !rangeColCheck.exits) {
- chart_json.rangeArray = [
- { row: [obj_r1, obj_r2], column: [obj_c1, obj_c2] }
- ]
- chart_json.rangeSplitArray.range = {
- row: [obj_r1, obj_r2],
- column: [obj_c1, obj_c2]
- }
- } else {
- chart_json.rangeArray = [
- { row: [st_r, obj_r2], column: [st_c, obj_c2] }
- ]
- chart_json.rangeSplitArray.range = {
- row: [st_r, obj_r2],
- column: [st_c, obj_c2]
- }
-
- chart_json.rangeSplitArray.content = {
- row: [obj_r1 - st_r, obj_r2 - st_r],
- column: [obj_c1 - st_c, obj_c2 - st_c]
+
+ chartInfo.chart_selection.create(chartInfo.currentChart)
+ },
+ rangeMoveDragged: function () {
+ chartInfo.chart_selection.rangeMove = false
+
+ var updateJson = chartInfo.currentChart
+
+ updateJson.rangeTxt = getRangetxt(
+ chartInfo.currentSheetIndex,
+ updateJson.rangeArray[0],
+ chartInfo.currentSheetIndex
+ )
+ updateJson.chartData = getdatabyselection(
+ updateJson.rangeArray[0],
+ chartInfo.currentSheetIndex
+ )
+ // 渲染
+ chartInfo.changeChartRange(updateJson.chart_id, updateJson.chartData, updateJson.rangeArray, updateJson.rangeTxt)
+ },
+ rangeResize: false,
+ rangeResizexy: null,
+ rangeResizeIndex: null,
+ rangeResizeObj: null,
+ rangeResizeDraging: function (event, sheetBarHeight, statisticBarHeight) {
+ var chart_json = chartInfo.currentChart
+
+ var st_r = chart_json.rangeArray[0].row[0]
+ var st_c = chart_json.rangeArray[0].column[0]
+ var rangeRowCheck = chart_json.rangeRowCheck
+ var rangeColCheck = chart_json.rangeColCheck
+ var rangeSplitArray = chart_json.rangeSplitArray
+
+ var mouse = mouseposition(event.pageX, event.pageY)
+ var scrollLeft = $('#luckysheet-cell-main').scrollLeft()
+ var scrollTop = $('#luckysheet-cell-main').scrollTop()
+
+ var x = mouse[0] + scrollLeft
+ var y = mouse[1] + scrollTop
+
+ var winH =
+ $(window).height() + scrollTop - sheetBarHeight - statisticBarHeight,
+ winW = $(window).width() + scrollLeft
+
+ var rowLocation = _rowLocation(y),
+ row_index = rowLocation[2]
+ var colLocation = _colLocation(x),
+ col_index = colLocation[2]
+
+ var visibledatarow = getvisibledatarow()
+ var visibledatacolumn = getvisibledatacolumn()
+
+ var $id = chartInfo.chart_selection.rangeResizeObj.attr('id')
+
+ if ($id == 'luckysheet-chart-rangeShow-content') {
+ var r1, r2, c1, c2
+
+ if (chartInfo.chart_selection.rangeResize == 'lt') {
+ r1 = chartInfo.chart_selection.rangeResizeIndex.row[0]
+ c1 = chartInfo.chart_selection.rangeResizeIndex.column[0]
+
+ r2 = chartInfo.chart_selection.rangeResizeIndex.row[1]
+ c2 = chartInfo.chart_selection.rangeResizeIndex.column[1]
+ } else if (chartInfo.chart_selection.rangeResize == 'lb') {
+ r1 = chartInfo.chart_selection.rangeResizeIndex.row[1]
+ c1 = chartInfo.chart_selection.rangeResizeIndex.column[0]
+
+ r2 = chartInfo.chart_selection.rangeResizeIndex.row[0]
+ c2 = chartInfo.chart_selection.rangeResizeIndex.column[1]
+ } else if (chartInfo.chart_selection.rangeResize == 'rt') {
+ r1 = chartInfo.chart_selection.rangeResizeIndex.row[0]
+ c1 = chartInfo.chart_selection.rangeResizeIndex.column[1]
+
+ r2 = chartInfo.chart_selection.rangeResizeIndex.row[1]
+ c2 = chartInfo.chart_selection.rangeResizeIndex.column[0]
+ } else if (chartInfo.chart_selection.rangeResize == 'rb') {
+ r1 = chartInfo.chart_selection.rangeResizeIndex.row[1]
+ c1 = chartInfo.chart_selection.rangeResizeIndex.column[1]
+
+ r2 = chartInfo.chart_selection.rangeResizeIndex.row[0]
+ c2 = chartInfo.chart_selection.rangeResizeIndex.column[0]
}
-
+
+ //行
if (rangeRowCheck.exits) {
- chart_json.rangeSplitArray.rowtitle = {
- row: chart_json.rangeSplitArray.rowtitle.row,
- column: [obj_c1 - st_c, obj_c2 - st_c]
+ var row_s = r1 - chartInfo.chart_selection.rangeResizexy[0] + row_index
+
+ if (row_s < st_r + rangeRowCheck.range[1] + 1 || y < 0) {
+ row_s = st_r + rangeRowCheck.range[1] + 1
+ } else if (row_s >= visibledatarow.length - 1 || y > winH) {
+ row_s = visibledatarow.length - 1
+ }
+ } else {
+ var row_s = st_r - chartInfo.chart_selection.rangeResizexy[0] + row_index
+
+ if (row_s < 0 || y < 0) {
+ row_s = 0
+ } else if (row_s >= visibledatarow.length - 1 || y > winH) {
+ row_s = visibledatarow.length - 1
}
}
-
+
+ //列
if (rangeColCheck.exits) {
- chart_json.rangeSplitArray.coltitle = {
- row: [obj_r1 - st_r, obj_r2 - st_r],
- column: chart_json.rangeSplitArray.coltitle.column
+ var col_s = c1 - chartInfo.chart_selection.rangeResizexy[1] + col_index
+
+ if (col_s < st_c + rangeColCheck.range[1] + 1 || x < 0) {
+ col_s = st_c + rangeColCheck.range[1] + 1
+ } else if (col_s >= visibledatacolumn.length - 1 || x > winW) {
+ col_s = visibledatacolumn.length - 1
+ }
+ } else {
+ var col_s = st_c - chartInfo.chart_selection.rangeResizexy[1] + col_index
+
+ if (col_s < 0 || x < 0) {
+ col_s = 0
+ } else if (col_s >= visibledatacolumn.length - 1 || x > winW) {
+ col_s = visibledatacolumn.length - 1
}
}
- }
- } else if ($id == 'luckysheet-chart-rangeShow-rowtitle') {
- var c1, c2
-
- if (
- chartInfo.chart_selection.rangeResize == 'lt' ||
- chartInfo.chart_selection.rangeResize == 'lb'
- ) {
- c1 = chartInfo.chart_selection.rangeResizeIndex.column[0]
- c2 = chartInfo.chart_selection.rangeResizeIndex.column[1]
- } else if (
- chartInfo.chart_selection.rangeResize == 'rt' ||
- chartInfo.chart_selection.rangeResize == 'rb'
- ) {
- c1 = chartInfo.chart_selection.rangeResizeIndex.column[1]
- c2 = chartInfo.chart_selection.rangeResizeIndex.column[0]
- }
-
- //列
- if (rangeColCheck.exits) {
- var col_s = c1 - chartInfo.chart_selection.rangeResizexy[1] + col_index
-
- if (col_s < st_c + rangeColCheck.range[1] + 1 || x < 0) {
- col_s = st_c + rangeColCheck.range[1] + 1
- } else if (col_s >= visibledatacolumn.length - 1 || x > winW) {
- col_s = visibledatacolumn.length - 1
- }
- } else {
- var col_s = st_c - chartInfo.chart_selection.rangeResizexy[1] + col_index
-
- if (col_s < 0 || x < 0) {
- col_s = 0
- } else if (col_s >= visibledatacolumn.length - 1 || x > winW) {
- col_s = visibledatacolumn.length - 1
+
+ var obj_r1, obj_r2, obj_c1, obj_c2
+
+ if (row_s > r2) {
+ obj_r1 = r2
+ obj_r2 = row_s
+ } else {
+ obj_r1 = row_s
+ obj_r2 = r2
}
- }
-
- var obj_c1, obj_c2
-
- if (col_s > c2) {
- obj_c1 = c2
- obj_c2 = col_s
- } else {
- obj_c1 = col_s
- obj_c2 = c2
- }
-
- //更新
- if (!rangeColCheck.exits) {
- chart_json.rangeArray = [
- { row: chart_json.rangeArray[0].row, column: [obj_c1, obj_c2] }
- ]
- chart_json.rangeSplitArray.range = {
- row: chart_json.rangeArray[0].row,
- column: [obj_c1, obj_c2]
+
+ if (col_s > c2) {
+ obj_c1 = c2
+ obj_c2 = col_s
+ } else {
+ obj_c1 = col_s
+ obj_c2 = c2
}
- } else {
- chart_json.rangeArray = [
- { row: chart_json.rangeArray[0].row, column: [st_c, obj_c2] }
- ]
- chart_json.rangeSplitArray.range = {
- row: chart_json.rangeArray[0].row,
- column: [st_c, obj_c2]
+
+ if (!rangeRowCheck.exits && !rangeColCheck.exits) {
+ chart_json.rangeArray = [
+ { row: [obj_r1, obj_r2], column: [obj_c1, obj_c2] }
+ ]
+ chart_json.rangeSplitArray.range = {
+ row: [obj_r1, obj_r2],
+ column: [obj_c1, obj_c2]
+ }
+ } else {
+ chart_json.rangeArray = [
+ { row: [st_r, obj_r2], column: [st_c, obj_c2] }
+ ]
+ chart_json.rangeSplitArray.range = {
+ row: [st_r, obj_r2],
+ column: [st_c, obj_c2]
+ }
+
+ chart_json.rangeSplitArray.content = {
+ row: [obj_r1 - st_r, obj_r2 - st_r],
+ column: [obj_c1 - st_c, obj_c2 - st_c]
+ }
+
+ if (rangeRowCheck.exits) {
+ chart_json.rangeSplitArray.rowtitle = {
+ row: chart_json.rangeSplitArray.rowtitle.row,
+ column: [obj_c1 - st_c, obj_c2 - st_c]
+ }
+ }
+
+ if (rangeColCheck.exits) {
+ chart_json.rangeSplitArray.coltitle = {
+ row: [obj_r1 - st_r, obj_r2 - st_r],
+ column: chart_json.rangeSplitArray.coltitle.column
+ }
+ }
}
-
- chart_json.rangeSplitArray.rowtitle = {
- row: chart_json.rangeSplitArray.rowtitle.row,
- column: [obj_c1 - st_c, obj_c2 - st_c]
+ } else if ($id == 'luckysheet-chart-rangeShow-rowtitle') {
+ var c1, c2
+
+ if (
+ chartInfo.chart_selection.rangeResize == 'lt' ||
+ chartInfo.chart_selection.rangeResize == 'lb'
+ ) {
+ c1 = chartInfo.chart_selection.rangeResizeIndex.column[0]
+ c2 = chartInfo.chart_selection.rangeResizeIndex.column[1]
+ } else if (
+ chartInfo.chart_selection.rangeResize == 'rt' ||
+ chartInfo.chart_selection.rangeResize == 'rb'
+ ) {
+ c1 = chartInfo.chart_selection.rangeResizeIndex.column[1]
+ c2 = chartInfo.chart_selection.rangeResizeIndex.column[0]
}
- chart_json.rangeSplitArray.content = {
- row: chart_json.rangeSplitArray.content.row,
- column: [obj_c1 - st_c, obj_c2 - st_c]
+
+ //列
+ if (rangeColCheck.exits) {
+ var col_s = c1 - chartInfo.chart_selection.rangeResizexy[1] + col_index
+
+ if (col_s < st_c + rangeColCheck.range[1] + 1 || x < 0) {
+ col_s = st_c + rangeColCheck.range[1] + 1
+ } else if (col_s >= visibledatacolumn.length - 1 || x > winW) {
+ col_s = visibledatacolumn.length - 1
+ }
+ } else {
+ var col_s = st_c - chartInfo.chart_selection.rangeResizexy[1] + col_index
+
+ if (col_s < 0 || x < 0) {
+ col_s = 0
+ } else if (col_s >= visibledatacolumn.length - 1 || x > winW) {
+ col_s = visibledatacolumn.length - 1
+ }
}
- }
- } else if ($id == 'luckysheet-chart-rangeShow-coltitle') {
- var r1, r2
-
- if (
- chartInfo.chart_selection.rangeResize == 'lt' ||
- chartInfo.chart_selection.rangeResize == 'rt'
- ) {
- r1 = chartInfo.chart_selection.rangeResizeIndex.row[0]
- r2 = chartInfo.chart_selection.rangeResizeIndex.row[1]
- } else if (
- chartInfo.chart_selection.rangeResize == 'lb' ||
- chartInfo.chart_selection.rangeResize == 'rb'
- ) {
- r1 = chartInfo.chart_selection.rangeResizeIndex.row[1]
- r2 = chartInfo.chart_selection.rangeResizeIndex.row[0]
- }
-
- //行
- if (rangeRowCheck.exits) {
- var row_s = r1 - chartInfo.chart_selection.rangeResizexy[0] + row_index
-
- if (row_s < st_r + rangeRowCheck.range[1] + 1 || y < 0) {
- row_s = st_r + rangeRowCheck.range[1] + 1
- } else if (row_s >= visibledatarow.length - 1 || y > winH) {
- row_s = visibledatarow.length - 1
+
+ var obj_c1, obj_c2
+
+ if (col_s > c2) {
+ obj_c1 = c2
+ obj_c2 = col_s
+ } else {
+ obj_c1 = col_s
+ obj_c2 = c2
}
- } else {
- var row_s = st_r - chartInfo.chart_selection.rangeResizexy[0] + row_index
-
- if (row_s < 0 || y < 0) {
- row_s = 0
- } else if (row_s >= visibledatarow.length - 1 || y > winH) {
- row_s = visibledatarow.length - 1
+
+ //更新
+ if (!rangeColCheck.exits) {
+ chart_json.rangeArray = [
+ { row: chart_json.rangeArray[0].row, column: [obj_c1, obj_c2] }
+ ]
+ chart_json.rangeSplitArray.range = {
+ row: chart_json.rangeArray[0].row,
+ column: [obj_c1, obj_c2]
+ }
+ } else {
+ chart_json.rangeArray = [
+ { row: chart_json.rangeArray[0].row, column: [st_c, obj_c2] }
+ ]
+ chart_json.rangeSplitArray.range = {
+ row: chart_json.rangeArray[0].row,
+ column: [st_c, obj_c2]
+ }
+
+ chart_json.rangeSplitArray.rowtitle = {
+ row: chart_json.rangeSplitArray.rowtitle.row,
+ column: [obj_c1 - st_c, obj_c2 - st_c]
+ }
+ chart_json.rangeSplitArray.content = {
+ row: chart_json.rangeSplitArray.content.row,
+ column: [obj_c1 - st_c, obj_c2 - st_c]
+ }
}
- }
-
- var obj_r1, obj_r2
-
- if (row_s > r2) {
- obj_r1 = r2
- obj_r2 = row_s
- } else {
- obj_r1 = row_s
- obj_r2 = r2
- }
-
- //更新
- if (!rangeRowCheck.exits) {
- chart_json.rangeArray = [
- { row: [obj_r1, obj_r2], column: chart_json.rangeArray[0].column }
- ]
- chart_json.rangeSplitArray.range = {
- row: [obj_r1, obj_r2],
- column: chart_json.rangeArray[0].column
+ } else if ($id == 'luckysheet-chart-rangeShow-coltitle') {
+ var r1, r2
+
+ if (
+ chartInfo.chart_selection.rangeResize == 'lt' ||
+ chartInfo.chart_selection.rangeResize == 'rt'
+ ) {
+ r1 = chartInfo.chart_selection.rangeResizeIndex.row[0]
+ r2 = chartInfo.chart_selection.rangeResizeIndex.row[1]
+ } else if (
+ chartInfo.chart_selection.rangeResize == 'lb' ||
+ chartInfo.chart_selection.rangeResize == 'rb'
+ ) {
+ r1 = chartInfo.chart_selection.rangeResizeIndex.row[1]
+ r2 = chartInfo.chart_selection.rangeResizeIndex.row[0]
}
- } else {
- chart_json.rangeArray = [
- { row: [st_r, obj_r2], column: chart_json.rangeArray[0].column }
- ]
- chart_json.rangeSplitArray.range = {
- row: [st_r, obj_r2],
- column: chart_json.rangeArray[0].column
+
+ //行
+ if (rangeRowCheck.exits) {
+ var row_s = r1 - chartInfo.chart_selection.rangeResizexy[0] + row_index
+
+ if (row_s < st_r + rangeRowCheck.range[1] + 1 || y < 0) {
+ row_s = st_r + rangeRowCheck.range[1] + 1
+ } else if (row_s >= visibledatarow.length - 1 || y > winH) {
+ row_s = visibledatarow.length - 1
+ }
+ } else {
+ var row_s = st_r - chartInfo.chart_selection.rangeResizexy[0] + row_index
+
+ if (row_s < 0 || y < 0) {
+ row_s = 0
+ } else if (row_s >= visibledatarow.length - 1 || y > winH) {
+ row_s = visibledatarow.length - 1
+ }
}
-
- chart_json.rangeSplitArray.coltitle = {
- row: [obj_r1 - st_r, obj_r2 - st_r],
- column: chart_json.rangeSplitArray.coltitle.column
+
+ var obj_r1, obj_r2
+
+ if (row_s > r2) {
+ obj_r1 = r2
+ obj_r2 = row_s
+ } else {
+ obj_r1 = row_s
+ obj_r2 = r2
}
- chart_json.rangeSplitArray.content = {
- row: [obj_r1 - st_r, obj_r2 - st_r],
- column: chart_json.rangeSplitArray.content.column
+
+ //更新
+ if (!rangeRowCheck.exits) {
+ chart_json.rangeArray = [
+ { row: [obj_r1, obj_r2], column: chart_json.rangeArray[0].column }
+ ]
+ chart_json.rangeSplitArray.range = {
+ row: [obj_r1, obj_r2],
+ column: chart_json.rangeArray[0].column
+ }
+ } else {
+ chart_json.rangeArray = [
+ { row: [st_r, obj_r2], column: chart_json.rangeArray[0].column }
+ ]
+ chart_json.rangeSplitArray.range = {
+ row: [st_r, obj_r2],
+ column: chart_json.rangeArray[0].column
+ }
+
+ chart_json.rangeSplitArray.coltitle = {
+ row: [obj_r1 - st_r, obj_r2 - st_r],
+ column: chart_json.rangeSplitArray.coltitle.column
+ }
+ chart_json.rangeSplitArray.content = {
+ row: [obj_r1 - st_r, obj_r2 - st_r],
+ column: chart_json.rangeSplitArray.content.column
+ }
}
}
+
+ chartInfo.chart_selection.create(chartInfo.currentChart)
+ },
+ rangeResizeDragged: function () {
+ chartInfo.chart_selection.rangeResize = null
+
+ updateJson.rangeTxt = getRangetxt(
+ chartInfo.currentSheetIndex,
+ updateJson.rangeArray[0],
+ chartInfo.currentSheetIndex
+ )
+ updateJson.chartData = getdatabyselection(
+ updateJson.rangeArray[0],
+ chartInfo.currentSheetIndex
+ )
+ // 渲染
+ chartInfo.changeChartRange(updateJson.chart_id, updateJson.chartData, updateJson.rangeArray, updateJson.rangeTxt)
+
}
-
- chartInfo.chart_selection.create(chartInfo.currentChart)
- },
- rangeResizeDragged: function () {
- chartInfo.chart_selection.rangeResize = null
-
- updateJson.rangeTxt = getRangetxt(
- chartInfo.currentSheetIndex,
- updateJson.rangeArray[0],
- chartInfo.currentSheetIndex
- )
- updateJson.chartData = getdatabyselection(
- updateJson.rangeArray[0],
- chartInfo.currentSheetIndex
- )
- // 渲染
- chartInfo.changeChartRange(updateJson.chart_id, updateJson.chartData, updateJson.rangeArray, updateJson.rangeTxt)
-
}
- }
-}
+}
// create chart
function createLuckyChart(width, height, left, top) {
@@ -936,7 +937,8 @@ function createLuckyChart(width, height, left, top) {
// insert chartinfo
let sheetFile = chartInfo.luckysheetfile[getSheetIndex(chartInfo.currentSheetIndex)];
- if (!sheetFile.chart) {
+
+ if(!sheetFile.chart){
sheetFile.chart = [];
}
sheetFile.chart.push({
@@ -962,78 +964,87 @@ function createLuckyChart(width, height, left, top) {
$t.children('.luckysheet-modal-dialog-content').mousedown(function (e) {
if (!chartInfo.chartparam.luckysheetCurrentChartMaxState) {
- //当前图表显示区域高亮
- showNeedRangeShow(chart_id);
+ //当前图表显示区域高亮
+ showNeedRangeShow(chart_id);
}
e.stopPropagation()
})
$t.dblclick(function (e) {
if (!chartInfo.chartparam.luckysheetCurrentChartMaxState) {
- $(this)
- .find('.jfgrid-modal-controll-update')
- .click()
+ $(this)
+ .find('.jfgrid-modal-controll-update')
+ .click()
} else {
// TODO:全屏关闭
// closebtn.click()
}
e.stopPropagation()
})
- // move chart
- .mousedown(function (e) {
- //允许拖动渲染框
- if (
- !$(e.target).is(".luckysheet-modal-dialog-controll") &&
- !$(e.target).is(".luckysheet-modal-controll-btn") &&
- !$(e.target).is("i")
- ) {
- // Debounce
- chartInfo.chartparam.luckysheetCurrentChartMoveTimeout = setTimeout(
- function () {
- chartInfo.chartparam.luckysheetCurrentChartMove = true;
- },
- 100
- );
- }
+ // move chart
+ .mousedown(function (e) {
- var toffset = chartInfo.chartparam.luckysheetCurrentChartMoveObj.offset();
- var tpsition = chartInfo.chartparam.luckysheetCurrentChartMoveObj.position();
- //luckysheetCurrentChartMoveXy: [鼠标点相对chart框的距离X方向,鼠标点相对chart框的距离Y方向,chart框相对cell-main的距离X方向,chart框相对cell-main的距离Y方向,水平滚动条的位置,垂直滚动条的位置]
- chartInfo.chartparam.luckysheetCurrentChartMoveXy = [
- e.pageX - toffset.left,
- e.pageY - toffset.top,
- tpsition.left,
- tpsition.top,
- $("#luckysheet-scrollbar-x").scrollLeft(),
- $("#luckysheet-scrollbar-y").scrollTop()
- ];
- chartInfo.chartparam.luckysheetCurrentChartMoveWinH = $(
- "#luckysheet-cell-main"
- )[0].scrollHeight;
- chartInfo.chartparam.luckysheetCurrentChartMoveWinW = $(
- "#luckysheet-cell-main"
- )[0].scrollWidth;
-
- if (
- !$(e.target).hasClass("luckysheet-mousedown-cancel") &&
- $(e.target).filter("[class*='sp-palette']").length == 0 &&
- $(e.target).filter("[class*='sp-thumb']").length == 0 &&
- $(e.target).filter("[class*='sp-']").length == 0
- ) {
- $("#luckysheet-rightclick-menu").hide();
- $("#luckysheet-cols-h-hover").hide();
- $("#luckysheet-cols-menu-btn").hide();
- $("#luckysheet-rightclick-menu").hide();
- $(
- "#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu, #luckysheet-user-menu"
- ).hide();
- $(
- "body > .luckysheet-filter-menu, body > .luckysheet-filter-submenu, body > .luckysheet-cols-menu"
- ).hide();
+ if (!chartInfo.chartparam.luckysheetCurrentChartMaxState) {
+ //当前图表显示区域高亮
+ showNeedRangeShow(chart_id);
+ setluckysheet_scroll_status(true);
+
+ //允许拖动渲染框
+ if (
+ !$(e.target).is(".luckysheet-modal-dialog-controll") &&
+ !$(e.target).is(".luckysheet-modal-controll-btn") &&
+ !$(e.target).is("i")
+ ) {
+ // Debounce
+ chartInfo.chartparam.luckysheetCurrentChartMoveTimeout = setTimeout(
+ function () {
+ chartInfo.chartparam.luckysheetCurrentChartMove = true;
+ },
+ 100
+ );
+ }
- }
+ var toffset = chartInfo.chartparam.luckysheetCurrentChartMoveObj.offset();
+ var tpsition = chartInfo.chartparam.luckysheetCurrentChartMoveObj.position();
+ //luckysheetCurrentChartMoveXy: [鼠标点相对chart框的距离X方向,鼠标点相对chart框的距离Y方向,chart框相对cell-main的距离X方向,chart框相对cell-main的距离Y方向,水平滚动条的位置,垂直滚动条的位置]
+ chartInfo.chartparam.luckysheetCurrentChartMoveXy = [
+ e.pageX - toffset.left,
+ e.pageY - toffset.top,
+ tpsition.left,
+ tpsition.top,
+ $("#luckysheet-scrollbar-x").scrollLeft(),
+ $("#luckysheet-scrollbar-y").scrollTop()
+ ];
+ chartInfo.chartparam.luckysheetCurrentChartMoveWinH = $(
+ "#luckysheet-cell-main"
+ )[0].scrollHeight;
+ chartInfo.chartparam.luckysheetCurrentChartMoveWinW = $(
+ "#luckysheet-cell-main"
+ )[0].scrollWidth;
+
+ if (
+ !$(e.target).hasClass("luckysheet-mousedown-cancel") &&
+ $(e.target).filter("[class*='sp-palette']").length == 0 &&
+ $(e.target).filter("[class*='sp-thumb']").length == 0 &&
+ $(e.target).filter("[class*='sp-']").length == 0
+ ) {
+ $("#luckysheet-rightclick-menu").hide();
+ $("#luckysheet-cols-h-hover").hide();
+ $("#luckysheet-cols-menu-btn").hide();
+ $("#luckysheet-rightclick-menu").hide();
+ $(
+ "#luckysheet-sheet-list, #luckysheet-rightclick-sheet-menu, #luckysheet-user-menu"
+ ).hide();
+ $(
+ "body > .luckysheet-filter-menu, body > .luckysheet-filter-submenu, body > .luckysheet-cols-menu"
+ ).hide();
- e.stopPropagation();
- }).find(".luckysheet-modal-dialog-resize-item")
+ }
+
+ e.stopPropagation();
+
+ }
+
+ }).find(".luckysheet-modal-dialog-resize-item")
.mousedown(function (e) {
if (chartInfo.chartparam.luckysheetCurrentChartActive) {
chartInfo.chartparam.luckysheetCurrentChartResize = $(this).data("type"); //开始状态resize
@@ -1090,14 +1101,14 @@ function delChart(chart_id) {
function showNeedRangeShow(chart_id) {
let chartLists = chartInfo.luckysheetfile[getSheetIndex(chartInfo.currentSheetIndex)].chart;
for (let chartId in chartLists) {
- if (chartLists[chartId].sheetIndex == chartInfo.currentSheetIndex) {
+ // if (chartLists[chartId].sheetIndex == chartInfo.currentSheetIndex) {
//当前sheet的图表先设置为false
chartLists[chartId].needRangeShow = false
if (chartLists[chartId].chart_id == chart_id) {
chartLists[chartId].needRangeShow = true
}
- }
-
+ // }
+
}
//操作DOM当前图表选择区域高亮
@@ -1107,11 +1118,11 @@ function showNeedRangeShow(chart_id) {
function hideAllNeedRangeShow() {
let chartLists = chartInfo.luckysheetfile[getSheetIndex(chartInfo.currentSheetIndex)].chart;
for (let chartId in chartLists) {
- if (chartLists[chartId].sheetIndex == chartInfo.currentSheetIndex) {
+ // if (chartLists[chartId].sheetIndex == chartInfo.currentSheetIndex) {
//当前sheet的图表设置为false
chartLists[chartId].needRangeShow = false
- }
-
+ // }
+
}
//操作DOM 当前图表选择区域隐藏
@@ -1171,7 +1182,7 @@ function selectRangeBorderHide(settingShow) {
}
}
-
+// 显示图表设置界面
function showChartSettingComponent(refresh, chart_id) {
if (!$('.chartSetting').is(':visible')) {
@@ -1188,15 +1199,17 @@ function showChartSettingComponent(refresh, chart_id) {
$('#luckysheet-cell-main').find('.luckysheet-datavisual-selection-set div').show()
chartInfo.chartparam.luckysheetCurrentChartActive = true
if (!isEditMode() && !refresh) {
-
+
setTimeout(function () {
luckysheetsizeauto()
}, 0)
-
+
}
}
}
+
+// 隐藏图表设置界面
function hideChartSettingComponent(refresh) {
if ($('.chartSetting').is(':visible')) {
@@ -1213,11 +1226,49 @@ function hideChartSettingComponent(refresh) {
setTimeout(function () {
luckysheetsizeauto()
}, 0)
-
+
}
}
}
+// 隐藏其他sheet的图表,显示当前sheet的图表 chartMix 切换sheet页显示隐藏图表
+function renderChartShow(index) {
+ //传入index,图表显示隐藏
+ selectRangeBorderHide('true') //隐藏数据高亮区域,随意传入一个字符串,表示不处理chartSetting界面
+
+ const luckysheetfile = chartInfo.luckysheetfile;
+ luckysheetfile.forEach((file) => {
+ //切换当前页的所有图表都显示出来
+ if(file.index == index){
+
+ const chartLists = file.chart || [];
+
+ chartLists.forEach((chart)=>{
+ chart.isShow = true;
+ $('#' + chart.chart_id + '_c').show();
+
+ if (chart.needRangeShow == true) {
+ //一个sheet页只有一个图表高亮显示,//重要!因为在store了做了存储,所以能在此处找到对应图表设置显示隐藏
+ //操作DOM当前图表选择区域高亮
+ selectRangeBorderShow(chart.chart_id)
+ }
+
+ })
+
+ }
+
+ // 隐藏其他页的图表
+ else{
+ const chartLists = file.chart || [];
+
+ chartLists.forEach((chart)=>{
+ chart.isShow = false;
+ $('#' + chart.chart_id + '_c').hide();
+ })
+ }
+ });
+
+}
-export { chart, createLuckyChart }
\ No newline at end of file
+export { chart, createLuckyChart, hideAllNeedRangeShow,renderChartShow }
\ No newline at end of file