add undo Zoom Button

this adds a decent undo zoom button, which is only enabled
when the chart is zoomed

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
This commit is contained in:
Dominik Csapak 2016-05-03 09:12:11 +02:00 committed by Dietmar Maurer
parent 2964ce51a8
commit dba34cd6c9
2 changed files with 27 additions and 2 deletions

View File

@ -10,6 +10,8 @@ pve-manager (4.2-4) unstable; urgency=medium
* Do not send -debug versions of framework files * Do not send -debug versions of framework files
* add undo Zoom Button
-- Proxmox Support Team <support@proxmox.com> Tue, 03 May 2016 06:33:55 +0200 -- Proxmox Support Team <support@proxmox.com> Tue, 03 May 2016 06:33:55 +0200
pve-manager (4.2-3) unstable; urgency=medium pve-manager (4.2-3) unstable; urgency=medium

View File

@ -5,7 +5,9 @@ Ext.define('PVE.widget.RRDChart', {
width: 800, width: 800,
height: 300, height: 300,
interactions: 'crosszoom', interactions: [{
type: 'crosszoom'
}],
axes: [{ axes: [{
type: 'numeric', type: 'numeric',
position: 'left', position: 'left',
@ -24,7 +26,8 @@ Ext.define('PVE.widget.RRDChart', {
width: 140 width: 140
}, },
listeners: { listeners: {
afterrender: 'onAfterRender' afterrender: 'onAfterRender',
animationend: 'onAfterAnimation'
}, },
bytesArr : [ bytesArr : [
@ -108,6 +111,18 @@ Ext.define('PVE.widget.RRDChart', {
} }
me.axes[0].setTitle(axisTitle); me.axes[0].setTitle(axisTitle);
me.addTool({
type: 'minus',
disabled: true,
tooltip: gettext('Undo Zoom'),
handler: function(){
var undoButton = me.interactions[0].getUndoButton();
if (undoButton.handler) {
undoButton.handler();
}
}
});
// add a series for each field we get // add a series for each field we get
me.fields.forEach(function(item, index){ me.fields.forEach(function(item, index){
var title = item; var title = item;
@ -144,6 +159,14 @@ Ext.define('PVE.widget.RRDChart', {
}); });
}, },
onAfterAnimation: function(chart, eopts) {
// if the undobuton is disabled,
// disable our tool
var ourUndoZoomButton = chart.tools[0];
var undoButton = chart.interactions[0].getUndoButton();
ourUndoZoomButton.setDisabled(undoButton.isDisabled());
},
initComponent: function() { initComponent: function() {
var me = this; var me = this;