mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2026-10-02 08:24:14 +02:00
Let a script build a terminal strip
terminalStrips() the project's strips, in its own order addTerminalStrip() AddTerminalStripCommand, as the creation dialog does removeTerminalStrip() RemoveTerminalStripCommand addTerminalToStrip() AddTerminalToStripCommand Only terminal-type elements can be added, the restriction the editor enforces by construction; anything else, or a terminal already on a strip, or a bad index, declines with a reason. Verified: two terminal elements placed and added, listing shows 2 terminals, removal and undo, and the strip with its terminals survives save and reload. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -150,6 +150,12 @@ class QetShapeItem;
|
||||
depend on. The underlying tables are how the cache happens to be
|
||||
arranged today, and a column may move. tables() lists both so a
|
||||
script can see what it is querying rather than guess.
|
||||
- @b Terminal @b strips: create a strip, put terminal-type elements on
|
||||
it, remove it. Strips are addressed by index into terminalStrips(),
|
||||
which is the project's own order (unlike texts and shapes it is not
|
||||
re-sorted) and does shift when one is removed. Only elements whose
|
||||
link type is "terminal" can be added, the same restriction the
|
||||
editor enforces by construction.
|
||||
- @b Navigating and @b messaging: select an element, zoom the active
|
||||
view, and show the user a message. Deliberately narrow: selection and
|
||||
messaging work with no view at all (headless `--run`); zoom is a no-op
|
||||
@@ -269,6 +275,14 @@ class QetScriptApi : public QObject
|
||||
Q_INVOKABLE bool setFolioProperty(int folioIndex, const QString &property, const QString &value);
|
||||
Q_INVOKABLE QString folioProperty(int folioIndex, const QString &property) const;
|
||||
|
||||
// -- terminal strips (borniers) --
|
||||
Q_INVOKABLE QStringList terminalStrips() const;
|
||||
Q_INVOKABLE int addTerminalStrip(const QString &installation, const QString &location,
|
||||
const QString &name);
|
||||
Q_INVOKABLE bool removeTerminalStrip(int stripIndex);
|
||||
Q_INVOKABLE bool addTerminalToStrip(int stripIndex, int folioIndex,
|
||||
const QString &elementUuid);
|
||||
|
||||
// -- folios --
|
||||
Q_INVOKABLE int addFolio();
|
||||
Q_INVOKABLE bool setFolioTitle(int folioIndex, const QString &title);
|
||||
|
||||
Reference in New Issue
Block a user