Author: echatellier Date: 2011-04-04 15:09:43 +0200 (Mon, 04 Apr 2011) New Revision: 345 Url: http://nuiton.org/repositories/revision/nuiton-matrix/345 Log: Add doc about matrix panel viewer. Added: trunk/src/site/resources/ trunk/src/site/resources/images/ trunk/src/site/resources/images/matrixpanelviewer.png trunk/src/site/rst/gui-matrixpanelviewer.rst Modified: trunk/src/site/site_fr.xml Added: trunk/src/site/resources/images/matrixpanelviewer.png =================================================================== (Binary files differ) Property changes on: trunk/src/site/resources/images/matrixpanelviewer.png ___________________________________________________________________ Added: svn:mime-type + application/octet-stream Added: trunk/src/site/rst/gui-matrixpanelviewer.rst =================================================================== --- trunk/src/site/rst/gui-matrixpanelviewer.rst (rev 0) +++ trunk/src/site/rst/gui-matrixpanelviewer.rst 2011-04-04 13:09:43 UTC (rev 345) @@ -0,0 +1,89 @@ +MatrixPanelViewer component +=========================== + +This component goals are : + - display a list of matrix to manipulate + - display dimension of selected matrix with semantic + - render selected matrix with selected dimensions + +.. image:: images/matrixpanelviewer.png + + +Simple matrix viewing +--------------------- + +This component can be used to display only one matrix. + +Use following code :: + + MatrixViewerPanel matrixViewerPanel = new MatrixViewerPanel(); + matrixViewerPanel.setMatrix(myMatrix); + +Then ``MatrixViewerPanel`` is a simple swing component, you can place it +wherever you want. + + +Display a list of matrix +------------------------ + +You can display multiples matrix in a ``MatrixViewerPanel``. User will have +to select it in a ``ComboBox``. + +For performance reason, instantiating multiples huge matrix at init time can't +be done. The matrix list can only contains matrix name, and matrix data +will be loaded with a provider when user select it. + +Code example:: + + MatrixViewerPanel matrixViewerPanel = new MatrixViewerPanel(); + matrixViewerPanel.setComboBoxVisible(true); + matrixViewerPanel.addMatrix("myMatrix1"); + matrixViewerPanel.addMatrix("myMatrix2"); + matrixViewerPanel.setMatrixLabelProvider(new MyMatrixLabelProvider()); + + +Use various renderer +-------------------- + +MatrixPanelViewer can render matrix in various way, including your own (just +implements ``MatrixRenderer`` interface) :: + + MatrixViewerPanel matrixViewerPanel = new MatrixViewerPanel(); + matrixViewerPanel.addMatrixRenderer(new MatrixChartRenderer()); + matrixViewerPanel.addMatrixRenderer(new MatrixInfoTableRenderer()); + matrixViewerPanel.addMatrixRenderer(new MyCustomMatrixRenderer()); + + +Use matrix filter +----------------- + +You can also add a matrix filter to modify matrix just after dimension +selection and before applying all renderers. + +For example, you can use a filter to remove non significant values +from a matrix (0 at each bounds). + +To do so:: + + MatrixViewerPanel matrixViewerPanel = new MatrixViewerPanel(); + matrixViewerPanel.addMatrixFilter(new MyCustomFilter()); + + +Use matrix proxy and data provider +---------------------------------- + +When matrix contains huge set of data, render then is not possible. Do solve +this, you can use a matrix "empty" just filled with semantics for each +dimension. At rendering phase, ``MatrixViewerPanel`` will call getSubMatrix() +with selected semantics on proxy witch is implemented by a call to +``MatrixProvider`` to get filled data. + +Example:: + + MatrixND matrix = MatrixFactory.getInstance().createProxy("myMatrixName, + new List<?>[] { semantic1 , semantic2, semantic3, semantic4}, + new String[] {"semantic1", "semantic2", "semantic3", "semantic4"}, + new MyMatrixProvider()); + MatrixViewerPanel matrixViewerPanel = new MatrixViewerPanel(); + matrixViewerPanel.setMatrix(matrix); + Modified: trunk/src/site/site_fr.xml =================================================================== --- trunk/src/site/site_fr.xml 2011-03-21 14:45:21 UTC (rev 344) +++ trunk/src/site/site_fr.xml 2011-04-04 13:09:43 UTC (rev 345) @@ -45,6 +45,7 @@ <menu name="Utilisateur"> <item href="index.html" name="Accueil"/> + <item href="gui-matrixpanelviewer.png" name="Matrix panel viewer"/> </menu> <menu name="Développeur">