TileController.java
package com.example.project.controllers.tileViewControllers;
import com.example.project.models.tiles.Tile;
import javafx.scene.Node;
/**
* Parent class of TileControllers.
* @param <T> tile model type.
*/
public abstract class TileController<T extends Tile>
{
/**
* root ui node.
* @return root ui Node
*/
public abstract Node getRoot();
/**
* Binds tile to the controller as its model.
* @param tile tile to bind.
*/
public abstract void bind(T tile);
protected T model;
/**
* gets the tile model.
* @return model.
*/
public T getModel()
{
return this.model;
}
}