开源改变世界!!

HAL gladevcp Iconview 小部件 – 编码错误 #422

推推 grbl 2年前 (2023-01-29) 223次浏览
关闭
fairnorth 打开了这个问题 2018 年 3 月 19 日 · 4条评论
关闭

HAL gladevcp Iconview 小部件 – 编码错误#422

fairnorth 打开了这个问题 2018 年 3 月 19 日 · 4条评论

注释

HAL gladevcp Iconview 小部件 - 编码错误 #422

小事情会让我有点烦恼,因为你永远不知道这些小事情以后是否会导致其他更严重的问题。我决定看看为什么我的 gmoccapy 总是在启动时报告错误,Invalid icon size 48。这不是什么大问题,但仍然是一个需要修复的问题。造成这种情况的原因之一是 Hal GladeVCP iconview.py 有一个编程错误,因此不仅仅是 gmoccapy 报告可以在其打印日志中显示此错误。

这是我对 Hal GladeVCP iconview.py 问题的描述和一个简单的修复建议。

iconview.py 有 9 行,例如:

“image.set_from_stock(gtk.STOCK_GOTO_TOP,48)”

48应该是指显示的文件夹图标所需的大小。这不能通过在这些行中输入 48 来完成。
在这些行中,size 正在寻找定义了图标且“不是尺寸编号”的“名称”。

根据 gtk.Image 的 gtk Class Reference,除非进行自定义,否则正常允许的事情是:

gtk.ICON_SIZE_MENU
gtk.ICON_SIZE_SMALL_TOOLBAR
gtk.ICON_SIZE_LARGE_TOOLBAR
gtk.ICON_SIZE_BUTTON
gtk.ICON_SIZE_DND
gtk.ICON_SIZE_DIALOG。

以下是我对 Hal GladeVCP iconview.py 小部件的建议更改:

保留这一行:
self.icon_size = 48 # 每个文件夹的实际显示大小 – 必须符合命名项目的标准大小定义。在此处选择错误大小的错误将显示错误的文件夹颜色,因为该大小不太可能在命名的 STOCK 项目定义中定义为可能。

好的,现在建议更改:

添加这一行:
stksize = gtk.ICON_SIZE_MENU # GTK 标准大小名称 # 随机选择

将 9 行从列表更改为:
image.set_from_stock(gtk.STOCK_HOME,48)
image.set_from_stock(gtk.STOCK_HOME, stksize)

image.set_from_stock(gtk.STOCK_GOTO_TOP,48)
image.set_from_stock(gtk.STOCK_GOTO_TOP,stksize)

法师.set_from_stock(gtk.STOCK_GO_BACK,48)
image.set_from_stock(gtk.STOCK_GO_BACK, stksize)

image.set_from_stock(gtk.STOCK_GO_FORWARD,48)
image.set_from_stock(gtk.STOCK_GO_FORWARD,stksize)

#image.set_from_stock(gtk.STOCK_GO_DOWN,48)
#image.set_from_stock(gtk.STOCK_GO_DOWN,stksize)

#image.set_from_stock(gtk.STOCK_GO_UP,48)
#image.set_from_stock(gtk.STOCK_GO_UP,stksize)

image.set_from_stock(gtk.STOCK_JUMP_TO,48)
image.set_from_stock(gtk.STOCK_JUMP_TO,stksize)

image.set_from_stock(gtk.STOCK_OK,48)
image.set_from_stock(gtk.STOCK_OK,stksize)

image.set_from_stock(gtk.STOCK_STOP,48)
image.set_from_stock(gtk.STOCK_STOP,stksize)

这消除了此小部件生成的无效图标大小 48 错误消息。
我过去至少从另一个文件中看到过类似的错误,但记不起它的名字了。

HAL gladevcp Iconview 小部件 - 编码错误 #422
合作者

这是给你的吗,克里斯?

HAL gladevcp Iconview 小部件 - 编码错误 #422
贡献者
库尔特雅各布森 评论了 2018 年 3 月 19 日  

@fairnorth我记得invalid icon size在 wheezy 上运行 Gmoccapy 时收到警告,但在运行随 LCNC 2.7.12 一起运行的 Gmoccapy 1.5.9 时我没有注意到它们。您运行的是什么操作系统以及 LCNC 和 Gmoccapy 的版本?

自从我使用 IconView 文件选择器以来已经有很长一段时间了,但是 IIRC 您可以通过更改 INT 值在 glade 编辑器中设置图标大小,我假设它保存在self.icon_size. 您建议的更改对该能力有任何影响吗?

我很确定@gmoccapy是 iconview.py 的作者,并且由于 Gmoccapy 是使用图标选择器的主要场所,因此他最好研究一下。

HAL gladevcp Iconview 小部件 - 编码错误 #422

啊,现在我看到了 GtkWarnings,我看得不够仔细!我认为 GtkWarnings 在终端中显示为粗体和黄色,但我想这仅适用于 Gtk3。我被宠坏了😁

KurtJacobson 向 KurtJacobson/linuxcnc 添加了引用此问题的提交 2018 年 3 月 20 日

HAL gladevcp Iconview 小部件 - 编码错误 #422
合作者

修复推送到 master – 如果仍然存在未涵盖的问题,请重新打开。谢谢大家。