diff --git a/src/main/java/fr/soleil/bensikin/actions/snapshot/ViewImageAction.java b/src/main/java/fr/soleil/bensikin/actions/snapshot/ViewImageAction.java index 299043f64aaab32bad42956c92c8f1e2c709f415..d1261f12f3f4e68b6159bdf9251affff2ce377ab 100644 --- a/src/main/java/fr/soleil/bensikin/actions/snapshot/ViewImageAction.java +++ b/src/main/java/fr/soleil/bensikin/actions/snapshot/ViewImageAction.java @@ -14,25 +14,21 @@ public class ViewImageAction extends AbstractAction { private ViewImageDialog dialog; private String name; private Object value; - private int data_type; - private String displayFormat; - public ViewImageAction(String name, Object value, int data_type, - String displayFormat) { + public ViewImageAction(String name, Object value) { super(); this.putValue(Action.NAME, Messages .getMessage("DIALOGS_IMAGE_ATTRIBUTE_VIEW_IMAGE")); this.name = name; this.value = value; - this.data_type = data_type; - this.displayFormat = displayFormat; dialog = null; } + @Override public void actionPerformed(ActionEvent e) { if (dialog == null) { - dialog = new ViewImageDialog(name, value, displayFormat, data_type); + dialog = new ViewImageDialog(name, value); } dialog.updateContent(); dialog.setVisible(true); diff --git a/src/main/java/fr/soleil/bensikin/containers/sub/dialogs/ImageAttibuteDialog.java b/src/main/java/fr/soleil/bensikin/containers/sub/dialogs/ImageAttibuteDialog.java index 21b73e3521d087899cdb36820d2577b96124d6f1..460bfca0954122b1c776f4e7d5a5b26d702d2ed5 100644 --- a/src/main/java/fr/soleil/bensikin/containers/sub/dialogs/ImageAttibuteDialog.java +++ b/src/main/java/fr/soleil/bensikin/containers/sub/dialogs/ImageAttibuteDialog.java @@ -46,6 +46,8 @@ import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.JViewport; import javax.swing.SpringLayout; +import javax.swing.SwingConstants; +import javax.swing.WindowConstants; import javax.swing.table.JTableHeader; import fr.esrf.TangoDs.TangoConst; @@ -60,7 +62,7 @@ import fr.soleil.bensikin.tools.SpringUtilities; /** * Dialog used to represent image values. - * + * * @author CLAISSE */ public class ImageAttibuteDialog extends JDialog { @@ -88,7 +90,7 @@ public class ImageAttibuteDialog extends JDialog { + ": " + attributeName, true); this.data_type = data_type; this.attributeName = attributeName; - this.value = duplicateValue(_value); + this.value = duplicateValue(_value); this.setSize(dim); int x = BensikinFrame.getInstance().getX() @@ -108,7 +110,7 @@ public class ImageAttibuteDialog extends JDialog { this.initLayout(); this.setContentPane(myPanel); repaint(); - this.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); + this.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); } /** @@ -128,7 +130,7 @@ public class ImageAttibuteDialog extends JDialog { GUIUtilities.setObjectBackground(myPanel, GUIUtilities.SNAPSHOT_COLOR); if (hasNoData()) { noData = new JLabel(Messages - .getMessage("DIALOGS_IMAGE_ATTRIBUTE_NAN"), JLabel.CENTER); + .getMessage("DIALOGS_IMAGE_ATTRIBUTE_NAN"), SwingConstants.CENTER); GUIUtilities.setObjectBackground(noData, GUIUtilities.SNAPSHOT_COLOR); } else { @@ -168,8 +170,7 @@ public class ImageAttibuteDialog extends JDialog { .getDefaultRenderer()); headerTable.setMaximumSize(new Dimension(initColumnWidth, Integer.MAX_VALUE)); - viewButton = new JButton(new ViewImageAction(attributeName, value, - data_type, displayFormat)); + viewButton = new JButton(new ViewImageAction(attributeName, value)); viewButton.setIcon(imageIcon); } @@ -335,7 +336,7 @@ public class ImageAttibuteDialog extends JDialog { /** * Returns the registered value - * + * * @return The registered value */ public Object getValue() { diff --git a/src/main/java/fr/soleil/bensikin/containers/sub/dialogs/ViewImageDialog.java b/src/main/java/fr/soleil/bensikin/containers/sub/dialogs/ViewImageDialog.java index 5cc88e62f6f63eebc2a854aa9b14c07444982b6a..ad2024be0cc5256d936ed048e9562683aa096688 100644 --- a/src/main/java/fr/soleil/bensikin/containers/sub/dialogs/ViewImageDialog.java +++ b/src/main/java/fr/soleil/bensikin/containers/sub/dialogs/ViewImageDialog.java @@ -1,12 +1,13 @@ package fr.soleil.bensikin.containers.sub.dialogs; +import java.awt.BorderLayout; +import java.awt.Dimension; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.activation.UnsupportedDataTypeException; import javax.swing.JDialog; import javax.swing.JPanel; -import javax.swing.SpringLayout; import javax.swing.WindowConstants; import net.entropysoft.transmorph.ConverterException; @@ -14,7 +15,6 @@ import net.entropysoft.transmorph.DefaultConverters; import net.entropysoft.transmorph.Transmorph; import fr.soleil.archiving.gui.tools.GUIUtilities; import fr.soleil.bensikin.containers.BensikinFrame; -import fr.soleil.bensikin.tools.SpringUtilities; import fr.soleil.comete.awt.util.ColorTool; import fr.soleil.comete.swing.ImageViewer; import fr.soleil.data.container.matrix.DoubleMatrix; @@ -25,18 +25,12 @@ public class ViewImageDialog extends JDialog { private ImageViewer imageViewer; protected JPanel myPanel; private final Object value; - private final String displayFormat; - private final int data_type; - public ViewImageDialog(String name, Object value, String displayFormat, int data_type) { + public ViewImageDialog(String name, Object value) { super(BensikinFrame.getInstance(), name, true); this.value = value; - this.displayFormat = displayFormat; - this.data_type = data_type; initComponents(); - addComponents(); - initLayout(); - initBounds(); + layoutComponents(); this.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); addWindowListener(new WindowAdapter() { @Override @@ -53,48 +47,34 @@ public class ViewImageDialog extends JDialog { } private void initBounds() { - imageViewer.setSize(imageViewer.getWidth() + 200, imageViewer.getHeight() + 200); - int x = BensikinFrame.getInstance().getX() + BensikinFrame.getInstance().getWidth(); - x -= this.getWidth() + 10; - if (x < 0) { - x = 0; - } - int y = BensikinFrame.getInstance().getY() + BensikinFrame.getInstance().getHeight(); - y -= this.getHeight(); - y /= 2; - if (y < 0) { - y = 0; - } - this.setLocation(x, y); + imageViewer.setMinimumSize(new Dimension(imageViewer.getWidth(), imageViewer.getHeight())); + pack(); + setLocationRelativeTo(getParent()); } private void initComponents() { - myPanel = new JPanel(); - GUIUtilities.setObjectBackground(myPanel, GUIUtilities.SNAPSHOT_COLOR); - prepareViewer(); - } - - private void prepareViewer() { imageViewer = new ImageViewer(); + imageViewer.setApplicationId("Bensikin"); imageViewer.setUseMaskManagement(false); imageViewer.setEditable(false); imageViewer.setCometeBackground(ColorTool.getCometeColor(GUIUtilities.getSnapshotColor())); } - private void addComponents() { - myPanel.add(imageViewer); - this.setContentPane(myPanel); - } + private void layoutComponents() { + myPanel = new JPanel(); + GUIUtilities.setObjectBackground(myPanel, GUIUtilities.SNAPSHOT_COLOR); - protected void initLayout() { - myPanel.setLayout(new SpringLayout()); - SpringUtilities.makeCompactGrid(myPanel, myPanel.getComponentCount(), 1, 0, 0, 0, 0, true); + myPanel.setLayout(new BorderLayout()); + myPanel.add(imageViewer, BorderLayout.CENTER); + + this.setContentPane(myPanel); } public void updateContent() { clean(); imageViewer.setData(createMatrice()); - myPanel.add(imageViewer); + myPanel.add(imageViewer, BorderLayout.CENTER); + initBounds(); } private DoubleMatrix createMatrice() {