i18n DE/EN + DossierSettings panel + English file renames
i18n: - src/i18n/de.json + en.json: 200+ keys covering all main panels - src/i18n/index.js: t(key, vars) reads window.DOSSIER_LANG - panel_base.py: injects window.DOSSIER_LANG from dossier_settings.json - EbenenManager, GeschossManager, AusschnitteApp, LayoutsApp: all context menus and main labels use t() DossierSettings panel: - DossierSettingsApp.jsx: language toggle (DE/EN pill) + launcher status - toolbar.py: OPEN_SETTINGS opens new Rhino-hosted satellite window, SAVE_LANG writes lang to dossier_settings.json + reloads all panels File renames (JSX → English): - ZeichnungsebenenApp → DrawingLevelsApp - GeschossManager/Dialog/Settings → Floor* - AusschnitteApp/Settings → Viewports* - EbenenManager/Settings → Layer* - GestaltungApp → StylesApp, OberleisteApp → ToolbarApp - WerkzeugeApp → ToolsApp, DimensionenApp → DimensionsApp - MassstabApp → ScaleApp, KameraApp → CameraApp - MasseSettingsApp → UnitsSettingsApp - ConfirmDeleteEbene → ConfirmDeleteLayer - AusschnittLayerDialog → ViewportLayerDialog Python module renames: - rhinopanel.py → layers_panel.py - oberleiste.py → toolbar.py - gestaltung.py → styles.py - werkzeuge.py → tools.py - dimensionen.py → dimensions.py - startup.py _MODULE_TO_PY updated, all cross-imports fixed
This commit is contained in:
+12
-12
@@ -771,7 +771,7 @@ def _find_ebene_sublayer_name(doc, keywords, default_code, default_name,
|
||||
print("[ELEMENTE] build_layers nach auto-add:", ex)
|
||||
# Ebenen-Manager UI mit-informieren via broadcast_state
|
||||
try:
|
||||
import rhinopanel
|
||||
import layers_panel as rhinopanel
|
||||
rhinopanel._broadcast_state(doc)
|
||||
except Exception as ex:
|
||||
print("[ELEMENTE] broadcast_state:", ex)
|
||||
@@ -866,7 +866,7 @@ def _ensure_referenz_child_in_doc(doc, parent_code, parent_keywords,
|
||||
z_raw = doc.Strings.GetValue("dossier_zeichnungsebenen")
|
||||
zlist = json.loads(z_raw) if z_raw else []
|
||||
if zlist: layer_builder.build_layers(doc, zlist, ebenen)
|
||||
import rhinopanel
|
||||
import layers_panel as rhinopanel
|
||||
rhinopanel._broadcast_state(doc)
|
||||
except Exception as ex:
|
||||
print("[ELEMENTE] _ensure_referenz_child:", ex)
|
||||
@@ -953,7 +953,7 @@ def _ensure_oeff_ebenen_in_doc(doc):
|
||||
z_raw = doc.Strings.GetValue("dossier_zeichnungsebenen")
|
||||
zlist = json.loads(z_raw) if z_raw else []
|
||||
if zlist: layer_builder.build_layers(doc, zlist, ebenen)
|
||||
import rhinopanel
|
||||
import layers_panel as rhinopanel
|
||||
rhinopanel._broadcast_state(doc)
|
||||
except Exception as ex:
|
||||
print("[ELEMENTE] _ensure_oeff_ebenen_in_doc build:", ex)
|
||||
@@ -3641,7 +3641,7 @@ def _get_all_materials(doc):
|
||||
merged[n].setdefault("uvScaleM", 1.0)
|
||||
merged[n].setdefault("textures", {})
|
||||
try:
|
||||
import rhinopanel
|
||||
import layers_panel as rhinopanel
|
||||
ps = rhinopanel.load_project_settings(doc) if doc else None
|
||||
if isinstance(ps, dict):
|
||||
for m in ps.get("materials", []):
|
||||
@@ -3657,7 +3657,7 @@ def _get_all_wand_styles(doc):
|
||||
"""Liefert alle Wand-Stile aus den Project-Settings. Wenn keine
|
||||
konfiguriert (auch keine Defaults greifbar), leere Liste."""
|
||||
try:
|
||||
import rhinopanel
|
||||
import layers_panel as rhinopanel
|
||||
ps = rhinopanel.load_project_settings(doc) if doc else None
|
||||
if isinstance(ps, dict):
|
||||
return list(ps.get("wand_styles", []) or [])
|
||||
@@ -13337,7 +13337,7 @@ class ElementeBridge(panel_base.BaseBridge):
|
||||
# Projekt-Adresse als Vorschlag fuer die Adress-Suche
|
||||
project_address = ""
|
||||
try:
|
||||
import rhinopanel
|
||||
import layers_panel as rhinopanel
|
||||
ps = rhinopanel.load_project_settings(doc) if doc else None
|
||||
if isinstance(ps, dict):
|
||||
project_address = (ps.get("project", {}) or {}).get("address") or ""
|
||||
@@ -14223,7 +14223,7 @@ class ElementeBridge(panel_base.BaseBridge):
|
||||
zlist = json.loads(z_raw) if z_raw else []
|
||||
if zlist:
|
||||
layer_builder.build_layers(doc, zlist, ebenen)
|
||||
import rhinopanel
|
||||
import layers_panel as rhinopanel
|
||||
rhinopanel._broadcast_state(doc)
|
||||
except Exception as ex:
|
||||
self._push_log(" swisstopo-ebenen build: {}".format(ex))
|
||||
@@ -14317,7 +14317,7 @@ class ElementeBridge(panel_base.BaseBridge):
|
||||
# UI informieren — broadcast_state schickt STATE_SYNC an
|
||||
# ebenen_bridge_ref + zeichnungsebenen_bridge_ref
|
||||
try:
|
||||
import rhinopanel
|
||||
import layers_panel as rhinopanel
|
||||
rhinopanel._broadcast_state(doc)
|
||||
except Exception as ex:
|
||||
self._push_log("broadcast_state: {}".format(ex))
|
||||
@@ -14660,7 +14660,7 @@ class ElementeBridge(panel_base.BaseBridge):
|
||||
if zlist:
|
||||
import layer_builder
|
||||
layer_builder.build_layers(doc, zlist, ebenen)
|
||||
import rhinopanel
|
||||
import layers_panel as rhinopanel
|
||||
rhinopanel._broadcast_state(doc)
|
||||
except Exception as ex:
|
||||
self._push_log("osm-ebenen build: {}".format(ex))
|
||||
@@ -16679,7 +16679,7 @@ def _migrate_plangrafik_60_to_80_once(doc):
|
||||
except Exception as ex:
|
||||
print("[ELEMENTE] build_layers nach Plangrafik-Migration:", ex)
|
||||
try:
|
||||
import rhinopanel as _rp
|
||||
import layers_panel as _rp
|
||||
_rp._broadcast_state(doc)
|
||||
except Exception: pass
|
||||
|
||||
@@ -16789,7 +16789,7 @@ def _migrate_layer_caps_once(doc):
|
||||
except Exception as ex:
|
||||
print("[ELEMENTE] build_layers nach CAPS-Migration:", ex)
|
||||
try:
|
||||
import rhinopanel as _rp
|
||||
import layers_panel as _rp
|
||||
_rp._broadcast_state(doc)
|
||||
except Exception: pass
|
||||
|
||||
@@ -16874,7 +16874,7 @@ def _migrate_referenz_layer_once(doc):
|
||||
# nicht neu angelegt hat (z.B. weil er schon existiert) wird das
|
||||
# Panel sonst nicht neu gerendert.
|
||||
try:
|
||||
import rhinopanel
|
||||
import layers_panel as rhinopanel
|
||||
rhinopanel._broadcast_state(doc)
|
||||
except Exception: pass
|
||||
except Exception as ex:
|
||||
|
||||
Reference in New Issue
Block a user