Commit Graph

5 Commits

Author SHA1 Message Date
ispyisail f5962ecd06 Make English the source language of the interface text
Every tr() source string in the code and the forms is now the English
text, and French is a translation (qet_fr.ts) like the other languages.
Generated, not hand-edited: master ef795a21e5 converted by
qet-en-source (harness 4c4ddc9).

3144 messages get an English source, 665 already had one, 0 left French; 8 shared-wording pairs disambiguated.
C++: 2904 literals in 233 files. Forms: 809 strings in 65 files. All 34 .ts files re-keyed; qet_fr.ts filled.
lupdate check: PASS. What each of 38 languages shows, old vs new: same 118266, English instead of French 38433, comment fallback 51, differences 0.
2026-10-08 12:50:13 +13:00
ispyisail 57c650e6e0 Fix 9 messages always shown in French; add missing English
Nine messages were never passed through tr(), so every user saw them in
French: the undo entries for grouping and ungrouping terminals, for
editing an arc (3), an ellipse, a rectangle and a PLC table in the
element editor, and the error box when integrating a title block
template fails. They are now wrapped, text unchanged.

qet_en.ts also lacked English for 63 messages added since the last
translations update (Customize dialog, mouse gestures, toolbar contents,
mirror, element scale, paste element information, paper format).
update_translations was run on qet_en.ts with lupdate's guessing
heuristics off, then the 72 new entries were translated. Most of the
diff is lupdate refreshing line numbers.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
(cherry picked from commit d0657f36db)
2026-10-08 12:49:39 +13:00
Kellermorph 23f8e261e5 Element editor: save the moved position of the PLC table
Moving the PLC table in the element editor was lost on save: the table
came back at (0, 0) when the element was reopened, and it was drawn at
(0, 0) in the diagram editor as well.

PartPlcTable::toXml() wrote m_rect.x()/y(), which are the coordinates
inside the item, and the move of a part never touches m_rect - it lives
in pos() (CustomElementGraphicPart::mouseMoveEvent, or the decorator for
a multi-selection). m_rect starts at the item origin, so x="0" y="0"
was written whatever the user did, while fromXml() reads those two
attributes as scene coordinates and hands them to setPos(). Every other
part translates first, see PartRectangle::toXml() with sceneTopLeft().

The top-left corner is now mapped to scene coordinates before being
written, which also covers a group transformation, since that one moves
m_rect while pos() stays put.

Both readers of the attribute need no change: ElementScene::fromXml()
for the editor and Element() for the runtime drawing of the table
(Element::drawPlcTable) already expect scene coordinates. Elements that
still carry x="0" y="0" keep loading as before.

Full build clean. Test suite: the same three failures as before the
change (tst_menubarkeyboard, tst_databasefromdocument,
tst_terminaluuids), each of them also failing on a build without this
patch, so they are unrelated.
2026-09-30 20:20:52 +02:00
Kellermorph 4f9474a05f PLC Fix scroll sync, data persistence, font defaults, copy/paste, and layout fixes 2026-08-06 07:33:39 +02:00
Kellermorph b3a8ae898e PLC Manager 2026-07-27 22:16:52 +02:00