mirror of
https://github.com/DSheirer/sdrtrunk.git
synced 2026-11-15 01:57:39 -05:00
Add Alias List column to the playlist table (#2436)
Co-authored-by: tsinmw <tsinmw2@gmail.com>
This commit is contained in:
@@ -440,7 +440,7 @@ public class ChannelEditor extends SplitPane implements IFilterProcessor, IAlias
|
|||||||
|
|
||||||
TableColumn<Channel,Boolean> autoStartColumn = new TableColumn<>("Auto-Start");
|
TableColumn<Channel,Boolean> autoStartColumn = new TableColumn<>("Auto-Start");
|
||||||
autoStartColumn.setCellValueFactory(new PropertyValueFactory<>("autoStart"));
|
autoStartColumn.setCellValueFactory(new PropertyValueFactory<>("autoStart"));
|
||||||
autoStartColumn.setPrefWidth(95);
|
autoStartColumn.setPrefWidth(85);
|
||||||
autoStartColumn.setCellFactory(param -> {
|
autoStartColumn.setCellFactory(param -> {
|
||||||
TableCell<Channel,Boolean> tableCell = new TableCell<>()
|
TableCell<Channel,Boolean> tableCell = new TableCell<>()
|
||||||
{
|
{
|
||||||
@@ -476,7 +476,7 @@ public class ChannelEditor extends SplitPane implements IFilterProcessor, IAlias
|
|||||||
|
|
||||||
TableColumn nameColumn = new TableColumn("Name");
|
TableColumn nameColumn = new TableColumn("Name");
|
||||||
nameColumn.setCellValueFactory(new PropertyValueFactory<>("name"));
|
nameColumn.setCellValueFactory(new PropertyValueFactory<>("name"));
|
||||||
nameColumn.setPrefWidth(200);
|
nameColumn.setPrefWidth(175);
|
||||||
|
|
||||||
TableColumn frequencyColumn = new TableColumn("Frequency");
|
TableColumn frequencyColumn = new TableColumn("Frequency");
|
||||||
frequencyColumn.setCellValueFactory(new FrequencyCellValueFactory());
|
frequencyColumn.setCellValueFactory(new FrequencyCellValueFactory());
|
||||||
@@ -486,8 +486,12 @@ public class ChannelEditor extends SplitPane implements IFilterProcessor, IAlias
|
|||||||
protocolColumn.setCellValueFactory(new ProtocolCellValueFactory());
|
protocolColumn.setCellValueFactory(new ProtocolCellValueFactory());
|
||||||
protocolColumn.setPrefWidth(100);
|
protocolColumn.setPrefWidth(100);
|
||||||
|
|
||||||
|
TableColumn aliaslistColumn = new TableColumn("Alias List");
|
||||||
|
aliaslistColumn.setCellValueFactory(new AliasListCellValueFactory());
|
||||||
|
aliaslistColumn.setPrefWidth(150);
|
||||||
|
|
||||||
mChannelTableView.getColumns().addAll(systemColumn, siteColumn, nameColumn, frequencyColumn, protocolColumn,
|
mChannelTableView.getColumns().addAll(systemColumn, siteColumn, nameColumn, frequencyColumn, protocolColumn,
|
||||||
playingColumn, autoStartColumn);
|
playingColumn, autoStartColumn, aliaslistColumn);
|
||||||
mChannelTableView.setPlaceholder(getPlaceholderLabel());
|
mChannelTableView.setPlaceholder(getPlaceholderLabel());
|
||||||
|
|
||||||
//Sorting and filtering for the table
|
//Sorting and filtering for the table
|
||||||
@@ -712,6 +716,36 @@ public class ChannelEditor extends SplitPane implements IFilterProcessor, IAlias
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Alias List value factory
|
||||||
|
*/
|
||||||
|
public class AliasListCellValueFactory implements Callback<TableColumn.CellDataFeatures<Channel, String>,
|
||||||
|
ObservableValue<String>>
|
||||||
|
{
|
||||||
|
|
||||||
|
private SimpleStringProperty mAliasList = new SimpleStringProperty();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ObservableValue<String> call(TableColumn.CellDataFeatures<Channel, String> param)
|
||||||
|
{
|
||||||
|
Channel alist = param.getValue();
|
||||||
|
|
||||||
|
if(alist != null)
|
||||||
|
{
|
||||||
|
mAliasList.set((alist != null && alist.getAliasListName() != null)
|
||||||
|
? alist.getAliasListName().toString()
|
||||||
|
: null);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
mAliasList.set(null);
|
||||||
|
}
|
||||||
|
|
||||||
|
return mAliasList;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Filter predicate for a filtered channel list
|
* Filter predicate for a filtered channel list
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user