From 7ad18fd7ab3b776500e9f09e3b3b11d3335ea716 Mon Sep 17 00:00:00 2001 From: qianmoQ Date: Tue, 12 Aug 2025 16:50:39 +0800 Subject: [PATCH 1/6] =?UTF-8?q?feat=20(core):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=A3=80=E6=9F=A5=E6=9B=B4=E6=96=B0=E8=8F=9C=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src-tauri/src/setup/menus/app.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src-tauri/src/setup/menus/app.rs b/src-tauri/src/setup/menus/app.rs index 92efcd57..c2451077 100644 --- a/src-tauri/src/setup/menus/app.rs +++ b/src-tauri/src/setup/menus/app.rs @@ -9,6 +9,8 @@ pub fn create_app_submenu(app: &AppHandle) -> tauri::Result> .id("about") .build(app)?; + let update_item = MenuItemBuilder::new("检查更新").id("update").build(app)?; + let settings_item = MenuItemBuilder::new("设置") .id("settings") .accelerator("CmdOrCtrl+,") @@ -27,6 +29,8 @@ pub fn create_app_submenu(app: &AppHandle) -> tauri::Result> let app_submenu = SubmenuBuilder::new(app, "CodeForge") .item(&about_item) .separator() + .item(&update_item) + .separator() .item(&settings_item) .separator() .item(&restart_item) @@ -41,6 +45,9 @@ pub fn handle_app_menu_event(app: &AppHandle, event_id: &str) { "about" => { let _event = app.emit("show-about", ()); } + "update" => { + let _event = app.emit("check-update", ()); + } "settings" => { let _event = app.emit("show-settings", ()); } From 7433e4879bf6db12fbf65560cf231152368a9bb1 Mon Sep 17 00:00:00 2001 From: qianmoQ Date: Tue, 12 Aug 2025 17:21:54 +0800 Subject: [PATCH 2/6] =?UTF-8?q?feat=20(core):=20=E6=8B=86=E5=88=86=20App?= =?UTF-8?q?=20=E4=B8=BA=20Composition=20=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/App.vue | 411 +++----------------------- src/components/AppHeader.vue | 71 +++-- src/composables/useAppState.ts | 29 ++ src/composables/useCodeExecution.ts | 169 +++++++++++ src/composables/useEventManager.ts | 170 +++++++++++ src/composables/useLanguageManager.ts | 127 ++++++++ src/types/app.ts | 38 +++ 7 files changed, 621 insertions(+), 394 deletions(-) create mode 100644 src/composables/useAppState.ts create mode 100644 src/composables/useCodeExecution.ts create mode 100644 src/composables/useEventManager.ts create mode 100644 src/composables/useLanguageManager.ts create mode 100644 src/types/app.ts diff --git a/src/App.vue b/src/App.vue index ebca0f15..0fd8dc5d 100644 --- a/src/App.vue +++ b/src/App.vue @@ -4,8 +4,8 @@ :env-installed="envInfo.installed" :supported-languages="supportedLanguages" :current-language="currentLanguage" - @run-code="runCode" - @stop-code="stopCode" + @run-code="() => runCode(currentLanguage, envInfo.installed, envInfo.language)" + @stop-code="() => stopCode(currentLanguage)" @clear-output="clearOutput" @language-change="handleLanguageChange" @show-settings="showSettings = true"> @@ -52,9 +52,7 @@ diff --git a/src/components/AppHeader.vue b/src/components/AppHeader.vue index 91be1e81..cbbc8530 100644 --- a/src/components/AppHeader.vue +++ b/src/components/AppHeader.vue @@ -1,40 +1,35 @@