Author: echatellier Date: 2010-12-08 17:13:52 +0100 (Wed, 08 Dec 2010) New Revision: 301 Url: http://nuiton.org/repositories/revision/nuiton-matrix/301 Log: Check matrix with more than 2 dim count. Rename renderer : chart. Added: trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/renderer/MatrixChartRenderer.java Removed: trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/renderer/JFreeChartRenderer.java Modified: trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/MatrixViewerPanel.java trunk/nuiton-matrix-gui/src/main/resources/i18n/nuiton-matrix-gui_en_GB.properties trunk/nuiton-matrix-gui/src/main/resources/i18n/nuiton-matrix-gui_fr_FR.properties trunk/nuiton-matrix-gui/src/test/java/org/nuiton/math/matrix/viewer/MatrixViewerPanelTest.java Modified: trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/MatrixViewerPanel.java =================================================================== --- trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/MatrixViewerPanel.java 2010-12-08 15:42:15 UTC (rev 300) +++ trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/MatrixViewerPanel.java 2010-12-08 16:13:52 UTC (rev 301) @@ -45,6 +45,7 @@ import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JList; +import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JRadioButton; import javax.swing.JSplitPane; @@ -371,9 +372,16 @@ // get matrix to display MatrixND matrix = dimensionPanel.getModifiedMatrix(); - // renderer matrix - Component component = renderer.getPanel(matrix); - setRenderingComponent(component); + if (matrix.getDimCount() > 2) { + // matrice superieur a 2 dimensions non geree!! + JOptionPane.showMessageDialog(this, _("nuitonmatrix.viewer.matrix.more.2d"), + _("nuitonmatrix.error"), JOptionPane.ERROR_MESSAGE); + } + else { + // renderer matrix + Component component = renderer.getPanel(matrix); + setRenderingComponent(component); + } } } Deleted: trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/renderer/JFreeChartRenderer.java =================================================================== --- trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/renderer/JFreeChartRenderer.java 2010-12-08 15:42:15 UTC (rev 300) +++ trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/renderer/JFreeChartRenderer.java 2010-12-08 16:13:52 UTC (rev 301) @@ -1,84 +0,0 @@ -/* - * #%L - * - * - * $Id$ - * $HeadURL$ - * %% - * Copyright (C) 2010 Codelutin, Chatellier Eric - * %% - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License as - * published by the Free Software Foundation, either version 3 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Lesser Public License for more details. - * - * You should have received a copy of the GNU General Lesser Public - * License along with this program. If not, see - * <http://www.gnu.org/licenses/lgpl-3.0.html>. - * #L% - */ - -package org.nuiton.math.matrix.viewer.renderer; - -import static org.nuiton.i18n.I18n._; - -import java.awt.BorderLayout; -import java.awt.Component; -import java.awt.event.ItemEvent; -import java.awt.event.ItemListener; - -import javax.swing.Icon; -import javax.swing.JComboBox; -import javax.swing.JPanel; - -import org.jfree.chart.JFreeChart; -import org.jfree.chart.axis.CategoryAxis; -import org.jfree.chart.plot.CategoryPlot; -import org.jfree.chart.renderer.AbstractRenderer; -import org.nuiton.math.matrix.MatrixND; -import org.nuiton.math.matrix.viewer.MatrixRenderer; -import org.nuiton.math.matrix.viewer.renderer.jfreechart.GraphRendererComboBoxModel; -import org.nuiton.math.matrix.viewer.renderer.jfreechart.JFreeChartPanel; -import org.nuiton.util.Resource; - -/** - * Matrix jfreechart renderer - * - * @author chatellier - * @version $Revision$ - * - * Last update : $Date$ - * By : $Author$ - */ -public class JFreeChartRenderer implements MatrixRenderer { - - /* - * @see org.nuiton.math.matrix.viewer.MatrixRenderer#getPanel(org.nuiton.math.matrix.MatrixND) - */ - @Override - public Component getPanel(MatrixND matrix) { - JFreeChartPanel panel = new JFreeChartPanel(matrix); - return panel; - } - /* - * @see org.nuiton.math.matrix.viewer.MatrixRenderer#getIcon() - */ - @Override - public Icon getIcon() { - return Resource.getIcon("/icons/chart_curve.png"); - } - - /* - * @see org.nuiton.math.matrix.viewer.MatrixRenderer#getName() - */ - @Override - public String getName() { - return _("nuitonmatrix.viewer.renderer.jfreechart"); - } - -} Copied: trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/renderer/MatrixChartRenderer.java (from rev 299, trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/renderer/JFreeChartRenderer.java) =================================================================== --- trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/renderer/MatrixChartRenderer.java (rev 0) +++ trunk/nuiton-matrix-gui/src/main/java/org/nuiton/math/matrix/viewer/renderer/MatrixChartRenderer.java 2010-12-08 16:13:52 UTC (rev 301) @@ -0,0 +1,74 @@ +/* + * #%L + * + * + * $Id$ + * $HeadURL$ + * %% + * Copyright (C) 2010 Codelutin, Chatellier Eric + * %% + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as + * published by the Free Software Foundation, either version 3 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Lesser Public License for more details. + * + * You should have received a copy of the GNU General Lesser Public + * License along with this program. If not, see + * <http://www.gnu.org/licenses/lgpl-3.0.html>. + * #L% + */ + +package org.nuiton.math.matrix.viewer.renderer; + +import static org.nuiton.i18n.I18n._; + +import java.awt.Component; + +import javax.swing.Icon; + +import org.nuiton.math.matrix.MatrixND; +import org.nuiton.math.matrix.viewer.MatrixRenderer; +import org.nuiton.math.matrix.viewer.renderer.jfreechart.JFreeChartPanel; +import org.nuiton.util.Resource; + +/** + * Matrix chart renderer (based on jfreechart). + * + * @author chatellier + * @version $Revision$ + * + * Last update : $Date$ + * By : $Author$ + */ +public class MatrixChartRenderer implements MatrixRenderer { + + /* + * @see org.nuiton.math.matrix.viewer.MatrixRenderer#getPanel(org.nuiton.math.matrix.MatrixND) + */ + @Override + public Component getPanel(MatrixND matrix) { + JFreeChartPanel panel = new JFreeChartPanel(matrix); + return panel; + } + /* + * @see org.nuiton.math.matrix.viewer.MatrixRenderer#getIcon() + */ + @Override + public Icon getIcon() { + return Resource.getIcon("/icons/chart_curve.png"); + } + + /* + * @see org.nuiton.math.matrix.viewer.MatrixRenderer#getName() + */ + @Override + public String getName() { + return _("nuitonmatrix.viewer.renderer.chart"); + } + +} Modified: trunk/nuiton-matrix-gui/src/main/resources/i18n/nuiton-matrix-gui_en_GB.properties =================================================================== --- trunk/nuiton-matrix-gui/src/main/resources/i18n/nuiton-matrix-gui_en_GB.properties 2010-12-08 15:42:15 UTC (rev 300) +++ trunk/nuiton-matrix-gui/src/main/resources/i18n/nuiton-matrix-gui_en_GB.properties 2010-12-08 16:13:52 UTC (rev 301) @@ -25,5 +25,8 @@ nuitonmatrix.viewer.graphcomborender.min.max=Min/max rendering nuitonmatrix.viewer.graphcomborender.surface=Area rendering nuitonmatrix.viewer.graphcomborender.surface.stacked=Stacked area rendering +nuitonmatrix.viewer.matrix.more.2d=Matrix dimensions count over 2 \!\nChoose less elements or apply sum operator. +nuitonmatrix.viewer.renderer.chart=Chart nuitonmatrix.viewer.renderer.data=Data +nuitonmatrix.viewer.renderer.panel=Matrix nuitonmatrix.viewer.sum=Sum Modified: trunk/nuiton-matrix-gui/src/main/resources/i18n/nuiton-matrix-gui_fr_FR.properties =================================================================== --- trunk/nuiton-matrix-gui/src/main/resources/i18n/nuiton-matrix-gui_fr_FR.properties 2010-12-08 15:42:15 UTC (rev 300) +++ trunk/nuiton-matrix-gui/src/main/resources/i18n/nuiton-matrix-gui_fr_FR.properties 2010-12-08 16:13:52 UTC (rev 301) @@ -25,5 +25,8 @@ nuitonmatrix.viewer.graphcomborender.min.max=Rendu en MinMax nuitonmatrix.viewer.graphcomborender.surface=Rendu en aire nuitonmatrix.viewer.graphcomborender.surface.stacked=Rendu en aires empil\u00E9es +nuitonmatrix.viewer.matrix.more.2d=Matrice de plus de 2 dimensions \!\nS\u00E9lectionnez moins d'\u00E9l\u00E9ments ou utilisez l'op\u00E9rateur somme. +nuitonmatrix.viewer.renderer.chart=Graphique nuitonmatrix.viewer.renderer.data=Donn\u00E9es +nuitonmatrix.viewer.renderer.panel=Matrice nuitonmatrix.viewer.sum=Somme Modified: trunk/nuiton-matrix-gui/src/test/java/org/nuiton/math/matrix/viewer/MatrixViewerPanelTest.java =================================================================== --- trunk/nuiton-matrix-gui/src/test/java/org/nuiton/math/matrix/viewer/MatrixViewerPanelTest.java 2010-12-08 15:42:15 UTC (rev 300) +++ trunk/nuiton-matrix-gui/src/test/java/org/nuiton/math/matrix/viewer/MatrixViewerPanelTest.java 2010-12-08 16:13:52 UTC (rev 301) @@ -34,7 +34,7 @@ import org.nuiton.math.matrix.MatrixFactory; import org.nuiton.math.matrix.MatrixHelper; import org.nuiton.math.matrix.MatrixND; -import org.nuiton.math.matrix.viewer.renderer.JFreeChartRenderer; +import org.nuiton.math.matrix.viewer.renderer.MatrixChartRenderer; import org.nuiton.math.matrix.viewer.renderer.MatrixInfoTableRenderer; /** @@ -84,7 +84,7 @@ MatrixND testMatrix = getTestMatrix(); panel.addMatrix(testMatrix, testMatrix); panel.addMatrixRenderer(new MatrixInfoTableRenderer()); - panel.addMatrixRenderer(new JFreeChartRenderer()); + panel.addMatrixRenderer(new MatrixChartRenderer()); frame.add(panel); frame.pack();