我有一个 StytedText 对象,它可能承载数十兆字节的文本和数十万个 StyleRange 的缓冲区。
显然,这根本无法扩展。我的问题是,实现按需(某种)版本的 StyledText 的最简单方法是什么,它只会动态生成它在时间 t 需要的 StyleRange 对象(以覆盖该可见区域)?
- 我可以通过使用自定义 LineStyleListener 来使用 SWT,文档似乎建议吗?
- JFace 是否已经提供了类似的功能?(即:文本视图支持丰富的字符范围样式并提供按需呈现视图的方式)
- 我应该使用另一个 UI 库吗?
编辑:我实现了 LineStyleListener 并得到了接近我想要的东西。但这让我想知道......为什么默认实现(org.eclipse.swt.custom.DefaultLineStyler)不支持这种按需方案。仅启用当前视图中的 StyleRanges 是相当简单的。那么,我在这里遗漏了一些重要的东西吗?我忽略的按需样式是否有一个主要的、令人讨厌的副作用?