Основы программирования в Linux
Шрифт:
Давайте рассмотрим программу, применяющую средства GNOME, в которой выполняется GNOME-замещение объекта
Введите эту программу и назовите ее gnome1.c:
Для компиляции вам необходимо включить заголовочные файлы GNOME, поэтому передайте библиотеки libgnomeui и libgnome в команду
Виджет
Вы можете использовать комплект инструментов GTK+ для создания меню, но среда GNOME предоставляет полезные структуры и макросы, которые существенно облегчают эту задачу. В интерактивной документации описывается, как создавать меню средствами GTK+.
Меню GNOME
Создание строки раскрывающихся меню в среде GNOME на удивление просто. Каждый пункт в строке меню представляется как массив структур
После определения отдельных меню создается строка меню как таковая с помощью ссылок на эти массивы в еще одном массиве структур
Структура
Первый элемент в структуре,
Таблица 16.3
| Типы GnomeUIInfоТуре | Описание |
|---|---|
| GNOME_APP_UI_ENDOFINFO | Означает, что этот элемент — последний пункт меню в массиве |
| GNOME_APP_UI_ITEM | Обычный пункт меню или переключатель, если ему предшествует элемент GNOME_APP_UI_RADIOITEMS |
| GNOME_APP_UI_TOGGLEITEM | Пункт меню в виде кнопки-переключателя или кнопки-флажка |
| GNOME_APP_UI_RADIOITEMS | Группа переключателей или зависимых переключателей |
| GNOME_APP_UI_SUBTREE | Означает, что данный элемент представляет собой подменю. Задайте moreinfo для указания на массив подменю |
| GNOME_APP_UI_SEPARATOR | Вставляет разделительную линию в меню |
| GNOME_APP_UI_HELP | Создает список тем справки для использования в меню Help (Справка) |
| GNOME_APP_UI_BUILDER_DATA | Задает данные построения (builder data) для следующих элементов |
| GNOME_APP_UI_ITEM_CONFIGURABLE | Настраиваемый пункт меню |
| GNOME_APP_UI_SUBTREE_STOCK | Такой же, как GNOME_APP_UI_SUBTREE за исключением того, что надписи следует искать в каталоге gnome-libs |
| GNOME_APP_UI_INCLUDE | Такой же, как GNOME_APP_UI_SUBTREE за исключением того, что пункты включены в текущее меню, а не в подменю |
Второй и третий элементы структуры определяют текст пункта меню и всплывающей подсказки. (Подсказка выводится в строке состояния, у нижнего края окна.)
Назначение элемента
И наконец, элемент
Выполните упражнение 16.9.
Вы сможете опробовать меню с помощью данной короткой программы. Назовите ее menu1.с.
1. Определите для пунктов меню функцию обратного вызова, названную
2. Далее следуют определения меню. У вас есть подменю, меню верхнего уровня и массив строки меню:
Стечкин
582. Жизнь замечательных людей
Документальная литература:
биографии и мемуары
рейтинг книги
Гримуар темного лорда IV
4. Гримуар темного лорда
Фантастика:
фэнтези
боевая фантастика
попаданцы
аниме
рейтинг книги
Дневники 1928-1929
Документальная литература:
биографии и мемуары
рейтинг книги
Жена моего мужа
6. Любительница частного сыска Даша Васильева
Детективы:
иронические детективы
рейтинг книги
Жребий брошен
10. Ведун
Фантастика:
фэнтези
рейтинг книги
Камень. Книга пятая
5. Камень
Фантастика:
боевая фантастика
рейтинг книги
Локки 2. Потомок бога
2. Локки
Фантастика:
городское фэнтези
аниме
попаданцы
рейтинг книги
Газлайтер. Том 40
40. История Телепата
Фантастика:
альтернативная история
аниме
попаданцы
рейтинг книги
Искатели клада. Рассказы
Юмор:
юмористическая проза
рейтинг книги
Бандит
1. Петр Синельников
Фантастика:
фэнтези
рейтинг книги
Дневник (1887-1910)
Проза:
проза прочее
рейтинг книги