Class FeatureTable

All Implemented Interfaces:
Styleable, Event­Target, Skinnable

@DefaultProperty("features") public class FeatureTable extends TableView<AbstractFeature>
A view of Feature­Set data organized as a table. The features are specified by a call to set­Features(Feature­Set), which will load the features in a background thread. At first only a limited amount of features are loaded. More features will be loaded only when the user scroll down.

If this view is removed from scene graph, then interrupt() should be called for stopping any loading process that may be under progress.

Limitations

Since:
1.1
"TODO:"
This class does not yet handle Feature­Association­Role. We could handle them with Split­Pane with the main feature table in the upper part and the feature table of selected cell in the bottom part. Bottom part could put tables in a Accordion since there is possibly different tables to show depending on the column of selected cell.
  • Field Details

  • Constructor Details

    • FeatureTable

      public FeatureTable()
      Creates an initially empty table.
    • FeatureTable

      public FeatureTable(FeatureTable other)
      Creates a new table initialized to the same data than the specified table. The two tables will share the same list as long as they are viewing the same data source: as the data loading progresses, new features will appear in both tables.
      Parameters:
      other - the other table from which to get the feature list.
  • Method Details

    • getFeatures

      public final FeatureSet getFeatures()
      Returns the source of features for this table.
      Returns:
      the features shown in this table, or null if none.
      See Also:
    • setFeatures

      public final void setFeatures(FeatureSet features)
      Sets the features to show in this table. This method loads an arbitrary number of features in a background thread. It does not load all features if the feature set is large, unless the user scroll down.

      If the loading of another Feature­Set was in progress at the time this method is invoked, then that previous loading process is cancelled.

      Note: the table content may appear unmodified after this method returns. The modifications will appear at an undetermined amount of time later.

      Parameters:
      features - the features to show in this table, or null if none.
      See Also:
    • interrupt

      public void interrupt()
      If a loading process was under way, interrupts it and closes the feature stream. This method returns immediately; the release of resources happens in a background thread.