private void setupModsListView() {
listViewMods.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
listViewMods.setCellFactory(CheckBoxListCell.forListView(new Callback<ModRow, ObservableValue<Boolean>>() {
@Override
public ObservableValue<Boolean> call(ModRow item) {
return item.onProperty();
}
}));
// Set up filtered data
FilteredList<ModRow> filteredModsByText = new FilteredList<>(modList.getMods(), p -> true);
FilteredList<ModRow> filteredModsByStatus = new FilteredList<>(filteredModsByText, p -> true);
// filter with name
textFieldModsFilter.textProperty().addListener((observable, oldValue, newValue) -> {
filteredModsByText.setPredicate(modRow -> {
// If filter text is empty, display all persons.
if (newValue == null || newValue.isEmpty()) {
return true;
}
// Compare first name and last name of every modRow with filter text.
String lowerCaseFilter = newValue.toLowerCase();
if (modRow.getFile() != null && modRow.getFile().getName().toLowerCase().contains(lowerCaseFilter)) {
return true; // Filter matches name.
}
return false; // Does not match.
});
});
toggleGrooupMods.selectedToggleProperty().addListener(new ChangeListener<Toggle>() {
public void changed(ObservableValue<? extends Toggle> ov,
Toggle old_toggle, Toggle new_toggle) {
if (toggleGrooupMods.getSelectedToggle() != null) {
System.out.println(toggleGrooupMods.getSelectedToggle());
if (radioButtonModsAll.isSelected()) {
filteredModsByStatus.setPredicate(row -> {
return true;
});
} else if (radioButtonModsEnabled.isSelected()) {
filteredModsByStatus.setPredicate(row -> {
return row.isChecked();
});
} else if (radioButtonModsDisabled.isSelected()) {
filteredModsByStatus.setPredicate(row -> {
return !row.isChecked();
});
} else {
log.error("what?");
}
}
}
});
listViewMods.setItems(filteredModsByStatus);
modList.getEnabled().addListener(new SetChangeListener<ModRow>() {
@Override
public void onChanged(Change<? extends ModRow> c) {
log.debug("modified: c=" + c);
labelEanbledModsCount.setText(ResStrings.get("label.enabled.mods") + ": " + modList.getEnabled().size());
}
});
loadModList();
}
Controller.java 文件源码
java
阅读 23
收藏 0
点赞 0
评论 0
项目:minc-launcher
作者:
评论列表
文章目录