private void initRegisteredCommandsListener() {
this.registeredCommands.addListener((ListChangeListener<Command>) c -> {
while (c.next()) {
if (registeredCommands.isEmpty()) {
executable.unbind();
running.unbind();
progress.unbind();
} else {
BooleanBinding executableBinding = constantOf(true);
BooleanBinding runningBinding = constantOf(false);
for (Command registeredCommand : registeredCommands) {
ReadOnlyBooleanProperty currentExecutable = registeredCommand.executableProperty();
ReadOnlyBooleanProperty currentRunning = registeredCommand.runningProperty();
executableBinding = executableBinding.and(currentExecutable);
runningBinding = runningBinding.or(currentRunning);
}
executable.bind(executableBinding);
running.bind(runningBinding);
initProgressBinding();
}
}
});
}
CompositeCommand.java 文件源码
java
阅读 28
收藏 0
点赞 0
评论 0
项目:easyMvvmFx
作者:
评论列表
文章目录