FXtras 议程:为个别约会而不是整个议程设置 allowDragging 属性

FXtras agenda: set allowDragging property for individual appointments instead of whole agenda

我正在使用来自 http://jfxtras.org/ 的 FXtras(版本 8.0-r5)议程,我在其中定义了两种类型的约会:个人(组 1)和共享(组 2)。用户可以编辑个人约会的时间,但不能编辑日历上的共享约会;所以我想在日历上将 group1 约会设置为可拖动,将 group2 设置为不可拖动。

我知道议程 class (http://jfxtras.org/doc/8.0/jfxtras-agenda/jfxtras/scene/control/agenda/Agenda.html) 中的 allowDragging 属性可以实现允许和限制拖动的技巧,但这仅适用于整个议程,不能分别为特定的约会组设置。

我已尝试查看议程 class 的文档,但找不到可以为个人约会设置的可拖动 属性。为了解决这个问题,我尝试了以下 hack:

  1. 设置整个议程不可拖动
  2. 选择个人约会(group1)时,将整个议程设置为可拖动。
  3. 在议程发生任何变化时,再次将整个议程设置为不可拖动。

默认情况下,我有一个不可拖动的议程,它允许用户移动约会,但 只有 如果他们先点击个人约会。在他们移动它之后,议程将再次锁定为不可拖动。这样做的问题是用户可能首先单击个人(group1)约会,然后继续移动共享约会(group2)。所以它不太理想:(

JFxtras 是否有任何功能允许为个别约会指定可拖动的 属性,而不是整个议程?

我发布了 JFXtras 8.0-r7-SNAPSHOT 和 9.0-r2-SNAPSHOT,其中每个约会都有一个可拖动的 属性