Class JavaFXTreeMap<N,Row,Column>

java.lang.Object
com.treemap.AbstractTreeMap<javafx.scene.Node,N,Row,Column,javafx.scene.paint.Color,javafx.scene.text.Font>
com.treemap.javafx.JavaFXTreeMap<N,Row,Column>
All Implemented Interfaces:
TreeMap<javafx.scene.Node,N,Row,Column,javafx.scene.paint.Color,javafx.scene.text.Font>

public class JavaFXTreeMap<N,Row,Column> extends AbstractTreeMap<javafx.scene.Node,N,Row,Column,javafx.scene.paint.Color,javafx.scene.text.Font>
A facade to the TreeMap model-view-controller (MVC) architecture. In brief, the controller collects user input, the model manipulates application data, and the view presents results to the user. This class wraps a TreeMapModel, TreeMapView, and TreeMapController together. It allows easy loading of the data and customization of the most common settings.

Here is a simplistic example of how to get started with this class within minutes:


 import com.treemap.TreeMap;
 import javax.swing.*;
 import javax.swing.table.DefaultTableModel;
 import javax.swing.table.TableModel;

 public class Hello {
   public static void main(String[] args) {
       // Defining the data, column names and types
       Object[][] data = new Object[][]{
               {"Hello", 12, 3.0},
               {"from", 11, 4.0},
               {"the", 9, 5.0},
               {"TreeMap", 8, 6.0},
               {"World!", 7, 7.0},
       };
       Object[] columnNames = new Object[]{"Name", "Value", "Strength"};
       final Class[] columnTypes = new Class[]{String.class, Integer.class, Double.class};

       // Creating a standard Swing TableModel
       TableModel tableModel = new DefaultTableModel(data, columnNames) {
           public Class<?> getColumnClass(int columnIndex) {
               return columnTypes[columnIndex];
           }
       };

       // Creating the TreeMap
       TreeMap treeMap = new TreeMap(tableModel);

       // Tuning the appearance of the TreeMap
       treeMap.setSizeByName("Value");
       treeMap.setColor(2);
       treeMap.setBackgroundByName("Name");
       treeMap.setLabels();

       // Creating a frame to display
       final JFrame frame = new JFrame("Hello from the TreeMap World!");
       frame.setSize(600, 600);
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       frame.getContentPane().add(treeMap);
       frame.setLocationRelativeTo(null);
       frame.setVisible(true);
   }
 }
 
The code above will produce the following output:

  • Constructor Details

    • JavaFXTreeMap

      public JavaFXTreeMap()
      Creates a TreeMap component with default settings and configuration.
    • JavaFXTreeMap

      public JavaFXTreeMap(TreeMapModel<N,Row,Column,javafx.scene.paint.Color,javafx.scene.text.Font> model)
      Creates a TreeMap component with the its native data model.
      Parameters:
      model - a TreeMapModel
    • JavaFXTreeMap

      public JavaFXTreeMap(com.macrofocus.molap.dataframe.DataFrame<Row,Column,?> dataFrame)
      Creates a TreeMap component with the specified Swing TableModel.
      Parameters:
      dataFrame - a DataFrame
  • Method Details

    • setLicenseKey

      public static void setLicenseKey(String username, String key)
      Register the license key that legally entitle the use of TreeMap. This should be called prior to the first instantiation of this component.
      Parameters:
      username - the user name
      key - the license key
    • createTreeMapModel

      protected TreeMapModel<N,Row,Column,javafx.scene.paint.Color,javafx.scene.text.Font> createTreeMapModel(com.macrofocus.molap.dataframe.DataFrame<Row,Column,?> dataFrame)
    • createView

      protected TreeMapView<javafx.scene.Node,N,Row,Column,javafx.scene.paint.Color,javafx.scene.text.Font> createView()
    • createController

      protected TreeMapController<javafx.scene.Node,N,Row,Column,javafx.scene.paint.Color,javafx.scene.text.Font> createController(TreeMapView<javafx.scene.Node,N,Row,Column,javafx.scene.paint.Color,javafx.scene.text.Font> view)
    • getNativeComponent

      public javafx.scene.Node getNativeComponent()