Files
dxfmakros/dcl/tro_edit.dcl
T
s.ayadi 56c926cc07 TRO_EDIT/TRO_INSERT: ein Dialog mit Slot-Liste fuer alle TRO-Typen
- tro_edit.dcl: Kennung, Typ, Liste der Slots des Typs (aus *TRO-SLOTS*
  in tro_types.lsp) mit TeileId je Slot, Edit-Zeile, "Im Plan waehlen <"
  (naechstes Bauteil passender Art aus dem XRECORD SPS_SKEL_PARTS),
  +/- fuer Lagerlinien, Warnzeile (leer/doppelt/in anderem Marker)
- Typwechsel behaelt gleichnamige Slots; gespeichert im Attribut SLOTS
- TRO_INSERT nutzt denselben Dialog (Enter = Mitte der Bauteile),
  tro_insert.dcl entfaellt
- tro_types.lsp neu erzeugt (sps_skel tro_annotate --emit-lisp)
- Rueckweg nach sps_skel: tro_annotate --read-tros

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 14:35:19 +01:00

99 lines
2.0 KiB
Plaintext

// ============================================================
// tro_edit.dcl - TRO-Marker bearbeiten bzw. neu anlegen
// Ein Dialog fuer alle TRO-Typen: die Slot-Liste (Separatoren, Weichen,
// Scanner, Antrieb, Lagerlinien) baut Tro_Edit.lsp aus dem Typ auf
// (*TRO-SLOTS* aus tro_types.lsp, erzeugt von sps_skel
// lib/tro_annotate.py --emit-lisp). Die Zeile darunter bearbeitet den
// gewaehlten Slot; "Im Plan waehlen" schliesst den Dialog kurz
// (done_dialog 2) und oeffnet ihn nach der Auswahl wieder.
// Aufruf ueber c:TRO_EDIT und c:TRO_INSERT (Lisp/Tro_Edit.lsp).
// ============================================================
tro_edit : dialog {
label = "TRO bearbeiten";
: column {
: text {
key = "blockname";
label = "";
}
: row {
: edit_box {
key = "id";
label = "TRO-Kennung:";
edit_width = 18;
}
: popup_list {
key = "type";
label = "TRO-Typ:";
width = 30;
}
}
: boxed_column {
label = "Bauteile je Slot";
: list_box {
key = "slots";
height = 10;
width = 50;
tabs = "14";
fixed_width_font = true;
}
: row {
: edit_box {
key = "teil";
label = "TeileId:";
edit_width = 10;
}
: button {
key = "pick";
label = "Im Plan waehlen <";
}
: button {
key = "leeren";
label = "Leeren";
}
}
: row {
: button {
key = "plus";
label = "+ Lagerlinie";
}
: button {
key = "minus";
label = "- Lagerlinie";
}
: text {
key = "linien";
label = "";
width = 22;
}
}
}
: text {
key = "warnung";
label = "";
width = 62;
}
: text {
key = "fb";
label = "";
}
: text {
key = "hinweis";
label = "";
}
}
ok_cancel;
}