public void actionPerformed(ActionEvent e) {
if (selectedTracks.size() > 0) {
DataRange prevAxisDefinition = selectedTracks.iterator().next().getDataRange();
DataRangeDialog dlg = new DataRangeDialog(parentFrame, prevAxisDefinition);
dlg.setHideMid(true);
dlg.setVisible(true);
if (!dlg.isCanceled()) {
float min = Math.min(dlg.getMin(), dlg.getMax());
float max = Math.max(dlg.getMin(), dlg.getMax());
float mid = dlg.getBase();
if (mid < min) mid = min;
else if (mid > max) mid = max;
DataRange dataRange = new DataRange(min, mid, max);
dataRange.setType(dlg.getDataRangeType());
for (Track track : selectedTracks) {
track.setDataRange(dataRange);
track.setAutoScale(false);
}