Microwindows oder Nano-X ist ein kleines grafisches Fenstersystem, das sowohl Win32- als auch Nano-X-APIs (X11-ähnliche) APIs für abgeschnittene Grafikzeichnungen in Windows unter Linux, Mac OS X, EMSCIPTEN, Android und anderen Plattformen implementiert. Es ist Open Source und lizenziert unter der Mozilla Public Lizenz. Für die Erstellung von GUIs sind die Nuklear-GUI-GUI, Win32-integrierte Steuerelemente und die auf Nano-X basierenden Steuerelemente von TinyWidget enthalten. FLTK kann mit der X11 Compability Library NX11 verwendet werden.
Dies ist ein etwas veralteter Überblick über das System:
Einige der unterstützten Plattformen sind unten auf der linken Seite aufgeführt. Daneben stehen Bildschirmfahrer, Mausfahrer und Tastaturtreiber verfügbar. Die Nano-X / Microwindows-Engine ist der Kerncode, der alle Zeichnen und Ausschnitte implementiert, wobei die in separat konfigurierbare Ebenen implementierte grafische Fenster-APIs win32 und nano-X darüber implementiert sind. Die Engine ist so konfiguriert, dass sie verschiedene OS -Plattformen und den zugehörigen Bildschirm, Maus- und Tastatur -Treiber oder bloße Hardware verwendet. Die Nano-X-API und die Win32-APIs werden zum Schreiben von Anwendungen verwendet. Um eine enge X11-Kompatibilität bereitzustellen, kann die NX11-Bibliothek auf der Nano-X-API aufgebaut werden, mit der X11-Anwendungen ohne Neukompilation verknüpft und ausgeführt werden können. Das FLTK -GUI -Toolkit läuft basierend auf NX11.
Microwindows ist sehr tragbar, ist in C geschrieben und kann auf einer Vielzahl von Plattformen verwendet werden.
Zu den derzeit unterstützten Plattformen zählen Linux, Mac OS X, Android, Emscripten, Nuklear GUI, Windows, Raspberry PI, DOS DJGPP, RTEMS, ECOS, Sony PSP, Atari Jaguar, Nintendo DS und mehr.
Zu den derzeit unterstützten Screen-Treibern gehören FrameBuffer, X11, SDL 2, Allegro 5, Windows und einen X11-basierten Framebuffer-Emulator.
Unterstützung für Cross-Compiler-Toolchains auf X86, x86_64, Arm, M68K, Powerpc und MIPS , Big- und Little-Endian sowie anderen Prozessoren.
Das Nano-X-Fenstersystem verfügt über ein geschichtete Design. Auf der niedrigsten Ebene gibt es Treiber für die Bildschirmausgabe sowie Maus- und Tastatureingänge. Berührungseingangsgeräte werden ebenfalls unterstützt. Die Treiber sind für X11, Frame Puffer, SDL, die Allegro -Grafikbibliothek, Vesa oder die SVGA -Bibliothek erhältlich. Zusätzliche Treiber können zu Port -Mikrowindows zu mehr Plattformen hinzugefügt werden.
Auf der mittleren Ebene wird eine tragbare Grafik -Engine implementiert, die Unterstützung für Linienentzüge, Flächenfüllungen, Polygone, Ausschnitte und 1, 2, 4, 8, 15, 16, 24 und 32 Bit -Farbmodelle bietet.
Auf der oberen Ebene werden die Nano-X/NX11- und Win32-APIs implementiert, um den Zugriff auf den Programmierer für Grafikanwendungen zu erhalten.
Das Nano-X-Fenstersystem kann entweder als separater Server für mehrere Clients kompiliert oder mit einer einzigen eigenständigen Bibliothek verknüpft werden.
Die Hauptwebsite von Nano-X finden Sie unter http://www.microwindows.org
Um Mikrowindows zu erstellen, finden Sie in Microwindows/SRC/Readme plus den FAQ -Dateien im DOC -Verzeichnis. Für Android gibt es im DOC -Verzeichnis einen Antragsnotiz. Der Atari Jaguar benötigt eine spezifische Behandlung.
Auf der Website finden Sie ein HTML -basierter FAQ- und Architekturdokument.
Der Chefbetrieb des Projekts ist Greg Haerr [email protected]
Mikrowindows und Nano-X werden auf der Nanogui-Mailingliste besprochen. Mailinglistenarchive finden Sie unter: http://www.linuxhacker.org/ezmlm-browse/index.cgi?list=nanogui