问题标签 [gobject-introspection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
22264 浏览

cygwin - pygobject-2.28.6 不会配置:找不到包'gobject-introspection-1.0',我该如何解决?

我正在尝试让 pygobject-2.28.6 在 cygwin 中编译(存储库中的版本是 2.28.4,它有一些问题)。这是 ./configure 的尾部:

我安装了 gobject-introspection 1.34.2-3。如此处所示:

和这里

我尝试在 configure = 中将 GI_CFLAGS 和 GI_LIBS 设置为 /lib/ 和 /usr/lib/(甚至 /usr/share/),但无济于事。我还能做些什么来尝试解决这个问题?感谢您的时间!

0 投票
2 回答
1173 浏览

binding - 如何使用 GObjectIntrospection 和 vapigen 告诉 vala 使用哪些 getter 和 setter?

我编写了一个 C 库并使用 vapigen 为其创建 vapis。在生成的文件中,定义了一些属性,例如:

访问器方法(我从 C 中使用并且只返回属性的值)复制了这个“获取”和“设置”功能:

我想做的是告诉 Vala 在 Vala 代码使用符号获取或设置属性时调用我的方法:

而不是像现在这样将其转换为g_object_get/调用。g_object_set

有没有办法做到这一点?

我已经在 vala-devel 和 vala 邮件列表中发布了这个,但没有人回答。

编辑:我使用 gobject-introspection 和 vapigen 和 autotools 来自动生成 vapi 文件,而不用担心 API 更改,所以重新定义 Vala 中的类来做到这一点对我来说不是一个选择,但我可以使用gobject-introspection 注释元数据文件。

使用解决方案编辑:所选答案中的注释包含我的问题的解决方案,但基本上我所做的是使用自定义 Vala 文件并使用元数据文件跳过使用的属性。

元数据文件中的相关内容:

在自定义 Vala 文件中:

0 投票
1 回答
901 浏览

python - 从 ctype.c_void_pointer 创建一个对象

我在 python 中执行以下操作

我正在尝试使用 ctypes 访问一个不可自省的方法,到目前为止,我成功地创建了一个指向 gtk/gobject 的指针。然而,我试图转换的 js 实例不应该是指针,而是对象本身,或类似的东西。==> WebKitWebFrame *frame, JSContextRef js(不是指针) 我该怎么做。现在它只是段错误

0 投票
2 回答
248 浏览

programming-languages - 跨多种语言的 GObject 内省

旧 PyGTK 2.8 绑定的 Wiki 页面指出,一个用 Python 正确编写的对象

也应该可以很容易地从 C 代码甚至其他语言绑定中使用。

但是 PyGTK 已经过时了,应该用 PyGObject 代替。是否也可以将语言与新的基于内省的绑定混合和匹配?例如,我可以在 Vala 中编写一个 gobject 类,用 Python 扩展它并在 Java 中使用结果吗?

0 投票
2 回答
288 浏览

plugins - libpeas 支持哪些语言?

libpeas 插件的插件描述包含一行,用于确定Loader插件所用的编程语言。似乎文档不包括可用语言的列表。检查项目的 git 存储库,可以找到顶级目录“Loaders” ,其中列出了

  • C,
  • gjs,
  • 种子和
  • Python。

也不清楚预期的 python 版本是 2 还是 3。

到目前为止,相关gobject 内省为.

列出的 4 个都是可用的加载器吗?或者是否存在提供更多加载器的外部项目?

0 投票
1 回答
475 浏览

python - 从 python 使用 GLib 时,g_log_set_handler 的 python 等效项是什么

我想在我的 python glib 项目中设置日志级别。g_log_set_handler()因此,当我通过 python 使用 GLib 时,我正在寻找等价物gi.repository

GLib.log_set_handler似乎缺少预期的功能。这是我的 python shell 的示例输出:

可以看到,从自省存储库中找到了 GLib,并且存在 log_set_fatal_mask 函数(相当于g_log_set_fatal_mask)。但是log_set_handler没有找到。

为什么会这样,我怎样才能从 python 中正确设置我的日志级别?

0 投票
1 回答
596 浏览

python - 将 gpointer 与 Python 和 GObject 内省一起使用

我正在学习 Python 和 Gtk 3,使用 GObject 自省。我已经做了一些示例,我开始了解它是如何工作的。但是有一件事我不明白,我怎样才能传递一个 gpointer 参数?

我尝试使用一个接收缓冲区(使用 gpointer)的函数,我总是以这条消息结束:

无法将属性“像素”的值从 LP_c_ubyte 转换为 gpointer

(LP_c_ubyte 是我最后一次尝试,但我已经证明了很多类型)

0 投票
1 回答
225 浏览

python - python pygir-ctypes 和 gi.repository 的区别

我不明白 2 个 python gtk3 包的区别和要求。

一个是pypm安装的activestate pygir-ctypes包,另一个是标准的linux(我用的是Ubuntu)python gobject-introspection

如果您运行基于 linux 的操作系统,则https://python-gtk-3-tutorial.readthedocs.org/en/latest/install.html上的 gobject-introspection 文档非常好,但在 Windows 上,替代方案似乎是 activestate 的 pygir -ctypes 实现,但文档有限。

我有一个使用 GTK3 python gobject-introspection 的小 GUI,从

pygir-ctypes 以

我的假设是目前它是相同的,但软件包对其安装有不同的要求。在 Windows 上,网上有几条评论只支持有限的 Python GTK3(通过 gobject-introspection)支持,目前没有任何东西真正可用,但是这个 pygir-ctypes 看起来很有希望。我想在 Windows 上运行我的 GUI。

有人可以解释其中的区别吗?

0 投票
1 回答
379 浏览

python - Gtk3 中的 pixbuf.subpixbuf 替代品

我有一个 GTK+ 2 应用程序,我正在移植到 GTK+ 3。
我有一个功能可以剪切图像的某些部分 -

pb是传递给函数的 pixbuf。返回 scaled_pb。
所以我的问题是 GTK3 中 pb.subpixbuf 的替代品是什么?我的应用程序现在没有运行,它告诉 Pixbuf 对象没有 subpixbuf 属性。

先感谢您。

0 投票
1 回答
568 浏览

python - 向 ListStore 添加一行不起作用 - 荒谬的异常

首先是代码:

每次我在 ListStore 对象上执行 .append() 时都会收到这样的错误:

当然 ListStore 对象是 (str, str, str, boolean) 类型。错误信息很荒谬,谁能告诉发生了什么?