GTK: как получить ширину и высоту GTK_ICON_SIZE_BUTTON и т. Д.? - PullRequest
1 голос
/ 28 сентября 2011

Мне нужно добавить свои собственные изображения в тему значков GTK, поэтому мне нужно как-то измерить размер в пикселях, который GTK использует для отображения значков различных предопределенных размеров: GTK_ICON_SIZE_BUTTON, GTK_ICON_SIZE_MENU, GTK_ICON_SIZE_DIALOG и т. Д. Руководство по GTKутверждает, что размеры доступны как значение gtk-icon-sizes свойства объекта GtkSetting s.Я выполнил следующий код в последней версии Ubuntu:

#!/usr/bin/env python
import gtk; print(gtk.settings_get_default().get_property('gtk-icon-sizes'))

Но вывод очень короткий:

'panel-menu=22,22;gtk-button=16,16'

Где я могу найти остальные размеры, например для GTK_ICON_SIZE_DIALOG илиGTK_ICON_SIZE_LARGE_TOOLBAR

Ответы [ 2 ]

2 голосов
/ 28 сентября 2011

GTK изменяет размеры значков до необходимого им размера.В соответствии со спецификацией Icon Theme , вы должны сделать как минимум один значок 48x48 и, по желанию, масштабируемый значок SVG.Этого достаточно для отображения любого из этих размеров.

В Руководстве по теме значков танго рекомендуются некоторые дополнительные размеры, которые вы можете сделать, чтобы свести к минимуму частоту появления значкаизменен внутри GTK.

0 голосов
/ 21 мая 2014

Просто добавьте ваши изображения в список значков с помощью gtk_icon_theme_add_builtin_icon, а затем используйте их в качестве именованных значков.

Пример в Vala:

Gdk.Pixbuf pixbuf;
pixbuf = new Gdk.Pixbuf.from_file_at_size(Path.build_filename(AutovalaPluginConstants.DATADIR,"valaplugin","application.svg"),-1,-1);
Gtk.IconTheme.add_builtin_icon("autovala-plugin-executable",-1,pixbuf);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...