使用GTK TextView撤消

时间:2020-03-05 18:56:57  来源:igfitidea点击:

我正在尝试将所贡献程序的依赖性降至最低,这是一个小型文本编辑器。

GTK Textview似乎没有内置的撤消功能。到目前为止,我还缺少任何参考实现吗?每个人都为自己的TextView小部件编写自己的撤消功能吗?

我将对任何最喜欢python示例代码的示例代码感到满意,因为我们的项目在python中。

解决方案

回答

据我所知,GTK TextView不包含撤消功能。因此,尽管我不熟悉Python的GTK库,但我认为它没有一个。

Ruby-GNOME2项目有一个具有撤消/重做功能的示例文本编辑器。基本上,它们连接到TextView小部件的insert_text和delete_range信号,并将事件和相关数据记录在列表中。

回答

根据我们对依赖的厌恶程度以及所构建的文本编辑器的类型,GtkSourceView会在许多其他事情中添加撤消/重做。如果我们想要它提供的其他一些功能,则非常值得一看。

回答

作为后续:我将gtksourceview的撤消机制移植到了python:http://bitbucket.org/tiax/gtk-textbuffer-with-undo/

用作gtksourceview撤消的直接替代

(此处为OP,但启动板open-id不再起作用)