43 lines
1.2 KiB
Plaintext
43 lines
1.2 KiB
Plaintext
/**
|
|
* @file Data zoom action
|
|
*/
|
|
define(function(require) {
|
|
|
|
var zrUtil = require('zrender/core/util');
|
|
var modelUtil = require('../../util/model');
|
|
var echarts = require('../../echarts');
|
|
|
|
|
|
echarts.registerAction('dataZoom', function (payload, ecModel) {
|
|
|
|
var linkedNodesFinder = modelUtil.createLinkedNodesFinder(
|
|
zrUtil.bind(ecModel.eachComponent, ecModel, 'dataZoom'),
|
|
modelUtil.eachAxisDim,
|
|
function (model, dimNames) {
|
|
return model.get(dimNames.axisIndex);
|
|
}
|
|
);
|
|
|
|
var effectedModels = [];
|
|
|
|
ecModel.eachComponent(
|
|
{mainType: 'dataZoom', query: payload},
|
|
function (model, index) {
|
|
effectedModels.push.apply(
|
|
effectedModels, linkedNodesFinder(model).nodes
|
|
);
|
|
}
|
|
);
|
|
|
|
zrUtil.each(effectedModels, function (dataZoomModel, index) {
|
|
dataZoomModel.setRawRange({
|
|
start: payload.start,
|
|
end: payload.end,
|
|
startValue: payload.startValue,
|
|
endValue: payload.endValue
|
|
});
|
|
});
|
|
|
|
});
|
|
|
|
}); |