Gtk3 Threaded UI: Difference between revisions

From vice-emu
Jump to navigation Jump to search
(Use hack to make sure column 0 contents are on a single line.)
(Add fliplist menu items)
Line 16: Line 16:


{| class="wikitable"
{| class="wikitable"
|+File menu
!menu item||shortcut||source file||function||status||remarks
!menu item||shortcut||source file||function||status||remarks
|-  
|-  
Line 53: Line 54:
|
|
|-
|-
 
|File → Flip list → Add current image (Unit #8)
|Alt+I
|[https://sourceforge.net/p/vice-emu/code/HEAD/tree/trunk/vice/src/arch/gtk3/uifliplist.c uifliplist.c]
|ui_fliplist_add_current_cb()
|needs checking
|
|-
|File → Flip list → Remove current image (Unit #8)
|Alt+K
|[https://sourceforge.net/p/vice-emu/code/HEAD/tree/trunk/vice/src/arch/gtk3/uifliplist.c uifliplist.c]
|ui_fliplist_remove_current_cb()
|needs checking
|
|-
|File → Flip list → Attach next image (Unit #8)
|Alt+N
|[https://sourceforge.net/p/vice-emu/code/HEAD/tree/trunk/vice/src/arch/gtk3/uifliplist.c uifliplist.c]
|ui_fliplist_next_cb()
|needs checking
|
|-
|File → Flip list → Attach previous image (Unit #8)
|Alt+Shift+N
|[https://sourceforge.net/p/vice-emu/code/HEAD/tree/trunk/vice/src/arch/gtk3/uifliplist.c uifliplist.c]
|ui_fliplist_remove_prev_cb()
|needs checking
|
|-
|File → Flip list → Load flip list file
|
|[https://sourceforge.net/p/vice-emu/code/HEAD/tree/trunk/vice/src/arch/gtk3/uifliplist.c uifliplist.c]
|ui_fliplist_load_callback()
|needs checking
|
|-
|File → Flip list → Save flip list file
|
|[https://sourceforge.net/p/vice-emu/code/HEAD/tree/trunk/vice/src/arch/gtk3/uifliplist.c uifliplist.c]
|ui_fliplist_save_callback()
|needs checking
|
|-
|}
|}

Revision as of 19:58, 20 July 2020

Introduction

This page is meant to track our work on refactoring the Gtk3 UI to properly work with the awesome work done by DQH, solving a lot of issues with rendering and sound synchronisation (the infamous "ruckeln") by using threading to have the emulation take precedence over the UI. The main dialogs (attach disk, open and use the setting dialog, etc) have already been refactored, but a lot of dialogs/popup menus and statusbar widgets remain.


Using the new threaded code

Best filled in by DQH, I think :)


UI elements to to check and refactor

Main menu items

This table contains a list of menu actions/dialogs reachable via the main menu. Unless otherwise noted, the "source file" column contains the filename with src/arch/gtk3 stripped off. The keyboard shortcuts are taken from the Linux port, so they might be off for at least MacOS.

File menu
menu item shortcut source file function status remarks
File → Smart attach disk/tape/cartridge Alt+A uismartattach.c create_smart_attach_dialog() OK
File → Attach disk image → Drive #[8-11] Alt+[8-11] uidiskattach.c create_disk_attach_dialog() OK
File → Create and attach an empty disk image uidiskcreate.c uidiskcreate_dialog_show() needs checking
File → Detach disk image → Drive #[8:0 .. 11:1] Crtl+Alt+[8-11] uidiskattach.c ui_disk_detach_callback() needs checking No shortcuts for second drive, perhaps Ctrl+Alt+Shift+[8-11]?
File → Detach disk image → Detach all uidiskattach.c ui_disk_detach_all_callback() needs checking
File → Flip list → Add current image (Unit #8) Alt+I uifliplist.c ui_fliplist_add_current_cb() needs checking
File → Flip list → Remove current image (Unit #8) Alt+K uifliplist.c ui_fliplist_remove_current_cb() needs checking
File → Flip list → Attach next image (Unit #8) Alt+N uifliplist.c ui_fliplist_next_cb() needs checking
File → Flip list → Attach previous image (Unit #8) Alt+Shift+N uifliplist.c ui_fliplist_remove_prev_cb() needs checking
File → Flip list → Load flip list file uifliplist.c ui_fliplist_load_callback() needs checking
File → Flip list → Save flip list file uifliplist.c ui_fliplist_save_callback() needs checking