LINUX.ORG.RU

[glade] Присвоение метке значения строковой переменной

 


0

0

Здесь, похоже, на мой вопрос не ответят, поэтому создам для него новую тему.

Возможно ли в созданном при помощи glade UI присвоить метке не текст, а значение определенной переменной?

Т.е. чтобы было что-то вроде

<property name="label">_L(_s_File_)</property>
И при этом gtk отображал бы содержимое переменной _s_File_, а не надпись «L(sFile)»?

☆☆☆☆☆

а зачем тебе его вообще указывать в интерфейсе?

Получил идентификатор виджета, вставил ему нужный текст, или я чего-то недопонимаю?

lazyklimm ★★★★★
()
Ответ на: комментарий от lazyklimm

Да мне просто для перевода (про gettext знаю - не нужно, т.к. ничего путного мне по нему не подсказали). Т.е. _L - макрос, выбирающий из массива _s_text_ нужный текст (в зависимости от значения переменной LANG). Вот и хотелось бы, чтобы не только те тексты, которые я динамически генерирую, на нужном языке отображались, но и менюшки всякие...

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

ту тему не читал, хотел первым делом спросить «почему не gettext», но не буду, ибо лень вникать и вообще пью пиво. Попробую завтра посмотреть

lazyklimm ★★★★★
()
Ответ на: комментарий от lazyklimm

В нескольких словах: хочу, чтобы после компиляции бинарник спокойно работал, не разбрасывая всякий мусор вроде ui- и mo-файлов.

Eddy_Em ☆☆☆☆☆
() автор топика

Нашел интересную штуку вместо GtkItemFactory: GtkUIManager, который позволяет более-менее вольно с метками обходиться. Теперь остается найти, как XML для него генерировать из glade'овских файлов (или сообразить что-нибудь, чтобы попроще было этот XML создавать...)

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

>хочу, чтобы после компиляции бинарник спокойно работал, не разбрасывая всякий мусор вроде ui- и mo-файлов.

Сам ты мусор

Led ★★★☆☆
()

Все, разобрался. Достаточно glade'овские проекты сохранять как glade-файл, а затем при помощи gtk-builder-convert преобразовывать их в xml-файл для GtkUIManager. Затем из полученного файла вырезать секцию <ui> и оформлять ее как строковую переменную в каком-нибудь заголовочном файле. Структура gtk-action заполняется функцией, создающей окна сразу после определения текущего языка пользователя. Ну, а локализация реализуется как описано здесь.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

>Достаточно glade'овские проекты сохранять как glade-файл, а затем при помощи gtk-builder-convert преобразовывать их в xml-файл для GtkUIManager.

а почему сразу нельзя оформлять в xml?

lazyklimm ★★★★★
()
Ответ на: комментарий от lazyklimm

Нет, предлагает на выбор либо glade-формат, либо формат gtkbuilder'а. XML для gtkui нет (у меня glade-3 v3.6.7).

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от lazyklimm

> он же вроде умеет GtkUI делать

только сам контейнер, без возможности редактирования. так-же, как и GtkFileFilter

ananas ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.