Refine question toolbar icons and pause menu

This commit is contained in:
hz
2026-07-18 15:37:05 -05:00
parent eb8747d48e
commit 8c349314ad
24 changed files with 174 additions and 139 deletions
-16
View File
@@ -727,13 +727,6 @@ func _build_app_menu() -> void:
sound_toggle.toggled.connect(UISoundService.set_sounds_enabled)
content.add_child(sound_toggle)
var profile := Button.new()
profile.text = "Profile"
profile.custom_minimum_size = Vector2(0, 48)
Style.style_chip(profile, Style.CYAN)
profile.pressed.connect(_open_profile_from_menu)
content.add_child(profile)
menu_exit_button = Button.new()
menu_exit_button.text = "Exit Run"
menu_exit_button.custom_minimum_size = Vector2(0, 48)
@@ -786,12 +779,3 @@ func _exit_run() -> void:
elif BlockSessionService.session_kind == "simulation":
BlockSessionService.block_started = false
show_screen("selection", "exam" if was_core_run else "step3")
func _open_profile_from_menu() -> void:
_close_app_menu()
if BlockSessionService.block_started and BlockSessionService.session_kind != "simulation":
BlockSessionService.finish_block()
elif BlockSessionService.session_kind == "simulation":
BlockSessionService.block_started = false
show_screen("profile")
+18 -15
View File
@@ -2,12 +2,12 @@ extends VBoxContainer
const Style := preload("res://scripts/ui/ui_style.gd")
const Brand := preload("res://scripts/ui/medmind_style.gd")
const CLEAR_HIGHLIGHT_DARK_ICON := preload("res://assets/icons/medmind/clear-highlight-darkmode.png")
const CLEAR_HIGHLIGHT_LIGHT_ICON := preload("res://assets/icons/medmind/clear-highlight-lightmode.png")
const LABS_DARK_ICON := preload("res://assets/icons/medmind/labs-darkmode.png")
const LABS_LIGHT_ICON := preload("res://assets/icons/medmind/labs-lightmode.png")
const REPORT_QUESTION_DARK_ICON := preload("res://assets/icons/medmind/report-question-darkmode.png")
const REPORT_QUESTION_LIGHT_ICON := preload("res://assets/icons/medmind/report-question-lightmode.png")
const CLEAR_HIGHLIGHT_DARK_ICON := preload("res://assets/icons/medmind/clear-highlight-dark.svg")
const CLEAR_HIGHLIGHT_LIGHT_ICON := preload("res://assets/icons/medmind/clear-highlight-light.svg")
const LABS_DARK_ICON := preload("res://assets/icons/medmind/labs-dark.svg")
const LABS_LIGHT_ICON := preload("res://assets/icons/medmind/labs-light.svg")
const REPORT_QUESTION_DARK_ICON := preload("res://assets/icons/medmind/report-question-dark.svg")
const REPORT_QUESTION_LIGHT_ICON := preload("res://assets/icons/medmind/report-question-light.svg")
const FEEDBACK_FADE_SECONDS := 0.45
const CORRECT_ADVANCE_DELAY_SECONDS := 1.25
const TEXT_SCALE_MIN := 0.85
@@ -680,17 +680,20 @@ func _style_theme_toggle_button(dark: bool) -> void:
theme_button.add_theme_constant_override("h_separation", 0)
func _style_asset_toolbar_button(button: Button, texture: Texture2D) -> void:
func _style_asset_toolbar_button(button: Button, texture: Texture2D, dark: bool) -> void:
if button == null:
return
button.text = ""
button.icon = null
button.icon = texture
button.expand_icon = false
button.focus_mode = Control.FOCUS_NONE
var texture_box := StyleBoxTexture.new()
texture_box.texture = texture
for state in ["normal", "hover", "pressed"]:
button.add_theme_stylebox_override(state, texture_box)
button.add_theme_constant_override("icon_max_width", 25)
button.add_theme_stylebox_override("normal", _toolbar_box(dark))
button.add_theme_stylebox_override("hover", _toolbar_box(dark, true))
button.add_theme_stylebox_override("pressed", _toolbar_box(dark, true))
button.add_theme_stylebox_override("focus", StyleBoxEmpty.new())
for color_name in ["icon_normal_color", "icon_hover_color", "icon_pressed_color", "icon_focus_color"]:
button.add_theme_color_override(color_name, Color.WHITE)
func _primary_action_box(dark: bool, state: String) -> StyleBoxFlat:
@@ -823,9 +826,9 @@ func _apply_question_theme() -> void:
control.add_theme_stylebox_override("pressed", _toolbar_box(dark, true))
control.add_theme_color_override("font_color", Brand.text_color(dark))
control.add_theme_color_override("icon_normal_color", Brand.SKY_BLUE)
_style_asset_toolbar_button(labs_button, LABS_DARK_ICON if dark else LABS_LIGHT_ICON)
_style_asset_toolbar_button(clear_highlight_button, CLEAR_HIGHLIGHT_DARK_ICON if dark else CLEAR_HIGHLIGHT_LIGHT_ICON)
_style_asset_toolbar_button(report_button, REPORT_QUESTION_DARK_ICON if dark else REPORT_QUESTION_LIGHT_ICON)
_style_asset_toolbar_button(labs_button, LABS_DARK_ICON if dark else LABS_LIGHT_ICON, dark)
_style_asset_toolbar_button(clear_highlight_button, CLEAR_HIGHLIGHT_DARK_ICON if dark else CLEAR_HIGHLIGHT_LIGHT_ICON, dark)
_style_asset_toolbar_button(report_button, REPORT_QUESTION_DARK_ICON if dark else REPORT_QUESTION_LIGHT_ICON, dark)
_style_theme_toggle_button(dark)
if skip_button != null:
skip_button.add_theme_stylebox_override("normal", _toolbar_box(dark))