setiastrosuitepro 1.6.1.post1__py3-none-any.whl → 1.6.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of setiastrosuitepro might be problematic. Click here for more details.
- setiastro/images/Background_startup.jpg +0 -0
- setiastro/images/rotatearbitrary.png +0 -0
- setiastro/qml/ResourceMonitor.qml +126 -0
- setiastro/saspro/__main__.py +162 -25
- setiastro/saspro/_generated/build_info.py +2 -1
- setiastro/saspro/abe.py +62 -11
- setiastro/saspro/aberration_ai.py +3 -3
- setiastro/saspro/add_stars.py +5 -2
- setiastro/saspro/astrobin_exporter.py +3 -0
- setiastro/saspro/astrospike_python.py +3 -1
- setiastro/saspro/autostretch.py +4 -2
- setiastro/saspro/backgroundneutral.py +60 -9
- setiastro/saspro/batch_convert.py +3 -0
- setiastro/saspro/batch_renamer.py +3 -0
- setiastro/saspro/blemish_blaster.py +3 -0
- setiastro/saspro/blink_comparator_pro.py +474 -251
- setiastro/saspro/cheat_sheet.py +50 -15
- setiastro/saspro/clahe.py +27 -1
- setiastro/saspro/comet_stacking.py +103 -38
- setiastro/saspro/convo.py +3 -0
- setiastro/saspro/copyastro.py +3 -0
- setiastro/saspro/cosmicclarity.py +70 -45
- setiastro/saspro/crop_dialog_pro.py +28 -1
- setiastro/saspro/curve_editor_pro.py +18 -0
- setiastro/saspro/debayer.py +3 -0
- setiastro/saspro/doc_manager.py +40 -17
- setiastro/saspro/fitsmodifier.py +3 -0
- setiastro/saspro/frequency_separation.py +8 -2
- setiastro/saspro/function_bundle.py +18 -16
- setiastro/saspro/generate_translations.py +715 -1
- setiastro/saspro/ghs_dialog_pro.py +3 -0
- setiastro/saspro/graxpert.py +3 -0
- setiastro/saspro/gui/main_window.py +364 -92
- setiastro/saspro/gui/mixins/dock_mixin.py +119 -7
- setiastro/saspro/gui/mixins/file_mixin.py +7 -0
- setiastro/saspro/gui/mixins/geometry_mixin.py +105 -5
- setiastro/saspro/gui/mixins/menu_mixin.py +29 -0
- setiastro/saspro/gui/mixins/toolbar_mixin.py +33 -10
- setiastro/saspro/gui/statistics_dialog.py +47 -0
- setiastro/saspro/halobgon.py +29 -3
- setiastro/saspro/histogram.py +3 -0
- setiastro/saspro/history_explorer.py +2 -0
- setiastro/saspro/i18n.py +22 -10
- setiastro/saspro/image_combine.py +3 -0
- setiastro/saspro/image_peeker_pro.py +3 -0
- setiastro/saspro/imageops/stretch.py +5 -13
- setiastro/saspro/isophote.py +3 -0
- setiastro/saspro/legacy/numba_utils.py +64 -47
- setiastro/saspro/linear_fit.py +3 -0
- setiastro/saspro/live_stacking.py +13 -2
- setiastro/saspro/mask_creation.py +3 -0
- setiastro/saspro/mfdeconv.py +5 -0
- setiastro/saspro/morphology.py +30 -5
- setiastro/saspro/multiscale_decomp.py +713 -256
- setiastro/saspro/nbtorgb_stars.py +12 -2
- setiastro/saspro/numba_utils.py +148 -47
- setiastro/saspro/ops/scripts.py +77 -17
- setiastro/saspro/ops/settings.py +1 -43
- setiastro/saspro/perfect_palette_picker.py +1 -0
- setiastro/saspro/pixelmath.py +6 -2
- setiastro/saspro/plate_solver.py +1 -0
- setiastro/saspro/remove_green.py +18 -1
- setiastro/saspro/remove_stars.py +136 -162
- setiastro/saspro/remove_stars_preset.py +55 -13
- setiastro/saspro/resources.py +36 -10
- setiastro/saspro/rgb_combination.py +1 -0
- setiastro/saspro/rgbalign.py +4 -4
- setiastro/saspro/save_options.py +1 -0
- setiastro/saspro/selective_color.py +79 -20
- setiastro/saspro/sfcc.py +50 -8
- setiastro/saspro/shortcuts.py +94 -21
- setiastro/saspro/signature_insert.py +3 -0
- setiastro/saspro/stacking_suite.py +924 -446
- setiastro/saspro/star_alignment.py +291 -331
- setiastro/saspro/star_spikes.py +116 -32
- setiastro/saspro/star_stretch.py +38 -1
- setiastro/saspro/stat_stretch.py +35 -3
- setiastro/saspro/status_log_dock.py +1 -1
- setiastro/saspro/subwindow.py +63 -2
- setiastro/saspro/supernovaasteroidhunter.py +3 -0
- setiastro/saspro/swap_manager.py +77 -42
- setiastro/saspro/translations/all_source_strings.json +4726 -0
- setiastro/saspro/translations/ar_translations.py +4096 -0
- setiastro/saspro/translations/de_translations.py +441 -446
- setiastro/saspro/translations/es_translations.py +278 -32
- setiastro/saspro/translations/fr_translations.py +280 -32
- setiastro/saspro/translations/hi_translations.py +3803 -0
- setiastro/saspro/translations/integrate_translations.py +38 -1
- setiastro/saspro/translations/it_translations.py +1211 -145
- setiastro/saspro/translations/ja_translations.py +556 -307
- setiastro/saspro/translations/pt_translations.py +3316 -3322
- setiastro/saspro/translations/ru_translations.py +3082 -0
- setiastro/saspro/translations/saspro_ar.qm +0 -0
- setiastro/saspro/translations/saspro_ar.ts +16019 -0
- setiastro/saspro/translations/saspro_de.qm +0 -0
- setiastro/saspro/translations/saspro_de.ts +14428 -133
- setiastro/saspro/translations/saspro_es.qm +0 -0
- setiastro/saspro/translations/saspro_es.ts +11503 -7821
- setiastro/saspro/translations/saspro_fr.qm +0 -0
- setiastro/saspro/translations/saspro_fr.ts +11168 -7812
- setiastro/saspro/translations/saspro_hi.qm +0 -0
- setiastro/saspro/translations/saspro_hi.ts +14855 -0
- setiastro/saspro/translations/saspro_it.qm +0 -0
- setiastro/saspro/translations/saspro_it.ts +14347 -7821
- setiastro/saspro/translations/saspro_ja.qm +0 -0
- setiastro/saspro/translations/saspro_ja.ts +14860 -137
- setiastro/saspro/translations/saspro_pt.qm +0 -0
- setiastro/saspro/translations/saspro_pt.ts +14904 -137
- setiastro/saspro/translations/saspro_ru.qm +0 -0
- setiastro/saspro/translations/saspro_ru.ts +11835 -0
- setiastro/saspro/translations/saspro_sw.qm +0 -0
- setiastro/saspro/translations/saspro_sw.ts +15237 -0
- setiastro/saspro/translations/saspro_uk.qm +0 -0
- setiastro/saspro/translations/saspro_uk.ts +15248 -0
- setiastro/saspro/translations/saspro_zh.qm +0 -0
- setiastro/saspro/translations/saspro_zh.ts +10581 -7812
- setiastro/saspro/translations/sw_translations.py +3897 -0
- setiastro/saspro/translations/uk_translations.py +3929 -0
- setiastro/saspro/translations/zh_translations.py +283 -32
- setiastro/saspro/versioning.py +36 -5
- setiastro/saspro/view_bundle.py +20 -17
- setiastro/saspro/wavescale_hdr.py +22 -1
- setiastro/saspro/wavescalede.py +23 -1
- setiastro/saspro/whitebalance.py +39 -3
- setiastro/saspro/widgets/minigame/game.js +991 -0
- setiastro/saspro/widgets/minigame/index.html +53 -0
- setiastro/saspro/widgets/minigame/style.css +241 -0
- setiastro/saspro/widgets/resource_monitor.py +263 -0
- setiastro/saspro/widgets/spinboxes.py +18 -0
- setiastro/saspro/widgets/wavelet_utils.py +52 -20
- setiastro/saspro/wimi.py +100 -80
- setiastro/saspro/wims.py +33 -33
- setiastro/saspro/window_shelf.py +2 -2
- {setiastrosuitepro-1.6.1.post1.dist-info → setiastrosuitepro-1.6.4.dist-info}/METADATA +15 -4
- {setiastrosuitepro-1.6.1.post1.dist-info → setiastrosuitepro-1.6.4.dist-info}/RECORD +139 -115
- {setiastrosuitepro-1.6.1.post1.dist-info → setiastrosuitepro-1.6.4.dist-info}/WHEEL +0 -0
- {setiastrosuitepro-1.6.1.post1.dist-info → setiastrosuitepro-1.6.4.dist-info}/entry_points.txt +0 -0
- {setiastrosuitepro-1.6.1.post1.dist-info → setiastrosuitepro-1.6.4.dist-info}/licenses/LICENSE +0 -0
- {setiastrosuitepro-1.6.1.post1.dist-info → setiastrosuitepro-1.6.4.dist-info}/licenses/license.txt +0 -0
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
|
-
"""
|
|
3
|
-
Chinese (Simplified) translations for Seti Astro Suite Pro.
|
|
4
|
-
"""
|
|
5
2
|
|
|
6
3
|
TRANSLATIONS_ZH = {
|
|
7
4
|
"ABEDialog": {
|
|
@@ -59,8 +56,33 @@ TRANSLATIONS_ZH = {
|
|
|
59
56
|
"Post-alignment failed: {0}": "后对齐失败:{0}",
|
|
60
57
|
},
|
|
61
58
|
"AstroSuiteProMainWindow": {
|
|
59
|
+
"Loading a project will close current views and replace desktop shortcuts.\nContinue?": "加载项目将关闭当前视图并替换桌面快捷方式。\n继续吗?",
|
|
60
|
+
"Toggle Display Auto-Stretch": "切换显示自动拉伸",
|
|
61
|
+
"Invert the Image": "反转图像",
|
|
62
|
+
"Focus the command search bar; Enter runs first match": "聚焦命令搜索栏;Enter运行首个匹配",
|
|
63
|
+
"Duplicate Image": "复制图像",
|
|
64
|
+
"Copy Zoom and Pan": "复制缩放和平移",
|
|
65
|
+
"Apply that image to the other as a mask": "将该图像作为蒙版应用于另一图像",
|
|
66
|
+
"Zoom to 100% (1:1)": "缩放至100% (1:1)",
|
|
67
|
+
"Switch to previously active view": "切换到上一个活动视图",
|
|
68
|
+
"Switch to next active view": "切换到下一个活动视图",
|
|
69
|
+
"Create a desktop shortcut for that action": "为此操作创建桌面快捷方式",
|
|
70
|
+
"Headless apply the shortcut's command/preset to a view": "无头应用快捷方式的命令/预设到视图",
|
|
71
|
+
"Multi-select shortcut buttons": "多选快捷按钮",
|
|
72
|
+
"Move selected shortcut buttons": "移动选定的快捷按钮",
|
|
73
|
+
"Select all shortcut buttons": "选择所有快捷按钮",
|
|
74
|
+
"Open files dialog": "打开文件对话框",
|
|
75
|
+
"Add dragged view as a new layer (on top)": "将拖动的视图添加为新图层(顶部)",
|
|
76
|
+
"Attach dragged image as mask to the selected layer": "将拖动的图像作为蒙版附加到选定图层",
|
|
77
|
+
"Draw a crop rectangle": "绘制裁剪矩形",
|
|
78
|
+
"Resize crop rectangle": "调整裁剪矩形大小",
|
|
79
|
+
"Rotate crop rectangle": "旋转裁剪矩形",
|
|
80
|
+
"View Bundles": "查看捆绑包",
|
|
81
|
+
"Function Bundles": "功能捆绑包",
|
|
82
|
+
"Delete selected shortcut buttons": "删除选定的快捷按钮",
|
|
62
83
|
"&About": "关于(&A)",
|
|
63
84
|
"&Edit": "编辑(&E)",
|
|
85
|
+
"&Exit": "退出(&X)",
|
|
64
86
|
"&File": "文件(&F)",
|
|
65
87
|
"&Functions": "功能(&U)",
|
|
66
88
|
"&Geometry": "几何变换(&G)",
|
|
@@ -75,26 +97,10 @@ TRANSLATIONS_ZH = {
|
|
|
75
97
|
"&Tools": "工具(&T)",
|
|
76
98
|
"&View": "视图(&V)",
|
|
77
99
|
"&What's In My...": "我的图像中有什么...(&W)",
|
|
78
|
-
"About...": "关于...",
|
|
79
|
-
"Clear All Shortcuts": "清除所有快捷方式",
|
|
80
|
-
"Clear List": "清除列表",
|
|
81
|
-
"Export Shortcuts...": "导出快捷方式...",
|
|
82
|
-
"Group A": "组 A",
|
|
83
|
-
"Group B": "组 B",
|
|
84
|
-
"Group C": "组 C",
|
|
85
|
-
"Group D": "组 D",
|
|
86
|
-
"Import Shortcuts...": "导入快捷方式...",
|
|
87
|
-
"Keyboard Shortcut Cheat Sheet...": "键盘快捷键速查表...",
|
|
88
|
-
"No recent images": "没有最近的图像",
|
|
89
|
-
"No recent projects": "没有最近的项目",
|
|
90
|
-
"None": "无",
|
|
91
|
-
"Open Recent Images": "最近的图像",
|
|
92
|
-
"Open Recent Projects": "最近的项目",
|
|
93
|
-
"Preferences...": "首选项...",
|
|
94
|
-
"&Exit": "退出(&X)",
|
|
95
100
|
"1:1": "1:1",
|
|
96
101
|
"ABE...": "自动背景提取...",
|
|
97
102
|
"Aberration Correction (AI)...": "像差校正(AI)...",
|
|
103
|
+
"About...": "关于...",
|
|
98
104
|
"Add Stars...": "添加星点...",
|
|
99
105
|
"Add diffraction spikes to detected stars": "为检测到的星点添加衍射尖峰",
|
|
100
106
|
"Add signatures/overlays and bake them into the active image": "添加签名/叠加层并烘焙到当前图像",
|
|
@@ -128,17 +134,23 @@ TRANSLATIONS_ZH = {
|
|
|
128
134
|
"Cascade Views": "层叠视图",
|
|
129
135
|
"Cascade all subwindows": "层叠所有子窗口",
|
|
130
136
|
"Check for Updates...": "检查更新...",
|
|
137
|
+
"Clear All Shortcuts": "清除所有快捷方式",
|
|
131
138
|
"Clear All Views": "关闭所有视图",
|
|
139
|
+
"Clear Console": "Clear Console",
|
|
140
|
+
"Clear List": "清除列表",
|
|
132
141
|
"Close all views and clear shortcuts": "关闭所有视图并清除快捷方式",
|
|
133
142
|
"Close all views and documents, keep desktop shortcuts": "关闭所有视图和文档,保留桌面快捷方式",
|
|
134
143
|
"Combine narrowband to RGB with optional OSC stars": "将窄带合成RGB(可选OSC星点)",
|
|
135
144
|
"Combine three mono images into RGB": "将三张单色图像合成RGB",
|
|
136
145
|
"Compare a stack of images by blinking": "通过闪烁比较图像堆叠",
|
|
146
|
+
"Console / Status": "Console / Status",
|
|
137
147
|
"Continuum Subtract (NB - scaled broadband)": "连续谱减除(窄带 - 缩放宽带)",
|
|
138
148
|
"Continuum Subtract...": "连续谱减除...",
|
|
139
149
|
"Contrast Limited Adaptive Histogram Equalization": "对比度限制自适应直方图均衡化",
|
|
140
150
|
"Convolution / Deconvolution...": "卷积/反卷积...",
|
|
151
|
+
"Copy All": "Copy All",
|
|
141
152
|
"Copy Astrometric Solution...": "复制天体测量解...",
|
|
153
|
+
"Copy Selected": "Copy Selected",
|
|
142
154
|
"Copy View (zoom/pan)": "复制视图(缩放/平移)",
|
|
143
155
|
"Cosmic Clarity": "宇宙清晰度",
|
|
144
156
|
"Cosmic Clarity Satellite...": "宇宙清晰度卫星...",
|
|
@@ -162,6 +174,8 @@ TRANSLATIONS_ZH = {
|
|
|
162
174
|
"Erosion, dilation, opening, and closing.": "腐蚀、膨胀、开运算和闭运算。",
|
|
163
175
|
"Evaluate expressions using open view names": "使用打开的视图名称计算表达式",
|
|
164
176
|
"Exoplanet Detector...": "系外行星检测器...",
|
|
177
|
+
"Explorer": "Explorer",
|
|
178
|
+
"Export Shortcuts...": "导出快捷方式...",
|
|
165
179
|
"Extract Luminance": "提取亮度",
|
|
166
180
|
"Extract R/G/B as three mono documents": "提取R/G/B为三个单色文档",
|
|
167
181
|
"FITS Header Batch Modifier...": "FITS头批量修改器...",
|
|
@@ -180,6 +194,10 @@ TRANSLATIONS_ZH = {
|
|
|
180
194
|
"GLIMR -- Isophote Modeler...": "GLIMR -- 等光度线建模器...",
|
|
181
195
|
"Generalized hyperbolic stretch (α/beta/gamma, LP/HP, pivot)": "广义双曲线拉伸(α/beta/γ、低通/高通、中心点)",
|
|
182
196
|
"Geometry": "几何变换",
|
|
197
|
+
"Group A": "组 A",
|
|
198
|
+
"Group B": "组 B",
|
|
199
|
+
"Group C": "组 C",
|
|
200
|
+
"Group D": "组 D",
|
|
183
201
|
"Halo-B-Gon...": "光晕消除...",
|
|
184
202
|
"Hard (target 0.50, σ 2)": "强硬 (目标 0.50, σ 2)",
|
|
185
203
|
"Hard-Display-Stretch": "强硬显示拉伸",
|
|
@@ -191,12 +209,14 @@ TRANSLATIONS_ZH = {
|
|
|
191
209
|
"Image Combine...": "图像合并...",
|
|
192
210
|
"Image Inspector and Focal Plane Analysis": "图像检查器和焦平面分析",
|
|
193
211
|
"Image Peeker...": "图像查看器...",
|
|
212
|
+
"Import Shortcuts...": "导入快捷方式...",
|
|
194
213
|
"Inspect and restore from the slot's history": "检查并从插槽历史恢复",
|
|
195
214
|
"Inspect star PSF/HFR and flux histograms (SEP)": "检查星点PSF/HFR和通量直方图(SEP)",
|
|
196
215
|
"Interactive blemish removal on the active view": "在当前视图上交互式移除瑕疵",
|
|
197
216
|
"Invert": "反转",
|
|
198
217
|
"Invert Mask": "反转蒙版",
|
|
199
218
|
"Invert image colors": "反转图像颜色",
|
|
219
|
+
"Keyboard Shortcut Cheat Sheet...": "键盘快捷键速查表...",
|
|
200
220
|
"Linear Fit...": "线性拟合...",
|
|
201
221
|
"Link Pan/Zoom": "链接平移/缩放",
|
|
202
222
|
"Link RGB channels": "链接 RGB 通道",
|
|
@@ -215,8 +235,13 @@ TRANSLATIONS_ZH = {
|
|
|
215
235
|
"NB->RGB Stars...": "窄带->RGB星点...",
|
|
216
236
|
"Neutralize background color balance using a sampled region": "使用采样区域中和背景色彩平衡",
|
|
217
237
|
"New Project": "新建项目",
|
|
238
|
+
"No recent images": "没有最近的图像",
|
|
239
|
+
"No recent projects": "没有最近的项目",
|
|
240
|
+
"None": "无",
|
|
218
241
|
"Normal (target 0.30, σ 5)": "正常 (目标 0.30, σ 5)",
|
|
219
242
|
"Open Convolution / Deconvolution": "打开卷积/反卷积",
|
|
243
|
+
"Open Recent Images": "最近的图像",
|
|
244
|
+
"Open Recent Projects": "最近的项目",
|
|
220
245
|
"Open SFCC (Pickles + Filters + Sensor QE)": "打开 SFCC (Pickles + 滤镜 + 传感器 QE)",
|
|
221
246
|
"Open Scripts Folder...": "打开脚本文件夹...",
|
|
222
247
|
"Open Scripts Forum (Discord)...": "打开脚本论坛 (Discord)...",
|
|
@@ -234,6 +259,7 @@ TRANSLATIONS_ZH = {
|
|
|
234
259
|
"Pixel Math...": "像素数学...",
|
|
235
260
|
"Plan targets by altitude, transit time, and lunar separation": "按高度、过中天时间和月球角距规划目标",
|
|
236
261
|
"Plate Solver...": "天体测量...",
|
|
262
|
+
"Preferences...": "首选项...",
|
|
237
263
|
"Presets": "预设",
|
|
238
264
|
"RGB Align...": "RGB对齐...",
|
|
239
265
|
"RGB Combination...": "RGB合成...",
|
|
@@ -266,6 +292,7 @@ TRANSLATIONS_ZH = {
|
|
|
266
292
|
"Save all views, histories, and shortcuts to a .sas file": "将所有视图、历史和快捷方式保存到.sas文件",
|
|
267
293
|
"Save the active image": "保存当前图像",
|
|
268
294
|
"Script Editor...": "脚本编辑器...",
|
|
295
|
+
"Select All Lines": "Select All Lines",
|
|
269
296
|
"Selective Color Correction...": "选择性色彩校正...",
|
|
270
297
|
"Set Sigma...": "设置西格玛...",
|
|
271
298
|
"Set Target Median...": "设置目标中值...",
|
|
@@ -283,12 +310,15 @@ TRANSLATIONS_ZH = {
|
|
|
283
310
|
"Stacking! Darks, Flats, Lights, Calibration, Drizzle, and more!!": "堆叠!暗场、平场、亮场、校准、Drizzle等等!!",
|
|
284
311
|
"Star Stretch...": "星点拉伸...",
|
|
285
312
|
"Star Stuff": "星点处理",
|
|
313
|
+
"Start a new project? This closes all views and clears desktop shortcuts.": "开始新项目?这将关闭所有视图并清除桌面快捷方式。",
|
|
286
314
|
"Statistical Stretch...": "统计拉伸...",
|
|
315
|
+
"Statistics...": "统计...",
|
|
287
316
|
"Stellar Alignment...": "星点对齐...",
|
|
288
317
|
"Stellar Register...": "星点注册...",
|
|
289
318
|
"Stretch the image using median/SD statistics": "使用中值/标准差统计拉伸图像",
|
|
290
319
|
"Subtract per-channel minimum.\nClick: active view\nAlt+Drag: drop onto a view": "减去每通道最小值。\n点击:当前视图\nAlt+拖动:放置到视图上",
|
|
291
320
|
"Supernova / Asteroid Hunter...": "超新星/小行星猎人...",
|
|
321
|
+
"System Monitor": "System Monitor",
|
|
292
322
|
"Tile Horizontally": "水平平铺",
|
|
293
323
|
"Tile Vertically": "垂直平铺",
|
|
294
324
|
"Tile Views": "平铺视图",
|
|
@@ -1091,6 +1121,14 @@ TRANSLATIONS_ZH = {
|
|
|
1091
1121
|
"Show System Log Panel": "显示系统日志面板",
|
|
1092
1122
|
"System Log": "系统日志",
|
|
1093
1123
|
},
|
|
1124
|
+
"DraggableToolBar": {
|
|
1125
|
+
"Create Desktop Shortcut": "Create Desktop Shortcut",
|
|
1126
|
+
"Hide this icon": "Hide this icon",
|
|
1127
|
+
"Lock Toolbar Icons": "Lock Toolbar Icons",
|
|
1128
|
+
"Reset hidden icons": "Reset hidden icons",
|
|
1129
|
+
"Show hidden…": "Show hidden…",
|
|
1130
|
+
"Tip: Alt+Drag to create": "Tip: Alt+Drag to create",
|
|
1131
|
+
},
|
|
1094
1132
|
"ExoPlanetWindow": {
|
|
1095
1133
|
"1: Load Raw Subs…": "1: 加载原始子帧…",
|
|
1096
1134
|
"1a: Calibrate && Align Subs": "1a: 校准并对齐子帧",
|
|
@@ -1186,6 +1224,17 @@ TRANSLATIONS_ZH = {
|
|
|
1186
1224
|
"Push HF": "推送高频",
|
|
1187
1225
|
"Push LF": "推送低频",
|
|
1188
1226
|
},
|
|
1227
|
+
"FunctionBundleDialog": {
|
|
1228
|
+
"Apply to Active View": "Apply to Active View",
|
|
1229
|
+
"Apply to View Bundle…": "Apply to View Bundle…",
|
|
1230
|
+
"Clear Steps": "Clear Steps",
|
|
1231
|
+
"Compress to Chip": "Compress to Chip",
|
|
1232
|
+
"Drag Bundle": "Drag Bundle",
|
|
1233
|
+
"Edit Preset…": "Edit Preset…",
|
|
1234
|
+
"Remove Selected": "Remove Selected",
|
|
1235
|
+
"▲ Move Up": "▲ Move Up",
|
|
1236
|
+
"▼ Move Down": "▼ Move Down",
|
|
1237
|
+
},
|
|
1189
1238
|
"GeometryMixin": {
|
|
1190
1239
|
"Active view has no image.": "活动视图没有图像。",
|
|
1191
1240
|
"Enter scaling factor (e.g., 0.5 for 50%, 2 for 200%):": "输入缩放因子(例如,0.5 表示 50%,2 表示 200%):",
|
|
@@ -1528,7 +1577,7 @@ TRANSLATIONS_ZH = {
|
|
|
1528
1577
|
"Status: ASTAP timed out.": "状态:ASTAP 超时。",
|
|
1529
1578
|
"Status: Astrometry.net failed ({0}).": "状态:Astrometry.net 失败 ({0})。",
|
|
1530
1579
|
"Status: Building WCS header from calibration…": "状态:正在从校准构建 WCS 头信息…",
|
|
1531
|
-
"Status: Downloading WCS file (with SIP) from Astrometry.net…": "状态:正在从 Astrometry.net 下载 WCS 文件(带 SIP)…"
|
|
1580
|
+
"Status: Downloading WCS file (with SIP) from Astrometry.net…": "状态:正在从 Astrometry.net 下载 WCS 文件(带 SIP)…",
|
|
1532
1581
|
"Status: Job assigned (ID {0}).": "状态:任务已分配 (ID {0})。",
|
|
1533
1582
|
"Status: Logging in to Astrometry.net…": "状态:正在登录 Astrometry.net…",
|
|
1534
1583
|
"Status: Login canceled (no API key).": "状态:登录已取消(无 API 密钥)。",
|
|
@@ -1701,32 +1750,48 @@ TRANSLATIONS_ZH = {
|
|
|
1701
1750
|
"ASTAP executable:": "ASTAP 可执行文件:",
|
|
1702
1751
|
"Astrometry.net API key:": "Astrometry.net API 密钥:",
|
|
1703
1752
|
"Check Now…": "立即检查…",
|
|
1753
|
+
"Chinese": "简体中文",
|
|
1704
1754
|
"Choose Background…": "选择背景…",
|
|
1705
1755
|
"Clear": "清除",
|
|
1706
1756
|
"Compute autostretch on a 16-bit histogram (smoother gradients).": "在 16 位直方图上计算自动拉伸(更平滑的渐变)。",
|
|
1707
1757
|
"Cosmic Clarity folder:": "Cosmic Clarity 文件夹:",
|
|
1708
1758
|
"Customize…": "自定义…",
|
|
1709
1759
|
"Edit custom colors and font": "编辑自定义颜色和字体",
|
|
1760
|
+
"English": "英语",
|
|
1761
|
+
"French": "法语",
|
|
1762
|
+
"German": "德语",
|
|
1710
1763
|
"GraXpert executable:": "GraXpert 可执行文件:",
|
|
1711
1764
|
"High-quality autostretch (16-bit; better gradients)": "高质量自动拉伸(16 位;更好的渐变)",
|
|
1765
|
+
"Italian": "意大利语",
|
|
1766
|
+
"Japanese": "日语",
|
|
1767
|
+
"Language changed. Please manually restart the application to apply the new language.": "语言已更改。请手动重启应用以应用新语言。",
|
|
1768
|
+
"Language:": "语言:",
|
|
1712
1769
|
"Pick a PNG or JPG to use as the application background": "选取一张 PNG 或 JPG 作为应用程序背景",
|
|
1770
|
+
"Portuguese": "葡萄牙语",
|
|
1713
1771
|
"Remove custom background and restore default": "移除自定义背景并恢复默认",
|
|
1772
|
+
"Restart required": "需要重启",
|
|
1714
1773
|
"Restore default updates URL": "恢复默认更新 URL",
|
|
1715
1774
|
"Run an update check immediately": "立即运行更新检查",
|
|
1716
1775
|
"Save desktop shortcuts on exit": "退出时保存桌面快捷方式",
|
|
1717
|
-
"StarNet executable:": "StarNet 可执行文件:",
|
|
1718
|
-
"English": "英语",
|
|
1719
|
-
"French": "法语",
|
|
1720
|
-
"Italian": "意大利语",
|
|
1721
1776
|
"Spanish": "西班牙语",
|
|
1722
|
-
"
|
|
1723
|
-
"Theme:": "主题:",
|
|
1724
|
-
"German": "德语",
|
|
1725
|
-
"Portuguese": "葡萄牙语",
|
|
1726
|
-
"Japanese": "日语",
|
|
1727
|
-
"Chinese": "简体中文",
|
|
1728
|
-
"Restart required": "需要重启",
|
|
1777
|
+
"StarNet executable:": "StarNet 可执行文件:",
|
|
1729
1778
|
"The application will now restart to apply the language change.": "应用程序现在将重新启动以应用语言更改。",
|
|
1779
|
+
"Theme:": "主题:",
|
|
1780
|
+
},
|
|
1781
|
+
"ShortcutButton": {
|
|
1782
|
+
"Clear Preset": "Clear Preset",
|
|
1783
|
+
"Delete": "Delete",
|
|
1784
|
+
"Edit Preset (JSON)": "Edit Preset (JSON)",
|
|
1785
|
+
"Edit Preset…": "Edit Preset…",
|
|
1786
|
+
"Invalid JSON": "Invalid JSON",
|
|
1787
|
+
"Name:": "Name:",
|
|
1788
|
+
"Preset must be a JSON object": "Preset must be a JSON object",
|
|
1789
|
+
"Preset saved": "Preset saved",
|
|
1790
|
+
"Preset stored on shortcut.": "Preset stored on shortcut.",
|
|
1791
|
+
"Preset:": "Preset:",
|
|
1792
|
+
"Rename Shortcut": "Rename Shortcut",
|
|
1793
|
+
"Rename…": "Rename…",
|
|
1794
|
+
"Run": "Run",
|
|
1730
1795
|
},
|
|
1731
1796
|
"SignatureInsertDialogPro": {
|
|
1732
1797
|
"Signature / Insert": "签名 / 插入",
|
|
@@ -3183,6 +3248,16 @@ TRANSLATIONS_ZH = {
|
|
|
3183
3248
|
"Strength:": "强度:",
|
|
3184
3249
|
"Target median:": "目标中值:",
|
|
3185
3250
|
},
|
|
3251
|
+
"StatisticsDialog": {
|
|
3252
|
+
"App Statistics": "应用统计",
|
|
3253
|
+
"Close": "关闭",
|
|
3254
|
+
"Days": "天",
|
|
3255
|
+
"Hours": "小时",
|
|
3256
|
+
"Images Opened:": "打开的图像:",
|
|
3257
|
+
"Minutes": "分钟",
|
|
3258
|
+
"Time Spent:": "花费时间:",
|
|
3259
|
+
"Tools Opened:": "打开的工具:",
|
|
3260
|
+
},
|
|
3186
3261
|
"StatusLogWindow": {
|
|
3187
3262
|
"Clear": "清除",
|
|
3188
3263
|
"Stacking Suite Log": "堆叠套件日志",
|
|
@@ -3479,6 +3554,18 @@ TRANSLATIONS_ZH = {
|
|
|
3479
3554
|
"You are running the latest version": "您正在运行最新版本",
|
|
3480
3555
|
"You're already running the latest version.": "您已经运行的是最新版本。",
|
|
3481
3556
|
},
|
|
3557
|
+
"ViewBundleDialog": {
|
|
3558
|
+
"Add Directory (Recursive)…": "Add Directory (Recursive)…",
|
|
3559
|
+
"Add Files…": "Add Files…",
|
|
3560
|
+
"Add from Open…": "Add from Open…",
|
|
3561
|
+
"Clear Views": "Clear Views",
|
|
3562
|
+
"Compress to Chip": "Compress to Chip",
|
|
3563
|
+
"Delete": "Delete",
|
|
3564
|
+
"Duplicate": "Duplicate",
|
|
3565
|
+
"New Bundle": "New Bundle",
|
|
3566
|
+
"Remove Selected": "Remove Selected",
|
|
3567
|
+
"View Bundles": "View Bundles",
|
|
3568
|
+
},
|
|
3482
3569
|
"WhatsInMyImage": {
|
|
3483
3570
|
"Analyze Image": "分析图像",
|
|
3484
3571
|
"Analyzing...": "正在分析...",
|
|
@@ -3588,6 +3675,10 @@ TRANSLATIONS_ZH = {
|
|
|
3588
3675
|
"Waxing": "盈",
|
|
3589
3676
|
"What's In My Sky": "我的天空中有什么",
|
|
3590
3677
|
},
|
|
3678
|
+
"WindowShelf": {
|
|
3679
|
+
"Minimized Views": "Minimized Views",
|
|
3680
|
+
"Untitled": "Untitled",
|
|
3681
|
+
},
|
|
3591
3682
|
"_AstrobinIdDelegate": {
|
|
3592
3683
|
"Enter AstroBin ID": "输入 AstroBin ID",
|
|
3593
3684
|
"Invalid ID format": "ID 格式无效",
|
|
@@ -3656,4 +3747,164 @@ TRANSLATIONS_ZH = {
|
|
|
3656
3747
|
"Success": "成功",
|
|
3657
3748
|
"View in Aladin": "在 Aladin 中查看",
|
|
3658
3749
|
},
|
|
3750
|
+
"WIMIDialog": {
|
|
3751
|
+
"Add Text": "添加文本",
|
|
3752
|
+
"Clear Annotations": "清除注释",
|
|
3753
|
+
"Clear Results": "清除结果",
|
|
3754
|
+
"Copy Object Information": "复制对象信息",
|
|
3755
|
+
"Delete Selected Items": "删除所选项目",
|
|
3756
|
+
"Delete Selected Object(s)": "删除所选对象",
|
|
3757
|
+
"Legend": "图例",
|
|
3758
|
+
"Open Website": "打开网站",
|
|
3759
|
+
"Select Annotation Color": "选择注释颜色",
|
|
3760
|
+
"Select Annotation Font": "选择注释字体",
|
|
3761
|
+
"Select Color": "选择颜色",
|
|
3762
|
+
"Select Font": "选择字体",
|
|
3763
|
+
"Show Annotation Tools": "显示注释工具",
|
|
3764
|
+
"Show Object Names": "显示对象名称",
|
|
3765
|
+
"Show Visible Objects Only": "仅显示可见对象",
|
|
3766
|
+
"Undo": "撤销",
|
|
3767
|
+
"Zoom to Object": "缩放到对象",
|
|
3768
|
+
"Copy RA/Dec to Clipboard": "复制 RA/Dec 到剪贴板",
|
|
3769
|
+
"Save Plate Solved Fits": "保存已解析的 FITS",
|
|
3770
|
+
"RA: N/A": "赤经: N/A",
|
|
3771
|
+
"Dec: N/A": "赤纬: N/A",
|
|
3772
|
+
"Orientation: N/A°": "方向: N/A°",
|
|
3773
|
+
"Mini Preview": "迷你预览",
|
|
3774
|
+
"Zoom In": "放大",
|
|
3775
|
+
"Zoom Out": "缩小",
|
|
3776
|
+
"Save Annotated Image": "保存带注释的图像",
|
|
3777
|
+
"Save Collage of Objects": "保存对象拼贴",
|
|
3778
|
+
"3D Distance Model": "3D 距离模型",
|
|
3779
|
+
"H-R Diagram": "赫罗图 (H-R Diagram)",
|
|
3780
|
+
"Objects Found: 0": "找到的对象: 0",
|
|
3781
|
+
"Right Click a Row for More Options": "右键单击一行以获取更多选项",
|
|
3782
|
+
"Ctrl+Click to add items, Alt+Click to measure distance": "按住 Ctrl+单击以添加项目,按住 Alt+单击以测量距离",
|
|
3783
|
+
"Draw Ellipse": "绘制椭圆",
|
|
3784
|
+
"Freehand (Lasso)": "手绘 (套索)",
|
|
3785
|
+
"Draw Rectangle": "绘制矩形",
|
|
3786
|
+
"Draw Arrow": "绘制箭头",
|
|
3787
|
+
"Place Celestial Compass": "放置天体罗盘",
|
|
3788
|
+
"Advanced Search Parameters": "高级搜索参数",
|
|
3789
|
+
"Object Type": "对象类型",
|
|
3790
|
+
"Description": "描述",
|
|
3791
|
+
"Toggle All": "切换全部",
|
|
3792
|
+
"Save List…": "保存列表…",
|
|
3793
|
+
"Load List…": "加载列表…",
|
|
3794
|
+
"Search Defined Region": "搜索定义区域",
|
|
3795
|
+
"Search Entire Image": "搜索整个图像",
|
|
3796
|
+
"Minor Planets / Comets": "小行星 / 彗星",
|
|
3797
|
+
"Database: not downloaded": "数据库: 未下载",
|
|
3798
|
+
"Download Catalog": "下载目录",
|
|
3799
|
+
"Search Minor Bodies": "搜索小天体",
|
|
3800
|
+
"Search scope:": "搜索范围:",
|
|
3801
|
+
"Defined Region": "定义区域",
|
|
3802
|
+
"Entire Image": "整个图像",
|
|
3803
|
+
"Asteroid H \u2264": "小行星 H \u2264",
|
|
3804
|
+
"Max asteroids:": "最大小行星数:",
|
|
3805
|
+
"Comet H \u2264": "彗星 H \u2264",
|
|
3806
|
+
"Max comets:": "最大彗星数:",
|
|
3807
|
+
"Target (optional):": "目标 (可选):",
|
|
3808
|
+
"Count Objects Brighter Than Limits": "统计亮度超过限制的对象",
|
|
3809
|
+
"Time offset (hours):": "时间偏移 (小时):",
|
|
3810
|
+
"Caution - Deep Vizier Search": "注意 - 深度 Vizier 搜索",
|
|
3811
|
+
"Search M.A.S.T Database": "搜索 M.A.S.T 数据库",
|
|
3812
|
+
"Load Image File": "加载图像文件",
|
|
3813
|
+
"Load from View": "从视图加载",
|
|
3814
|
+
"AutoStretch": "AutoStretch",
|
|
3815
|
+
"Shift+Click to define a search region": "Shift+单击定义搜索区域",
|
|
3816
|
+
"Query Simbad": "查询 Simbad",
|
|
3817
|
+
"Save CSV": "保存 CSV",
|
|
3818
|
+
"Advanced Search": "高级搜索",
|
|
3819
|
+
"Status: Ready": "状态: 就绪",
|
|
3820
|
+
},
|
|
3821
|
+
"WhatsInMySkyDialog": {
|
|
3822
|
+
"What's In My Sky": "我的天空有什么",
|
|
3823
|
+
"Latitude:": "纬度:",
|
|
3824
|
+
"Longitude (E+, W−):": "经度 (E+, W−):",
|
|
3825
|
+
"Date (YYYY-MM-DD):": "日期 (YYYY-MM-DD):",
|
|
3826
|
+
"Time (HH:MM):": "时间 (HH:MM):",
|
|
3827
|
+
"Time Zone:": "时区:",
|
|
3828
|
+
"Min Altitude (0–90°):": "最小高度 (0–90°):",
|
|
3829
|
+
"Catalog Filters:": "星表过滤器:",
|
|
3830
|
+
"Degrees": "度",
|
|
3831
|
+
"H:M:S / D:M:S": "时:分:秒 / 度:分:秒",
|
|
3832
|
+
"RA/Dec Format:": "赤经/赤纬格式:",
|
|
3833
|
+
"Calculate": "计算",
|
|
3834
|
+
"Status: Idle": "状态: 空闲",
|
|
3835
|
+
"Local Sidereal Time: 0.000": "本地恒星时: 0.000",
|
|
3836
|
+
"Lunar Phase: N/A": "月相: N/A",
|
|
3837
|
+
"Name": "名称",
|
|
3838
|
+
"RA": "赤经",
|
|
3839
|
+
"Dec": "赤纬",
|
|
3840
|
+
"Altitude": "高度",
|
|
3841
|
+
"Azimuth": "方位角",
|
|
3842
|
+
"Minutes to Transit": "中天时间 (分钟)",
|
|
3843
|
+
"Before/After Transit": "中天前/后",
|
|
3844
|
+
"Degrees from Moon": "离月亮角度",
|
|
3845
|
+
"Alt Name": "别名",
|
|
3846
|
+
"Type": "类型",
|
|
3847
|
+
"Magnitude": "星等",
|
|
3848
|
+
"Size (arcmin)": "大小 (角分)",
|
|
3849
|
+
"Add Custom Object": "添加自定义天体",
|
|
3850
|
+
"Save to CSV": "保存为 CSV",
|
|
3851
|
+
"Settings": "设置",
|
|
3852
|
+
"Enter number of objects to display:": "输入显示天体数量:",
|
|
3853
|
+
"Enter object name:": "输入天体名称:",
|
|
3854
|
+
"Enter RA (deg):": "输入赤经 (度):",
|
|
3855
|
+
"Enter Dec (deg):": "输入赤纬 (度):",
|
|
3856
|
+
"Added custom object: {}": "已添加自定义天体: {}",
|
|
3857
|
+
"Could not update catalog:\n{}": "无法更新目录:\n{}",
|
|
3858
|
+
"Save CSV File": "保存 CSV 文件",
|
|
3859
|
+
"CSV files (*.csv);;All Files (*)": "CSV 文件 (*.csv);;所有文件 (*)",
|
|
3860
|
+
"Data saved to {}": "数据已保存至 {}",
|
|
3861
|
+
"Invalid input: {}": "输入无效: {}",
|
|
3862
|
+
" Please verify your longitude/timezone.": " 请验证您的经度/时区。",
|
|
3863
|
+
"Inputs look consistent.": "输入看起来一致。",
|
|
3864
|
+
"Calculating…": "计算中…",
|
|
3865
|
+
"Lunar Phase: {}% illuminated": "月相: {}% 照明",
|
|
3866
|
+
"Status: {}": "状态: {}",
|
|
3867
|
+
},
|
|
3868
|
+
"ViewBundleDialog": {
|
|
3869
|
+
"View Bundles": "视图捆绑包",
|
|
3870
|
+
"Choose views to add:": "选择要添加的视图:",
|
|
3871
|
+
"Select all open views": "选择所有打开的视图",
|
|
3872
|
+
"New Bundle": "新捆绑包",
|
|
3873
|
+
"Duplicate": "复制",
|
|
3874
|
+
"Delete": "删除",
|
|
3875
|
+
"Clear Views": "清除视图",
|
|
3876
|
+
"Remove Selected": "移除选中",
|
|
3877
|
+
"Add from Open…": "从打开中添加…",
|
|
3878
|
+
"Add Files…": "添加文件…",
|
|
3879
|
+
"Add Directory (Recursive)…": "添加目录 (递归)…",
|
|
3880
|
+
"Compress to Chip": "压缩为芯片",
|
|
3881
|
+
"Drop views here to add • Drop shortcuts here to apply to THIS bundle": "拖放视图到此添加 • 拖放快捷方式到此应用到此捆绑包",
|
|
3882
|
+
"Bundles": "捆绑包",
|
|
3883
|
+
"Views in Selected Bundle": "选中捆绑包中的视图",
|
|
3884
|
+
"Delete Chip": "删除芯片",
|
|
3885
|
+
"Drag to move · Ctrl+drag to apply · Drop views/shortcuts here": "拖动移动 · Ctrl+拖动应用 · 拖放视图/快捷方式到此",
|
|
3886
|
+
},
|
|
3887
|
+
"FunctionBundleDialog": {
|
|
3888
|
+
"Function Bundles": "功能捆绑包",
|
|
3889
|
+
"New": "新建",
|
|
3890
|
+
"Duplicate": "复制",
|
|
3891
|
+
"Delete": "删除",
|
|
3892
|
+
"Drop shortcuts here to add steps": "拖放快捷方式到此添加步骤",
|
|
3893
|
+
"Edit Preset…": "编辑预设…",
|
|
3894
|
+
"Remove Selected": "移除选中",
|
|
3895
|
+
"Clear Steps": "清除步骤",
|
|
3896
|
+
"▲ Move Up": "▲ 上移",
|
|
3897
|
+
"▼ Move Down": "▼ 下移",
|
|
3898
|
+
"Drag Bundle": "拖动捆绑包",
|
|
3899
|
+
"Apply to Active View": "应用到活动视图",
|
|
3900
|
+
"Apply to View Bundle…": "应用到视图捆绑包…",
|
|
3901
|
+
"Compress to Chip": "压缩为芯片",
|
|
3902
|
+
"Delete Chip": "删除芯片",
|
|
3903
|
+
},
|
|
3904
|
+
"BatchRenamerDialog": {
|
|
3905
|
+
"Clear Selections": "清除选择",
|
|
3906
|
+
},
|
|
3907
|
+
"ShortcutButton": {
|
|
3908
|
+
"Delete": "删除",
|
|
3909
|
+
},
|
|
3659
3910
|
}
|
setiastro/saspro/versioning.py
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
|
+
# src/setiastro/saspro/versioning.py
|
|
1
2
|
from __future__ import annotations
|
|
2
3
|
import os
|
|
3
4
|
import sys
|
|
4
5
|
from pathlib import Path
|
|
5
6
|
|
|
6
|
-
|
|
7
7
|
def _read_pyproject_version(start: Path) -> str | None:
|
|
8
8
|
"""
|
|
9
9
|
Walk upward from 'start' looking for pyproject.toml,
|
|
10
10
|
return [tool.poetry].version if found.
|
|
11
11
|
"""
|
|
12
|
+
# Python 3.11+: tomllib; Python 3.10: tomli
|
|
12
13
|
try:
|
|
13
|
-
import tomllib as _toml #
|
|
14
|
+
import tomllib as _toml # type: ignore
|
|
14
15
|
except Exception:
|
|
15
16
|
try:
|
|
16
|
-
import tomli as _toml #
|
|
17
|
+
import tomli as _toml # type: ignore
|
|
17
18
|
except Exception:
|
|
18
19
|
_toml = None
|
|
19
20
|
|
|
@@ -40,7 +41,37 @@ def _read_pyproject_version(start: Path) -> str | None:
|
|
|
40
41
|
cur = cur.parent
|
|
41
42
|
return None
|
|
42
43
|
|
|
43
|
-
|
|
44
44
|
def get_app_version(dist_name: str = "setiastrosuitepro") -> str:
|
|
45
|
+
"""
|
|
46
|
+
Single source of truth for SASpro version.
|
|
47
|
+
|
|
48
|
+
Order:
|
|
49
|
+
0) build_info.py (best for PyInstaller frozen builds)
|
|
50
|
+
1) installed distribution metadata (best for pip installs)
|
|
51
|
+
2) pyproject.toml (best for running from source checkout)
|
|
52
|
+
3) safe fallback
|
|
53
|
+
"""
|
|
54
|
+
# 0) build_info (PyInstaller-friendly)
|
|
55
|
+
try:
|
|
56
|
+
from ._generated.build_info import APP_VERSION
|
|
57
|
+
if isinstance(APP_VERSION, str) and APP_VERSION.strip() and APP_VERSION.strip() != "0.0.0":
|
|
58
|
+
return APP_VERSION.strip()
|
|
59
|
+
except Exception:
|
|
60
|
+
pass
|
|
61
|
+
|
|
62
|
+
# 1) Installed package metadata
|
|
63
|
+
try:
|
|
64
|
+
from importlib.metadata import version as _dist_version
|
|
65
|
+
v = _dist_version(dist_name)
|
|
66
|
+
if v and v != "0.1.0":
|
|
67
|
+
return v
|
|
68
|
+
except Exception:
|
|
69
|
+
pass
|
|
70
|
+
|
|
71
|
+
# 2) Source tree pyproject.toml
|
|
72
|
+
here = Path(__file__).resolve()
|
|
73
|
+
v2 = _read_pyproject_version(here.parent)
|
|
74
|
+
if v2:
|
|
75
|
+
return v2
|
|
45
76
|
|
|
46
|
-
return "
|
|
77
|
+
return "0.0.0"
|
setiastro/saspro/view_bundle.py
CHANGED
|
@@ -174,7 +174,7 @@ class BundleChip(QWidget):
|
|
|
174
174
|
v.setSpacing(0)
|
|
175
175
|
self._title = QLabel(self._name)
|
|
176
176
|
self._title.setObjectName("chipTitle")
|
|
177
|
-
self._hint = QLabel("Drag to move · Ctrl+drag to apply · Drop views/shortcuts here")
|
|
177
|
+
self._hint = QLabel(self._panel.tr("Drag to move · Ctrl+drag to apply · Drop views/shortcuts here"))
|
|
178
178
|
self._hint.setObjectName("chipHint")
|
|
179
179
|
v.addWidget(self._title, 0, Qt.AlignmentFlag.AlignCenter)
|
|
180
180
|
v.addWidget(self._hint, 0, Qt.AlignmentFlag.AlignCenter)
|
|
@@ -265,7 +265,7 @@ class BundleChip(QWidget):
|
|
|
265
265
|
|
|
266
266
|
def contextMenuEvent(self, ev):
|
|
267
267
|
m = QMenu(self)
|
|
268
|
-
act_del = m.addAction("Delete Chip")
|
|
268
|
+
act_del = m.addAction(self._panel.tr("Delete Chip"))
|
|
269
269
|
act = m.exec(ev.globalPos())
|
|
270
270
|
if act is act_del:
|
|
271
271
|
try:
|
|
@@ -378,16 +378,17 @@ class SelectViewsDialog(QDialog):
|
|
|
378
378
|
super().__init__(parent)
|
|
379
379
|
self.setWindowTitle("Add Views to Bundle")
|
|
380
380
|
self.setWindowFlag(Qt.WindowType.Window, True)
|
|
381
|
+
self.setWindowModality(Qt.WindowModality.NonModal)
|
|
381
382
|
self.setModal(False)
|
|
382
383
|
#self.setAttribute(Qt.WidgetAttribute.WA_DeleteOnClose, True)
|
|
383
384
|
self._boxes: list[QCheckBox] = []
|
|
384
385
|
|
|
385
386
|
v = QVBoxLayout(self)
|
|
386
|
-
v.addWidget(QLabel("Choose views to add:"))
|
|
387
|
+
v.addWidget(QLabel(self.tr("Choose views to add:")))
|
|
387
388
|
v.setSpacing(6)
|
|
388
389
|
|
|
389
390
|
# NEW: "Select all" checkbox
|
|
390
|
-
self._select_all = QCheckBox("Select all open views")
|
|
391
|
+
self._select_all = QCheckBox(self.tr("Select all open views"))
|
|
391
392
|
self._select_all.toggled.connect(self._on_select_all_toggled)
|
|
392
393
|
v.addWidget(self._select_all)
|
|
393
394
|
|
|
@@ -509,7 +510,9 @@ class ViewBundleDialog(QDialog):
|
|
|
509
510
|
def __init__(self, parent: QWidget | None = None):
|
|
510
511
|
super().__init__(parent)
|
|
511
512
|
_pin_on_top_mac(self)
|
|
512
|
-
self.setWindowTitle("View Bundles")
|
|
513
|
+
self.setWindowTitle(self.tr("View Bundles"))
|
|
514
|
+
self.setWindowFlag(Qt.WindowType.Window, True)
|
|
515
|
+
self.setWindowModality(Qt.WindowModality.NonModal)
|
|
513
516
|
self.setModal(False)
|
|
514
517
|
self.resize(900, 540)
|
|
515
518
|
self.setAcceptDrops(True)
|
|
@@ -535,28 +538,28 @@ class ViewBundleDialog(QDialog):
|
|
|
535
538
|
self.docs.setContextMenuPolicy(Qt.ContextMenuPolicy.CustomContextMenu)
|
|
536
539
|
self.docs.customContextMenuRequested.connect(self._docs_context_menu)
|
|
537
540
|
self.docs.itemDoubleClicked.connect(self._docs_item_activated)
|
|
538
|
-
self.btn_new = QPushButton("New Bundle")
|
|
539
|
-
self.btn_dup = QPushButton("Duplicate")
|
|
540
|
-
self.btn_del = QPushButton("Delete")
|
|
541
|
-
self.btn_clear = QPushButton("Clear Views")
|
|
542
|
-
self.btn_remove_sel = QPushButton("Remove Selected")
|
|
543
|
-
self.btn_add_from_open = QPushButton("Add from Open…")
|
|
544
|
-
self.btn_add_files = QPushButton("Add Files…")
|
|
545
|
-
self.btn_add_dir = QPushButton("Add Directory (Recursive)…")
|
|
546
|
-
self.btn_compress = QPushButton("Compress to Chip")
|
|
547
|
-
self.drop_hint = QLabel("Drop views here to add • Drop shortcuts here to apply to THIS bundle")
|
|
541
|
+
self.btn_new = QPushButton(self.tr("New Bundle"))
|
|
542
|
+
self.btn_dup = QPushButton(self.tr("Duplicate"))
|
|
543
|
+
self.btn_del = QPushButton(self.tr("Delete"))
|
|
544
|
+
self.btn_clear = QPushButton(self.tr("Clear Views"))
|
|
545
|
+
self.btn_remove_sel = QPushButton(self.tr("Remove Selected"))
|
|
546
|
+
self.btn_add_from_open = QPushButton(self.tr("Add from Open…"))
|
|
547
|
+
self.btn_add_files = QPushButton(self.tr("Add Files…"))
|
|
548
|
+
self.btn_add_dir = QPushButton(self.tr("Add Directory (Recursive)…"))
|
|
549
|
+
self.btn_compress = QPushButton(self.tr("Compress to Chip"))
|
|
550
|
+
self.drop_hint = QLabel(self.tr("Drop views here to add • Drop shortcuts here to apply to THIS bundle"))
|
|
548
551
|
self.drop_hint.setAlignment(Qt.AlignmentFlag.AlignCenter)
|
|
549
552
|
self.drop_hint.setStyleSheet("color:#aaa; padding:6px; border:1px dashed #666; border-radius:6px;")
|
|
550
553
|
|
|
551
554
|
left = QVBoxLayout()
|
|
552
|
-
left.addWidget(QLabel("Bundles"))
|
|
555
|
+
left.addWidget(QLabel(self.tr("Bundles")))
|
|
553
556
|
left.addWidget(self.list, 1)
|
|
554
557
|
row = QHBoxLayout()
|
|
555
558
|
row.addWidget(self.btn_new); row.addWidget(self.btn_dup); row.addWidget(self.btn_del)
|
|
556
559
|
left.addLayout(row)
|
|
557
560
|
|
|
558
561
|
right = QVBoxLayout()
|
|
559
|
-
right.addWidget(QLabel("Views in Selected Bundle"))
|
|
562
|
+
right.addWidget(QLabel(self.tr("Views in Selected Bundle")))
|
|
560
563
|
right.addWidget(self.docs, 1)
|
|
561
564
|
|
|
562
565
|
rrow = QHBoxLayout()
|