Skip to content
Snippets Groups Projects
Commit 5586e0e7 authored by Kentin Rodrigues's avatar Kentin Rodrigues
Browse files

JIRA : CONTROLGUI-232

Add fonction in class SpectrumViewer for a new function of DevicePanel. 
parent 1eacfb78
No related branches found
No related tags found
No related merge requests found
......@@ -23,7 +23,7 @@ import fr.soleil.docking.view.IView;
public class SpectrumViewer extends JTabbedPane implements IItemViewer {
private static final long serialVersionUID = -3419144929681320818L;
private static final long serialVersionUID = -6962746095896865165L;
private static ChartSpectrumViewer chartSpectrumViewer;
private static TextSpectrumViewer stringSpectrumViewer;
......@@ -31,6 +31,11 @@ public class SpectrumViewer extends JTabbedPane implements IItemViewer {
private boolean activTabForWritableItem = false;
public static boolean openTabWithManyItem = false;
public static boolean allItemsIsInTab = false;
private ChartSpectrumViewer manyTabChartSpectrum = null;
private int counter = 0;
private JComponent dockingArea = null;
public SpectrumViewer(final DataBrowserController controller) {
......@@ -85,7 +90,6 @@ public class SpectrumViewer extends JTabbedPane implements IItemViewer {
@Override
public void addItem(Item item) {
if (item != null) {
IItemViewer viewer = getItemViewer(item.getFormat());
if (viewer != null) {
......@@ -93,10 +97,33 @@ public class SpectrumViewer extends JTabbedPane implements IItemViewer {
}
DataFormat format = item.getFormat();
if (activTabForWritableItem && format != DataFormat.TEXT) {
if (activTabForWritableItem && format != DataFormat.TEXT && !openTabWithManyItem) {
addSettableItem(item);
} else if (openTabWithManyItem) {
createTabWithManyItems(item);
}
}
}
private void createTabWithManyItems(Item item) {
if (manyTabChartSpectrum == null) {
createDockingViewForManyItems();
} else if (allItemsIsInTab) {
createDockingViewForManyItems();
allItemsIsInTab = false;
}
manyTabChartSpectrum.addItem(item);
}
private void createDockingViewForManyItems() {
counter = counter + 1;
String name = "Custom chart n°" + String.valueOf(counter);
manyTabChartSpectrum = new ChartSpectrumViewer(null);
dockingArea = getDockingArea();
IView createView = DockingUtil.createView(name, DataBrowser.ICONS.getIcon("DataItem.Spectrum.Tab.Chart"), name,
manyTabChartSpectrum, dockingArea);
spectrumViewerMap.put(name, createView);
}
private void addSettableItem(Item item) {
......@@ -212,8 +239,7 @@ public class SpectrumViewer extends JTabbedPane implements IItemViewer {
if (activTabForWritableItem && viewer == chartSpectrumViewer) {
this.setSelectedComponent(getDockingArea());
}
else {
} else {
this.setSelectedComponent((Component) viewer);
}
......@@ -224,7 +250,6 @@ public class SpectrumViewer extends JTabbedPane implements IItemViewer {
iView.select();
}
}
}
@Override
......@@ -242,5 +267,4 @@ public class SpectrumViewer extends JTabbedPane implements IItemViewer {
chartSpectrumViewer.clearSelection();
stringSpectrumViewer.clearSelection();
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment