Троан Эрик В.
Шрифт:
24.2.9. Использование цвета
Библиотека S-Lang упрощает процесс добавления цветов в приложения. Она позволяет использовать палитру, состоящую из 256 элементов [171] , каждый из которых определяет цвет переднего плана и фона. В большинстве приложений используется элемент палитры для одного визуализируемого объекта, например, рамки окна или пункта списка. Настроить цвета палитры можно с помощью функции
171
Со временем эта цифра может возрасти, однако маловероятно, что это когда-нибудь будет необходимо.
Первый параметр определяет модифицируемый элемент палитры. Параметр
172
В частности, в некоторых системах это может привести к мерцанию текста.
Таблица 24.2. Цвета в S-Lang
Передний план и фон | Передний план |
---|---|
black | gray |
red | brightred |
green | brightgreen |
brown | yellow |
blue | brightblue |
magenta | brightmagenta |
cyan | brightcyan |
lightgray | white |
Запись на экран осуществляется с применением текущего элемента палитры, который можно задать с помощью функции
Эта функция задает текущий элемент палитры по определенному элементу. Цвета, определяемые этим элементом, будут использоваться при последующих записях на экран.
Хотя приложение может вызывать функции для работы с цветом на терминале любого типа, возможность отображения того или иного цвета будет определяться некоторыми факторами. Глобальная переменная
Функция
Большинство приложений, обеспечивающих поддержку цветов, также предлагают опцию командной строки, позволяя избирательно разрешать поддержку цветов. Указание этой опции приводит к явной установке переменной
Глава 25
Библиотека хешированных баз данных
Приложениям часто необходимо хранить некоторую разновидность бинарных данных в файлах. Хранение таких данных, когда во главу угла ставится задача эффективного их извлечения, отличается сложностью и слабой устойчивостью к ошибкам. Существует несколько библиотек, которые предлагают простые API-интерфейсы для хранения информации в файлах. В системах семейства Unix одной из первых использовалась библиотека
173
Библиотека Berkley db была существенно расширена, и сейчас включает реализацию B-деревьев и весь спектр работы с транзакциями.