New Gtk3 UI: Difference between revisions

From vice-emu
Jump to navigation Jump to search
mNo edit summary
 
(128 intermediate revisions by 4 users not shown)
Line 1: Line 1:
== New Gtk3 UI ==


This page is meant to keep track of development efforts on the new Gtk3 UI. Once the Gtk3 UI is the de-facto UI standard, this page can be (re)moved. For now, I'd like to keep it here so it can quickly be found.
The content of this page has been moved to the general TODO list [[Todo#GTK3_UI|here]]


=== Rationale ===
The list of covered resources is now on its own page [[Gtk3_Resource_Coverage|here]]


The how and why we go Gtk3 for *nix, Windows and OSX should be clear, but I'll reiterate: since we don't have any Windows or OSX maintainters left and failed to attract new ones, the decision was made to use Gtk3 as the new UI for 'modern' OSes.
[[Category:Deprecated]]
 
Gtk3 is portable and widely supported and has a C interface. So we should be able to write the UI code once and have it run on our major platforms: Linux, Windows and OSX. Using GLib (a dependency of Gtk3) a lot of platform-dependent code in the UI can be avoided and many standard dialogs, such as open/save/select-dir need to written only once, Gtk3/GLib will handle most of the platform-dependent stuff.
 
=== Current development state ===
 
* All emulators except VSID work, though a lot of UI code still needs to be written or updated to properly support all machines
* Rendering is currently handled by Cairo, meaning we don't have HW rendering yet, which should be handled using GtkGlArea (requires Gtk3 3.16)
* All UI code is hand-written, we tried using Glade/GtkBuilder, but the amount of machines and extra hardware VICE supports is way too much what a static UI can handle
* Though many UI elements look okay, some don't. This isn't lazyness but rather to avoid tweaking the layout only to discover later that it still needs to be changed. So any layout/style issues will eventually get fixed. So don't complain about it, unless there are glaring bugs (such as dialogs that are too large to fit on a decent screen)
* The developers currently working on Gtk3 are:
- Compyx - UI, some archep stuff
- McMartin - rendering backends, UI, some archdep stuff.

Latest revision as of 18:29, 23 March 2023

The content of this page has been moved to the general TODO list here

The list of covered resources is now on its own page here