From f36c280d6d679a26be48cfccef66d8396a79a625 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=AB=98=E6=A1=A5=E5=87=89=E4=BB=8B?= <113153113+HighBigSky@users.noreply.github.com> Date: Thu, 6 Aug 2026 16:29:26 +0800 Subject: [PATCH] feat(grid): show column index indicators in data headers --- .../editor/EditorSettingsDialog.vue | 16 +++++ apps/desktop/src/components/grid/DataGrid.vue | 51 +++++++++++++- .../components/grid/DataGridColumnHeader.vue | 29 +++++++- apps/desktop/src/i18n/locales/en.ts | 5 ++ apps/desktop/src/i18n/locales/es.ts | 5 ++ apps/desktop/src/i18n/locales/it.ts | 5 ++ apps/desktop/src/i18n/locales/ja.ts | 5 ++ apps/desktop/src/i18n/locales/ko.ts | 5 ++ apps/desktop/src/i18n/locales/pt-BR.ts | 5 ++ apps/desktop/src/i18n/locales/zh-CN.ts | 5 ++ apps/desktop/src/i18n/locales/zh-TW.ts | 5 ++ .../dataGrid/dataGridColumnIndexIcon.spec.ts | 70 +++++++++++++++++++ .../lib/dataGrid/dataGridColumnIndexIcon.ts | 65 +++++++++++++++++ .../src/lib/settings/editorSettingsDraft.ts | 1 + .../src/lib/settings/settingsSearch.ts | 1 + apps/desktop/src/stores/settingsStore.ts | 4 ++ 16 files changed, 272 insertions(+), 5 deletions(-) create mode 100644 apps/desktop/src/lib/__tests__/dataGrid/dataGridColumnIndexIcon.spec.ts create mode 100644 apps/desktop/src/lib/dataGrid/dataGridColumnIndexIcon.ts diff --git a/apps/desktop/src/components/editor/EditorSettingsDialog.vue b/apps/desktop/src/components/editor/EditorSettingsDialog.vue index 5fdfc9ad58..d478d563a2 100644 --- a/apps/desktop/src/components/editor/EditorSettingsDialog.vue +++ b/apps/desktop/src/components/editor/EditorSettingsDialog.vue @@ -333,6 +333,7 @@ const debugLogCopied = ref(false); const debugLogDownloaded = ref(false); const editShowColumnCommentsInHeader = ref(settingsStore.editorSettings.showColumnCommentsInHeader); const editShowColumnTypesInHeader = ref(settingsStore.editorSettings.showColumnTypesInHeader); +const editShowIndexIndicatorsInHeader = ref(settingsStore.editorSettings.showIndexIndicatorsInHeader); const editCompactColumnHeaderActions = ref(settingsStore.editorSettings.compactColumnHeaderActions); const editDataGridQuickEntry = ref(settingsStore.editorSettings.dataGridQuickEntry); const editDataGridAutoTransposeSingleRow = ref(settingsStore.editorSettings.dataGridAutoTransposeSingleRow); @@ -485,6 +486,7 @@ function currentEditorSettingsDraft(): EditorSettingsDraft { tabLayout: editTabLayout.value, showColumnCommentsInHeader: editShowColumnCommentsInHeader.value, showColumnTypesInHeader: editShowColumnTypesInHeader.value, + showIndexIndicatorsInHeader: editShowIndexIndicatorsInHeader.value, compactColumnHeaderActions: editCompactColumnHeaderActions.value, dataGridQuickEntry: editDataGridQuickEntry.value, dataGridAutoTransposeSingleRow: editDataGridAutoTransposeSingleRow.value, @@ -752,6 +754,7 @@ function syncEditorSettingsDraftFromStore() { editTabLayout.value = settingsStore.editorSettings.tabLayout; editShowColumnCommentsInHeader.value = settingsStore.editorSettings.showColumnCommentsInHeader; editShowColumnTypesInHeader.value = settingsStore.editorSettings.showColumnTypesInHeader; + editShowIndexIndicatorsInHeader.value = settingsStore.editorSettings.showIndexIndicatorsInHeader; editCompactColumnHeaderActions.value = settingsStore.editorSettings.compactColumnHeaderActions; editDataGridQuickEntry.value = settingsStore.editorSettings.dataGridQuickEntry; editDataGridAutoTransposeSingleRow.value = settingsStore.editorSettings.dataGridAutoTransposeSingleRow; @@ -989,6 +992,7 @@ function resetDefaultsForTab(tab: SettingsCategory) { } else if (tab === "data") { editShowColumnCommentsInHeader.value = DEFAULT_EDITOR_SETTINGS.showColumnCommentsInHeader; editShowColumnTypesInHeader.value = DEFAULT_EDITOR_SETTINGS.showColumnTypesInHeader; + editShowIndexIndicatorsInHeader.value = DEFAULT_EDITOR_SETTINGS.showIndexIndicatorsInHeader; editCompactColumnHeaderActions.value = DEFAULT_EDITOR_SETTINGS.compactColumnHeaderActions; editDataGridQuickEntry.value = DEFAULT_EDITOR_SETTINGS.dataGridQuickEntry; editDataGridAutoTransposeSingleRow.value = DEFAULT_EDITOR_SETTINGS.dataGridAutoTransposeSingleRow; @@ -1052,6 +1056,7 @@ function resetAllDefaults() { editSidebarTablePageSize.value = DEFAULT_SIDEBAR_TABLE_PAGE_SIZE; editShowColumnCommentsInHeader.value = DEFAULT_EDITOR_SETTINGS.showColumnCommentsInHeader; editShowColumnTypesInHeader.value = DEFAULT_EDITOR_SETTINGS.showColumnTypesInHeader; + editShowIndexIndicatorsInHeader.value = DEFAULT_EDITOR_SETTINGS.showIndexIndicatorsInHeader; editCompactColumnHeaderActions.value = DEFAULT_EDITOR_SETTINGS.compactColumnHeaderActions; editDataGridQuickEntry.value = DEFAULT_EDITOR_SETTINGS.dataGridQuickEntry; editDataGridAutoTransposeSingleRow.value = DEFAULT_EDITOR_SETTINGS.dataGridAutoTransposeSingleRow; @@ -4325,6 +4330,17 @@ onUnmounted(() => { +
+
+ +

+ {{ t("settings.showIndexIndicatorsInHeaderDescription") }} +

+
+ +