Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

ReAction GUI - это движок инструментария виджетов, который используется в AmigaOS 3.5-4.1.

Это эволюция ClassACT, объектно-ориентированной системы классов, которая расширила возможности графического интерфейса Workbench 2.0 в AmigaOS.

История [ править ]

Родная оконная система Amiga называется Intuition , она управляет отображением экранов, окон и основных виджетов. Однако до AmigaOS 2.0 не было стандартизированного внешнего вида и часто разработчикам приложений приходилось писать свои собственные нестандартные виджеты (как кнопки, так и меню), при этом Intuition мало поддерживала их.

Позже интуиция была улучшена с помощью gadtools.library (AmigaOS 2.0 и более поздних версий ), которая предоставляет набор стандартных виджетов. AmigaOS 2.0 также представила стандартную диалоговую систему под названием ASL (Стандартная библиотека запросов Amiga) и Руководство по стилю пользовательского интерфейса Amiga , в котором определялось, как приложения должны быть выложены для согласованности. Интуиция была улучшена с помощью BOOPSI (Базовая объектно-ориентированная система программирования для интуиции), которая предоставляет объектно-ориентированный интерфейс для создания расширяемого набора виджетов. Внедрение BOOPSI позволило сторонним разработчикам создать комплексные наборы инструментов для виджетов, такие как MUI и ClassAct, которые позже превратились в ReAction.

Особенности [ править ]

ClassACT [ править ]

ClassAct - это объектно-ориентированная система классов и гаджетов, разработанная на основе системы BOOPSI, представленной в AmigaOS 3.0. Его основные особенности - расширяемость и модульность. В систему можно добавлять новые классы и гаджеты и улучшать ее с помощью новых возможностей. ClassAct был смоделирован по образцу будущего направления, которое Commodore предвидел для будущего ОС, представленного на конференции разработчиков в Орландо до банкротства Commodore. Программисты Кристофер «Калди» Алди, Тимоти Астон, Осма «Тау» Ахвенлампи объединились, и ClassAct стал воплощением этого будущего.

Классы ClassACT [ править ]

Основные классы:

  • window.class
  • Requester.class
  • arexx.class

Основные гаджеты:

  • button.gadget
  • checkbox.gadget
  • speedbar.gadget
  • space.gadget
  • slider.gadget
  • scroller.gadget
  • radiobutton.gadget
  • palette.gadget
  • listbrowser.gadget
  • layout.gadget
  • integer.gadget
  • getscreenmode.gadget
  • getfont.gadget
  • getfile.gadget
  • fuelgauge.gadget
  • clicktab.gadget
  • chooser.gadget
  • string.gadget
  • textfield.gadget

К гаджетам ClassAct можно применять различные стили, например трехмерное изображение. Гаджеты могут иметь скошенные границы, шрифт может иметь запасной вариант на случай, если шрифт по умолчанию слишком велик, чтобы поместиться в окно на экране, номер пера для использования для меток и шрифтов меток может быть установлен пользователем, и многие, многие параметры, подобные этим .

ReAction [ править ]

ReAction является официальным разработчиком графического интерфейса AmigaOS начиная с версии ОС 3.5. [1] [2] В настоящее время он строится на основе Intuition, обновляется и имеет лучший и более последовательный обзор приложений, которые его используют.

Система классов и гаджетов ReAction практически такая же, как и в ClassACT. Он расширяемый и модульный, как и ClassAct. В систему можно с легкостью добавить новые классы и гаджеты, чтобы расширить ее возможности.

Простым примером этой модульности является недавно появившийся класс гаджетов ReAction, известный как piechart.gadget . Основное назначение этого гаджета - отображение распределения данных между различными источниками, такими как общие ресурсы, емкость диска, свободное пространство и т. Д., В виде круговой диаграммы . Также возможно дополнительное взаимодействие со стороны пользователя.

Примеры минимального кода [ править ]

Гаджеты кнопок и строк

// Гаджет кнопки #include  <gadgets / layout.h>#include  <proto / layout.h>#include  <proto / button.h>// Пример макета: LAYOUT_AddChild , OBJ ( OBJ_QUIT ) = ButtonObject , GA_ID , OBJ_QUIT , GA_Text , "Quit" , GA_RelVerify , TRUE , End , // Гаджет кнопки выхода
// Строковый гаджет #include  <gadgets / layout.h>#include  <gadgets / string.h>#include  <proto / layout.h>#include  <proto / string.h>#include  <интуиция / gadgetclass.h>// Пример макета: LAYOUT_AddChild , OBJ ( OBJ_STRING ) = StringObject , GA_ID , OBJ_STRING , GA_RelVerify , TRUE , STRINGA_MaxChars , 32 , STRINGA_WorkBuffer , buffername , End , // гаджет строки

Другие инструменты на Amiga [ править ]

В мире Amiga конкурируют два основных набора инструментов для виджетов. ReAction, который является набором инструментов графического интерфейса по умолчанию, выбранным для AmigaOS 3.5-4.1 и для разработки программного обеспечения AmigaOS, и MUI, который является набором инструментов графического интерфейса по умолчанию, выбранным для MorphOS . AROS использует набор инструментов Zune, который является клоном MUI с открытым исходным кодом.

Cygnix - это облегченная среда моделирования UNIX для AmigaOS, которая поставляется с X11- сервером Cygwin и используется для переноса таких программ, как AbiWord или GIMP, на Amiga. Слегка связанный проект - это оболочка GTK MUI, которая в конечном итоге упростит перенос программного обеспечения на основе GTK .

Различные многоплатформенные графические библиотеки и наборы инструментов, такие как Cairo и SDL , также доступны на Amiga и являются основой для создания новых и улучшенных наборов инструментов, новых графических интерфейсов пользователя, новых систем виджетов и т. Д.

Существует также набор инструментов на основе XML, Feelin .

См. Также [ править ]

  • Пользовательский интерфейс Magic (MUI)

Ссылки [ править ]

  1. ^ Ботвик, Нил (ноябрь 1999 г.). «ОС 3.5». Amiga Active . №2. Пинпринт. С. 26–29. ISSN  1467-3533 .
  2. ^ Вост, Бен (Рождество 1999). «Амига ОС 3.5». Формат Amiga . № 131. Будущее издательство. С. 14–17. ISSN 0957-4867 . 

Дальнейшее чтение [ править ]

  • Драммонд, Ричард (январь 2000 г.). «Совершенство программы, глава 8: Создание графического интерфейса, часть 2». Формат Amiga . № 132. Будущее издательство. С. 64–65. ISSN  0957-4867 .
  • Едличка, Дан (январь 2000 г.). "Amiga Developer CD v2.1". Обзор Amiga (на чешском языке). № 52. Издательство Атлантида. п. 16. ISSN  1211-1465 .
  • Кристоф, Майкл (ноябрь 2005 г.). «Программа для OS4 в практической части 3». Amiga Future (на немецком языке). № 57. APC и TCP. С. 42–46.

Внешние ссылки [ править ]

  • Руководство для начинающих по программированию ReAction