Lt304888.ru

Туристические услуги

Zune (GUI)

22-09-2023

Пример настроенного интерфейса 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).

См. также

Ссылки

  • Дерево классов MUI  (англ.)
  • Конвертор классов GTK в MUI  (англ.)
  • Руководство разработчика интерфейсов Zune  (рус.)
  • Блог Флавио Станчина — автора Zune  (англ.)
  • Сайт Стефана Штунца — автора MUI  (англ.)

Zune (GUI).

© 2020–2023 lt304888.ru, Россия, Волжский, ул. Больничная 49, +7 (8443) 85-29-01