Interested Article - Zune (GUI)

Пример настроенного интерфейса Zune

Zune — объектно-ориентированный графический интерфейс пользователя в операционной системе AROS . В процессе развития операционной системы перед разработчиками возникла проблема обеспечения возможности компиляции Open Source приложений, использующих графический интерфейс MUI , так как сам MUI являлся shareware-продуктом. Длительные переговоры об открытии исходных кодов с автором MUI (Стефаном Штунтцем) не привели к положительному результату, поэтому было принято решение создавать интерфейс, полностью совместимый с MUI, «с нуля». Проект начинался как GPLed MUI-клон для X11 (с целью ускорения процесса написания базовые функции подменялись на вызовы X-Window) и постепенно переводился в полностью нативный код. Цель была достигнута в полном объёме к 2002 году и с этого момента Zune развивается уже самостоятельно. Автором Zune является итальянец Флавио Станчина ( Flavio Stanchina (англ.) ).

Zune стал практически полным аналогом MUI (как на уровне API , так и на уровне Look&Feel ), самого популярного на Amiga shareware -интерфейса Стефана Штунтца. Это обеспечило возможность рекомпиляций для AROS интерфейсных частей MUI-приложений AmigaOS и MorphOS , без изменений исходного кода. Кроме того, разработчики, знающие MUI, чувствуют себя в нём «как дома», а новые пользователи и разработчики для AROS получили возможность изучения концепций и особенностей, общих для обоих интерфейсов. Философия Zune (как и MUI) основана на двух постулатах:

  • Программист может затратить намного меньше времени при проектировании интерфейса: в Zune нет привязки элементов интерфейса к абсолютным значениям, среда чувствительна к кеглям шрифтов и сама адаптирует размеры и расположение любых окон в зависимости от шрифтов пользователя. Zune предоставляет семантический доступ к элементам проектируемого интерфейса, а его свойства (такие как отступ элемента от края окна в пикселях) регулируются автоматически.
  • Пользователь может намного лучше контролировать Look&Feel интерфейса, спроектированного программистом, и получает возможность специфической настройки параметров окружения Zune .

Zune основан на системе BOOPSI, унаследованной от AmigaOS и используемой для объектно-ориентированного программирования на Си . Классы Zune не являются дочерними по отношению к существующим для элементов интерфейса классам BOOPSI (то есть не являются простым расширением их возможностей). Базовым классом (в иерархии Zune ) является Notify — дочерний относительно корневого класса BOOPSI ( rootclass ).

См. также

Ссылки

Источник —

Same as Zune (GUI)