Основы программирования в Linux
Шрифт:
Первые три компонента формируют так называемое Представление, а последний — Модель. Концепция разделения Представления и Модели (часто называемая проектным шаблоном Модель/Представление/Действие (Model/View/Controller) или сокращенно MVC) не свойственна GTK+, но проектированию уделяется все больше и больше внимания на всех этапах программирования.
Ключевое достоинство проектного шаблона MVC заключается в возможности одновременной визуализации данных в виде разных представлений без ненужного их дублирования. Например, текстовые редакторы могут иметь две разные панели и редактировать разные фрагменты документа без хранения в памяти двух копий документа.
Шаблон MVC также очень популярен в Web-программировании, поскольку облегчает создание Web-сайтов, которые визуализируются в мобильных или WAP-обозревателях не так, как в настольных, просто за счет наличия отдельных компонентов Представление, оптимизированных для Web-обозревателя каждого типа. Вы также можете отделить логику сбора данных, например, запросов к базе данных, от логики пользовательского интерфейса.
Мы начнем с рассмотрения компонента Модель, представленного в GTK+ двумя типами. Объект типа
Для создания объекта
Чтение, вставка, редактирование и удаление данных из модели выполняется с помощью структур
Перед тем как вставлять какие-либо данные в модель дерева, вам нужно получить итератор, указывающий на новую строку. Функция
Получив итератор, вы можете заполнять строку с помощью функции
Номер столбца и данные передаются парами, которые завершаются -1. Позже вы примените тип enum для того, чтобы сделать номера столбцов более информативными.
Для того чтобы добавить ветвь к данной строке (дочернюю строку), вам нужен только итератор для дочерней строки, который вы получаете, вызвав снова функцию
Дополнительную информацию об объектах
Создание объекта
Сейчас самое время настроить виджет для отображения данных именно так, как вы хотите. Для каждого столбца следует определить
В вашем Представлении будет применено текстовое представление ячеек,
Вы создаете представление ячейки и передаете его в функцию вставки столбца. Эта функция позволяет сразу задать свойства
Санкт-Петербург. Автобиография
Научно-образовательная:
история
рейтинг книги
Клиент
Детективы:
триллеры
рейтинг книги
Неучтенный элемент. Том 7
7. Антимаг. Вне системы
Фантастика:
фэнтези
рейтинг книги
Свободный среди звезд: пилот
Вселенная EVE Online
Фантастика:
космическая фантастика
рейтинг книги
Старплекс. Конец эры (сборник)
Шедевры фантастики
Фантастика:
научная фантастика
рейтинг книги
Перехитрить богов. Дилогия
29. В одном томе
Фантастика:
научная фантастика
рейтинг книги
Газлайтер. Том 26
26. История Телепата
Фантастика:
боевая фантастика
попаданцы
аниме
рейтинг книги
Северянин. Трилогия
Северянин
Фантастика:
фэнтези
рейтинг книги
Город Бездны
1. Космический апокалипсис
Фантастика:
научная фантастика
космическая фантастика
рейтинг книги
Право на жизнь
Фантастика:
ужасы и мистика
рейтинг книги
Старая школа рул
1. Второгодка
Фантастика:
альтернативная история
рейтинг книги
Война с Востока. Книга об афганском походе
Проза:
военная проза
рейтинг книги
Основы общей психологии
Мастера психологии
Научно-образовательная:
психология
рейтинг книги
Американская трагедия
150. Библиотека всемирной литературы
Проза:
классическая проза
рейтинг книги