Zum Inhalt springen

Magic User Interface

aus Wikipedia, der freien Enzyklopädie
{{#if: | | {{#invoke:WLink|getArticleBase}} }}

{{#if: |

colspan="2" class="notheme" style="text-align:center; background:#Vorlage:Standardfarbe; color:#202122;" | |
 {{#if: {{#invoke:Wikidata|claim|P154}} | 
[[Datei:{{#invoke:Wikidata|claim|P154}}|150px]]
 }}

}}{{#if: |

{{#if: |
}}|

}}

Basisdaten

{{#if: The MUI for AmigaOS Development Team |

Hauptentwickler
 {{#if: {{#invoke:Wikidata|claim|P126}} | 
Maintainer claim|P126|parameter=link|references=ja|list=, }}
 }}

}}{{#if: The MUI for AmigaOS Development Team (ursprünglich Stefan Stuntz von SASG) |

Entwickler
 {{#if: {{#invoke:Wikidata|claim|P178}} | 
Entwickler claim|P178|parameter=link|references=ja|list=, }}
 }}

}}{{#if: |

Erscheinungsjahr
 {{#if: {{#invoke:Wikidata|claim|P577}} | 
Erscheinungsjahr claim|P577|references=ja|list=, }} |
   {{#if: {{#invoke:Wikidata|claim|P571}} | 
Erscheinungsjahr claim|P571|references=ja|list=, }}
   }}
 }}

}}{{#ifeq: 5.0 | KEINE_ANGABE || {{#if: 5.0 |

Aktuelle Version
({{#if: | Vorlage:Datum – die Form mit drei unbenannten Parametern oder anderen einzelnen Zeiteinheiten ist veraltet und wird nicht mehr unterstützt. Bitte gib das Datum einfach im Klartext an.
format 30. Januar 2017 | {{#timefl:now|date}}}} {{{2}}} | T._Monat JJJJ}} lang= {{#switch: -|=de #default=de-AT
            }}
   }}

}}) }}

 {{#if: {{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813}} | 
Aktuelle Version claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|references=ja}} {{#if: {{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|qualifier=P577}} |
({{#invoke:Wikidata|claim|P348|P548|!Q3295609,Q51930650,Q2122918,Q21727724,Q1072356,Q6736813|qualifier=P577}}) }}}}}}

}}{{#ifeq: | KEINE_ANGABE || {{#if: |

Aktuelle Vorabversion
({{#if: | Vorlage:Datum – die Form mit drei unbenannten Parametern oder anderen einzelnen Zeiteinheiten ist veraltet und wird nicht mehr unterstützt. Bitte gib das Datum einfach im Klartext an.
format | {{#timefl:now|date}}}} {{{2}}} | T._Monat JJJJ}} lang= {{#switch: -|=de #default=de-AT
            }}
   }}

}}) }}

 {{#if: {{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724}} | 
Aktuelle Vorabversion claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|references=ja}} {{#if: {{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|qualifier=P577}} |
({{#invoke:Wikidata|claim|P348|P548|Q1072356,Q51930650,Q3295609,Q2122918,Q21727724|qualifier=P577}}) }}}}}}

}}{{#if: |

Ausführungsumgebung
 {{#if: AmigaOS 68k ab 3.X / PPC ab 4.X | 
Betriebssystem AmigaOS 68k ab 3.X / PPC ab 4.X |
   {{#if: {{#invoke:Wikidata|claim|P306}} | 
Betriebssystem claim|P306|parameter=link|references=ja|list=, }}
   }}
 }}

}}{{#if: C |

Programmier­sprache C |
 {{#if: {{#invoke:Wikidata|claim|P277}} | 
Programmier­sprache claim|P277|parameter=link|references=ja|list=, }}
 }}

}}{{#if: GUI-Toolkit |

Kategorie GUI-Toolkit

}}{{#if: Shareware bzw. Bundle |

Lizenz Shareware bzw. Bundle |
 {{#if: {{#invoke:Wikidata|claim|P275}} | 
Lizenz claim|P275|parameter=link|references=ja|list=, }}
 }}

}}{{#if: ja |

deutschsprachig faculty|ja}} | ja | nein }}

}}{{#if: |

Sonstiges {{{Sonstiges}}}Vorlage:Infobox Software/Wartung/Sonstiges

}}{{#if: muidev.de |

muidev.de |
 {{#if: {{#invoke:Wikidata|claim|P856|notdeprecated=1}} | 
{{#invoke: WLink | formatURL | {{#invoke:Wikidata|claim|P856|parameter=link|notdeprecated=1}}}}
 }}

}}{{#if: |

Dateien [[c:Category:Created with {{{Dateien}}}|{{{Dateien}}}]]

}}

Das Magic User Interface (MUI) ist ein kommerzielles, objektorientiertes GUI-Toolkit zur Erstellung von grafischen Benutzeroberflächen für AmigaOS ab Version 3.X/4.X. Für den Endanwender von Programmen, die MUI nutzen, ist dieses kostenlos. Die Verwendung in eigenen Anwendungen ist für Freeware ebenfalls kostenlos, für kommerzielle Produkte wird eine Lizenzgebühr erhoben.<ref name="policies">MUI: Lizenzbedingungen</ref>

Funktionsumfang

MUI stellt Programmierern eine Reihe fertiger Steuerelemente sowie eine API zur Erstellung eigener Steuerelemente zur Verfügung, mit denen die Umsetzung komplexer GUIs deutlich vereinfacht wurde. Ebenso wurde die vierfarbige Standardpalette des AmigaOS um vier weitere Farben ergänzt, um eine bessere Darstellung der Steuerelemente zu erreichen. Die Farbpalette ist an die Erweiterungen MagicWB und NewIcons angepasst, die ihrerseits die Amiga Workbench um „farbenprächtigere“ Dateisymbole erweiterten.

Farbpalette von MUI & MagicWB
Farbe
Rot 149 000 255 59 123 175 170 255
Grün 149 000 255 103 123 175 144 169
Blau 149 000 255 162 123 175 124 151

Anwender von MUI-Anwendungen haben die Möglichkeit, deren Aussehen mit dem Konfigurationsprogramm MUIPrefs global oder für jedes Programm einzeln sehr detailliert einzustellen. Nicht nur Hintergrundfarben bzw. -muster sowie Schrift zur Textanzeige, sondern auch die Darstellung der Steuerelemente selber kann verändert werden. Die Größe der Steuerelemente und Programmfenster wird durch MUI automatisch angepasst. Zudem ermöglicht MUI das Speichern von Fenstergrößen und -positionen, Tastatursteuerung und die Minimierung laufender Programme.

Verbreitung

Sowohl bei Programmierern als auch bei Anwendern war MUI sehr populär: Über 900 Anwendungen verwenden es für ihre GUI.<ref name="applist">Liste von Programmen, die MUI verwenden</ref> Darunter sind vor allem einige ebenfalls verbreitete Programme wie die Webbrowser IBrowse und Voyager, die Mailclients MicroDot II und YAM, der IRC-Client AmIRC, der FTP-Client AmFTP oder das Steuerprogramm des TCP/IP-Stacks Miami.<ref name="famous">Liste populärer MUI-Programme</ref>

Geschichte

Mit dem Erscheinen der Version 2.0 des AmigaOS wurde mit BOOPSI eine neue objektorientierte Schnittstelle zum Implementieren wiederverwendbarer Steuerelemente bereitgestellt. Dies war einfacher und flexibler als die direkte Programmierung der Intuition-Schnittstelle, die von BOOPSI gekapselt wird. MUI war neben ClassAct (später ReAction) eine der ersten Bibliotheken, die diese neue Technik einsetzte.

Im August 1993 wurde MUI erstmals als Version 1.0 veröffentlicht.<ref name="history">MUI: Programm- und Versionsgeschichte</ref> Die Software ist über die Website und vor allem über das verbreitete Aminet verfügbar.<ref name="download">MUI: Offizielle Downloadseite</ref><ref name="aminet">MUI: Informationen zur Distribution</ref> Nach zahlreichen Zwischenversionen erschien am 12. Februar 1997 die vorerst letzte offizielle Version 3.8.<ref name="history" />

Mit der abnehmenden Bedeutung und der durchaus turbulenten Geschichte von Amiga und AmigaOS ab 1999 wird die Situation unklar. Zunächst hieß es, dass in dem immer wieder angekündigten AmigaOS 4 MUI zum Einsatz kommen soll. Dies wurde schließlich zugunsten von ClassAct verworfen.<ref>Amiga Status Announcements OS News</ref><ref>More AmigaOS4 Details Emerge OS News</ref>

In MorphOS, dem etwa 1999/2000 begonnenen Betriebssystem-Nachfolger mit ähnlich wechselhafter Geschichte, wurde es als „MUI4“ Teil des neuen Betriebssystems und seiner Ambient-Oberfläche.<ref name="morphos">Overview – GUI Toolkit MUI. MorpOS</ref> Auch in AROS, einer quelltextkompatiblen Reimplementierung des vorigen AmigaOS, wurde ein inoffizielles MUI-Derivat „Zune“ integriert.<ref name="zune"><templatestyles src="Webarchiv/styles.css" />{{#if:20160325022444

      | {{#ifeq: 20160325022444 | *
    | Vorlage:Webarchiv/Wartung/Stern{{#if: Zune Application Development Manual | {{#invoke:WLink|getEscapedTitle|Zune Application Development Manual}} | {{#invoke:Webarchiv|getdomain|http://aros.sourceforge.net/documentation/developers/zune-application-development.php}} }} (Archivversionen)
    | {{#iferror: {{#time: j. F Y|20160325022444}}
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/DatumDer Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
         | {{#if: Zune Application Development Manual | {{#invoke:WLink|getEscapedTitle|Zune Application Development Manual}} | {{#invoke:Webarchiv|getdomain|http://aros.sourceforge.net/documentation/developers/zune-application-development.php}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if: 2019-04-29 02:21:09 InternetArchiveBot | 2019-04-29 02:21:09 InternetArchiveBot |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y|20160325022444}} im Internet Archive{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
      }}
  }}
      | {{#if:
          | {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
    | {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
       | 16= {{#if: Zune Application Development Manual | {{#invoke:WLink|getEscapedTitle|Zune Application Development Manual}} | {{#invoke:Webarchiv|getdomain|http://aros.sourceforge.net/documentation/developers/zune-application-development.php}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if: 2019-04-29 02:21:09 InternetArchiveBot | 2019-04-29 02:21:09 InternetArchiveBot |  }} |  des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | 9 = {{#if: Zune Application Development Manual | {{#invoke:WLink|getEscapedTitle|Zune Application Development Manual}} | {{#invoke:Webarchiv|getdomain|http://aros.sourceforge.net/documentation/developers/zune-application-development.php}} }} {{#ifeq:  | [] | [ | ( }}Memento{{#if: {{#if: 2019-04-29 02:21:09 InternetArchiveBot | 2019-04-29 02:21:09 InternetArchiveBot |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
       | #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!Vorlage:Webarchiv/Wartung/webcitation{{#if:  || }}
      }}
    | c|{{{webciteID}}}}} {{#if: Zune Application Development Manual | {{#invoke:WLink|getEscapedTitle|Zune Application Development Manual}} | {{#invoke:Webarchiv|getdomain|http://aros.sourceforge.net/documentation/developers/zune-application-development.php}} }} (Memento{{#if: {{#if: 2019-04-29 02:21:09 InternetArchiveBot | 2019-04-29 02:21:09 InternetArchiveBot |  }} |  des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if:  | ;  }}{{#ifeq:  | [] | ] | ) }}
  }}
          | {{#if: 
              | Vorlage:Webarchiv/Today
              | {{#if:
                      | Vorlage:Webarchiv/Generisch
                      | {{#if: Zune Application Development Manual | {{#invoke:WLink|getEscapedTitle|Zune Application Development Manual}} | {{#invoke:Webarchiv|getdomain|http://aros.sourceforge.net/documentation/developers/zune-application-development.php}} }}  
                 }}}}}}}}{{#if:2019-04-29 02:21:09 InternetArchiveBot
    | Vorlage:Webarchiv/archiv-bot
  }}{{#invoke:TemplatePar|check
     |all      = url=
     |opt      = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
     |cat      = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
     |errNS    = 0
     |template = Vorlage:Webarchiv
     |format   = *
     |preview  = 1
  }}{{#ifexpr: {{#if:20160325022444|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
  }}{{#if: 
    | {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
        | web.archive.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}} 
        | webcitation.org = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}} 
        | archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn = 
          {{#if:  || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
      }}{{#if: 
         | {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
             | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
          |  }} 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
      }}
    | {{#if: 
         | {{#if:  || }}Vorlage:Webarchiv/Wartung/Parameter{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
      }}
  }}{{#if:{{#invoke:URLutil|isHostPathResource|http://aros.sourceforge.net/documentation/developers/zune-application-development.php}}
    || {{#if:  || }}
  }}{{#if: Zune Application Development Manual
    | {{#if: {{#invoke:WLink|isBracketedLink|Zune Application Development Manual}}
        | {{#if:  || }}
      }}
    | {{#if:  || }}Vorlage:Webarchiv/Wartung/Linktext_fehlt
  }}{{#switch: 
    |addlarchives|addlpages= {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/Parameter}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
  }}{{#ifeq: {{#invoke:Str|find|http://aros.sourceforge.net/documentation/developers/zune-application-development.php%7Carchiv}} |-1
    || {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://aros.sourceforge.net/documentation/developers/zune-application-development.php%7C4}}%7Chttp}} |-1
         || {{#switch: {{#invoke:Webarchiv|getdomain|http://aros.sourceforge.net/documentation/developers/zune-application-development.php }}
              | abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org = 
              | #default = {{#if:  || }}{{#if: 1 |Vorlage:Webarchiv/Wartung/URL}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
            }} 
       }}
  }} AROS</ref>

MUI für AmigaOS wird mittlerweile wieder aktiv weiterentwickelt von dem „MUI for AmigaOS Development Team“ und ist für AmigaOS3.X sowie für AmigaOS 4.X in der Version 5 verfügbar. Die Registrierung für den Einsatz in neuen Programmen ist weiterhin möglich (Stand: Juni 2017).<ref name="order">MUI: Bestellung und Registrierung</ref>

Weblinks

Einzelnachweise

<references />