我有一个使用 gtk+-3.x 和 gtksourceview3 用 C 语言编写的文本编辑器。 我想扩展功能以包括从命令行打开文本文件并将该文件中的文本添加到先前打开的编辑器中的新缓冲区的功能。
所以问题是,我如何访问此文本? 我可以将其添加到缓冲区,滚动...这不是问题所在。 谢谢。
我假设您的问题是标题中提到的:获取已经运行的 GTK 应用程序实例以从命令行执行某些操作。
GtkApplication及其基类GApplication将为您提供所需的工具:它允许您定义新实例可以在原始实例上调用的操作(使用D-Bus,但这是一个实现细节)。对于您的用例,请查看 GApplication 中已经定义的"打开"操作(请参阅示例)。
如果你使用的是没有 GtkApplication 的旧版本的 GTK+,你可以改用 libunique ——API 大致相同。