Commit Graph

42 Commits

Author SHA1 Message Date
Kellermorph 69eb071f45 Merge upstream/master: translation wave plus generic device
Upstream moved 56 commits ahead of the last merge. Six files conflicted,
all of them files where upstream's French -> English tr() translation wave
touched lines we had also touched with the cable feature. Resolution rule
applied everywhere: take upstream's English source strings, keep our cable
additions.

Resolved:

- sources/ui/xrefpropertieswidget.ui : kept our structure (m_labels_gb
  pulled out of the display group, m_slave_row, the m_font_pb "Police..."
  button of the cable cross-reference) and mechanically applied upstream's
  20 English string replacements on top of it.

- sources/ui/xrefpropertieswidget.cpp : our version plus upstream's 7
  translated combo entries; the tr("Cable") item we add for the cable
  cross-reference type stays.

- sources/autoNum/ui/numparteditorw.cpp : upstream's English part names
  ("number format 1", "Sheet no.", "Plant", "Location", ...) for the
  number-format list, with our comment explaining why type 3 (cable) takes
  the conductor kinds of variable.

- sources/ui/configpage/configpages.cpp : upstream's English tab titles
  (Conductors / Elements / Sheets) plus our Cables tab.

- sources/ui/configpage/projectconfigpages.cpp : upstream's "Sheets" tab
  title plus our Cables tab block (single-rule SelectAutonumW(3)).

- sources/qetdiagrameditor.cpp : union of both sides - upstream's new
  "Add a generic device" action (icon, status tip, data id) and its
  English menu names ("File"/"Edit"/"Project"/"Display"), together with our
  cable action, the Numbering and Lists menus, the cable list actions and
  the CSV export in the Project menu.

Kept French: our own cable tr() source strings stay French for now. That
is the smaller change and the translation pass can follow separately.

Verified: full build 1065/1065, ctest 91/92 (only the pre-existing
headless tst_menubarkeyboard fails: no window manager, so Alt+F and F10
cannot open a menu bar), smoke start exit 124, no conflict marker left in
the tree.
2026-10-09 20:44:58 +02:00
Kellermorph 955dfb3a73 Merge remote-tracking branch 'upstream/master' into wiring-manager
Conflicts resolved in 24 files. Notable decisions:

- ico/icon-themes.qrc: upstream's icon folder restructure kept; the 36
  cable icon entries re-added under the new qet/qet-dark path scheme
  (XML valid, every referenced file exists).
- Toolbar system: upstream's DiagramToolbarSettings now owns the
  toolbar filling. The cable tool is registered as
  diagrameditor.add_cable (generic group loop) and listed on the
  "diagram" toolbar right after the auto-break conductor action,
  separated by a divider, exactly like before the merge.
- Paste: the cable lines of a copy are handed to
  PasteNumberingImport::push() as extra commands, so paste + cable
  lines + the numbering question stay ONE undo step on both paste
  paths (DiagramView::paste and DiagramEventAddPaste::commit).
- PDF links: upstream's deterministic link sorting kept together with
  the cable cross-reference injector (injectLinkTo -> links list).
- Element renumbering: upstream's ElementAutoNumSchemeCommand::renumber
  replaces the old formula-based body of
  QETProject::renumberElementsBySchemeTitle; the cable numbering rule
  API (cableAutoNum, axis priority, rule name) is kept in full.
- Auto-numbering pages: upstream's scheme management kept, the Câbles
  tab added as index 4 (changeToCableTab), both entry points
  changeToCable() and changeToElement() kept side by side.
- SelectAutonumW: dirty tracking and the contextEdited signal moved
  into upstream's insertPartRow() row API, so single-rule mode, the
  rule-removable button and "confirm without change leaves the project
  alone" keep working.
- xrefpropertieswidget: upstream's offset clamping kept; the cable
  branch (Texte field, Police button, hidden display options) kept;
  the stack-overlapping checkbox is hidden for cables.

Verified after the merge: build green (515/515, no errors), ctest
85/86 (only the pre-existing headless tst_menubarkeyboard failure),
offscreen smoke exit 124.
2026-10-09 14:09:08 +02:00
Kellermorph bf9b34398d Add cable management: drawing, cores, numbering, cross-references and cable list
Cables are drawn line objects (toolbar button next to the auto
break/reconnect button, click-move-click, right click cancels), not
components. The type comes from a CSV catalog following the material
list pattern (designation, cores, core colours, editable through the
entry dialog with "Nouvelle entrée" / "Modifier l'entrée").

Each core is bound to the wire its colour label stands on, and the
cable reference is generated per core and written into the Conductor
entry via Conductor::setCableReference(label, cable uuid, slot). The
conductor entry is where it has to live because the terminal strip
plan (Klemmenplan) consumes it in the next step.

Numbering: "Cables" rule under Programmeinstellungen/Neues
Projekt/Nummerierung auto (mirrored in project properties), literal
"W" fallback without a rule, French gate dialog when no rule exists,
Nummerierung menu with the renumber dialog (preferred axis, per-folio
counter, rule and counter state written back, hand-typed names ask,
whole-project scope).

Also included: label block and under-line texts with per-text font and
alignment plus the material-list cell margins, free-core placement and
right-click removal, claim questions for wires of other cables,
multi-selection drag as one undo step, type change with confirmation,
cross-references for type "Cable" (%f-%l%c, own font, clickable links
in exported PDFs), report propagation of the cable definition,
Listes menu (table of contents, material list, terminal strip manager,
terminal generator plugin, cable list), cable list with freely
selectable columns (installation/localisation of cable, start and end,
Blatt start/end, length, used cores...), CSV export dialog with column
pick and preview in the Projekt menu, script API (addTable kind
"cable_list", exportCableList) and a unit test for the type catalog.
2026-10-08 15:56:00 +02:00
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
Andre Rummler d76f3528ae AutoNum: a lot of changes
Schemas now get saved with a UUID and do not have to be looked up according to the form. They can be renamed and it gets reflected in existing elements. The GUI for
editing them is now much easier, e.g. forms can be reshuffled. A formula can be applied. Many options now also for conductors and sheets.
2026-10-03 18:09:33 +02:00
Andre Rummler 201bd4c5f6 Migration of signal/slot to method pointer continued. Mostly simple cases. 2026-08-09 01:34:22 +02:00
Andre Rummler 62ad49a6d3 Update old fashioned SIGNAL/SLOT to point-to-member. Only simple and clear cases. 2026-08-08 00:32:31 +02:00
Shane Ringrose 5cc2e165bf Fix #527: use ApplicationModal for Project Properties to prevent SIGSEGV
ProjectPropertiesDialog::exec() was using Qt::WindowModal, which only
blocks the parent ProjectView window.  The MDI workspace and its other
subwindows remained interactive, so actions like new_project or
close_project could fire while the dialog's config pages still held raw
QETProject* pointers — leading to a SIGSEGV when Qt's event loop later
dispatched a signal through one of those stale pointers.

Detected by the 8-hour GUI fuzzer: action sequence add_diagram_page →
flood_wires ×18 → new_project while Project Properties was open
produced exit code -11 (SIGSEGV) on the first of 12,717 actions.

Switch to Qt::ApplicationModal so no window can receive input while the
dialog is open.  Project Properties is a short-lived dialog; blocking
the whole application for its duration matches user expectation and
removes the lifetime hazard without requiring QPointer surgery across
four config-page classes.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-22 17:30:20 +12:00
Laurent Trinques 4044d04cc5 One year
Auto-build doxygen docs / doxygen (push) Has been cancelled
Auto-build doxygen docs / deploy (push) Has been cancelled
2026-01-16 15:24:35 +01:00
Laurent Trinques 77bfe84a4c One year 2025-01-04 13:37:40 +01:00
plc-user 0d44933432 correct more indentations / whitespace 2024-04-24 18:02:00 +02:00
Laurent Trinques e73cf633ce 2023->2024 2024-03-29 10:09:48 +01:00
joshua 470e4a059b Add widget to edit terminal strip item layout
The widget is available in the project properties editor.
WIP
2023-02-21 21:44:28 +01:00
Laurent Trinques 9afef79629 Update Copyright date 2023-01-01 17:05:57 +01:00
joshua e3d1467352 Remove minimum height of project properties dialog 2022-11-23 21:58:08 +01:00
joshua 789e195ace Fix include path from previous commit 2021-05-14 19:50:30 +02:00
Laurent Trinques ef58f34c14 Update Copyright date 2021-02-20 12:13:46 +01:00
joshua 2513961cd6 Revert "Update Copyright date"
This reverts commit d04bccc384.
2021-02-06 19:00:48 +01:00
Laurent Trinques d04bccc384 Update Copyright date 2021-02-06 18:33:42 +01:00
Simon De Backer 10c4c3d528 Wip Fix preprocessor on Cmake 2020-12-08 19:57:35 +01:00
Simon De Backer 5d92393ee7 Wrap code for better readability 2020-09-07 22:03:40 +02:00
Simon De Backer 928b56f2bf Improve code style, Wrap code for better readability 2020-08-16 14:23:59 +02:00
Simon De Backer d4ee161c07 Mod doc set style de same 2020-08-16 11:19:36 +02:00
Laurent Trinques e10ae8ce2e Update Copyright date 2020-06-15 17:42:53 +02:00
scorpio810 3ed7a4e63b Minor : update Copyright date
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@5705 bfdf4180-ca20-0410-9c96-a3a8aa849046
2019-01-13 16:56:12 +00:00
scorpio810 30bee81432 Revert r5449 and disable r5452 momentary : Load time from elements is
very slow


git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@5461 bfdf4180-ca20-0410-9c96-a3a8aa849046
2018-07-30 15:24:29 +00:00
scorpio810 b97b01d63c Apply clang-tidy's modernize-use-auto
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@5449 bfdf4180-ca20-0410-9c96-a3a8aa849046
2018-07-19 16:27:20 +00:00
scorpio810 54c85db29c Minor update Copyright year
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@4860 bfdf4180-ca20-0410-9c96-a3a8aa849046
2017-01-20 10:55:49 +00:00
dfochi 230700f845 Conductor Autonum now works with variables. Folio Autonumberings added to conductor autonum
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@4674 bfdf4180-ca20-0410-9c96-a3a8aa849046
2016-08-29 15:37:42 +00:00
scorpio810 4c4b094d3c m_properties_dialog restore Minimum Height(690);
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@4670 bfdf4180-ca20-0410-9c96-a3a8aa849046
2016-08-26 10:35:19 +00:00
scorpio810 5575959a9e Minor
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@4665 bfdf4180-ca20-0410-9c96-a3a8aa849046
2016-08-25 11:15:54 +00:00
blacksun 8780b6c489 titleblockpropertieswidget : edit and duplicate titleblock work in every case.
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@4618 bfdf4180-ca20-0410-9c96-a3a8aa849046
2016-08-10 06:55:16 +00:00
dfochi 3a7d210bcb Added AutoNumbering Management Tab. Update Policy support to Element.
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@4585 bfdf4180-ca20-0410-9c96-a3a8aa849046
2016-07-20 15:07:21 +00:00
dfochi 522759e8b3 Element autonumbering. New tab inside autonumbering menu to assign formulas to element label. XML containing elements labels according ISO/IEC 81346 (./elements/10_electric/qet_labels.xml
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@4563 bfdf4180-ca20-0410-9c96-a3a8aa849046
2016-07-05 20:14:14 +00:00
scorpio810 025fa64f67 Minor : update Copyright date
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@4481 bfdf4180-ca20-0410-9c96-a3a8aa849046
2016-05-13 17:40:36 +00:00
scorpio810 662e3b20d2 Restore commit 4476
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@4478 bfdf4180-ca20-0410-9c96-a3a8aa849046
2016-05-13 15:00:22 +00:00
dfochi f077361856 Reverting previous commit and going back to revision 4475.
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@4477 bfdf4180-ca20-0410-9c96-a3a8aa849046
2016-05-13 13:48:36 +00:00
dfochi fa4714b95d 1) Use arrow keys to navigate through the diagram editor. 2) Use PgUp, PgDn, Home and End keys to navigate through open folios. 3)Use Delete Key inside elements panel widget to delete diagrams. 4) Added a scroll area in auto numbering page.
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@4476 bfdf4180-ca20-0410-9c96-a3a8aa849046
2016-05-13 13:10:32 +00:00
scorpio810 81c684ca49 Merge Qt5 branch sources folder to trunk
-Cette ligne, et les suivantes ci-dessous, seront ignorées--

M    sources/aboutqet.cpp
M    sources/bordertitleblock.cpp
M    sources/conductorproperties.h
M    sources/configdialog.cpp
M    sources/configpages.cpp
M    sources/configpages.h
M    sources/createdxf.h
M    sources/diagram.cpp
M    sources/diagram.h
M    sources/diagramcommands.cpp
M    sources/diagramcommands.h
M    sources/diagramprintdialog.cpp
M    sources/diagramprintdialog.h
M    sources/diagramschooser.cpp
M    sources/diagramschooser.h
M    sources/diagramview.cpp
M    sources/diagramview.h
M    sources/dvevent/dveventaddimage.cpp
M    sources/dvevent/dveventaddshape.cpp
M    sources/editor/arceditor.cpp
M    sources/editor/arceditor.h
M    sources/editor/editorcommands.cpp
M    sources/editor/editorcommands.h
M    sources/editor/elementitemeditor.h
M    sources/editor/elementprimitivedecorator.cpp
M    sources/editor/elementscene.cpp
M    sources/editor/elementscene.h
M    sources/editor/elementview.cpp
M    sources/editor/ellipseeditor.cpp
M    sources/editor/ellipseeditor.h
M    sources/editor/esevent/eseventaddtext.cpp
M    sources/editor/esevent/eseventaddtextfield.cpp
M    sources/editor/esevent/eseventinterface.cpp
M    sources/editor/graphicspart/customelementpart.h
M    sources/editor/graphicspart/parttext.cpp
M    sources/editor/graphicspart/parttext.h
M    sources/editor/graphicspart/parttextfield.cpp
M    sources/editor/graphicspart/parttextfield.h
M    sources/editor/lineeditor.cpp
M    sources/editor/lineeditor.h
M    sources/editor/polygoneditor.cpp
M    sources/editor/qetelementeditor.cpp
M    sources/editor/qetelementeditor.h
M    sources/editor/rectangleeditor.cpp
M    sources/editor/rectangleeditor.h
M    sources/editor/styleeditor.cpp
M    sources/editor/styleeditor.h
M    sources/editor/terminaleditor.cpp
M    sources/editor/terminaleditor.h
M    sources/editor/texteditor.cpp
M    sources/editor/texteditor.h
M    sources/editor/textfieldeditor.cpp
M    sources/editor/textfieldeditor.h
M    sources/editor/ui/elementpropertieseditorwidget.cpp
M    sources/elementdefinition.cpp
M    sources/elementdeleter.cpp
M    sources/elementdeleter.h
M    sources/elementdialog.cpp
M    sources/elementscategorieslist.h
M    sources/elementscategorieswidget.cpp
M    sources/elementscategorieswidget.h
M    sources/elementscategory.cpp
M    sources/elementscategorydeleter.cpp
M    sources/elementscategorydeleter.h
M    sources/elementscategoryeditor.cpp
M    sources/elementscategoryeditor.h
M    sources/elementscollection.cpp
M    sources/elementscollectioncache.cpp
M    sources/elementspanel.cpp
M    sources/elementspanel.h
M    sources/elementspanelwidget.cpp
M    sources/elementspanelwidget.h
M    sources/elementtextsmover.h
M    sources/exportdialog.cpp
M    sources/exportdialog.h
M    sources/exportproperties.cpp
M    sources/exportpropertieswidget.cpp
M    sources/exportpropertieswidget.h
M    sources/genericpanel.cpp
M    sources/integrationmoveelementshandler.cpp
M    sources/integrationmoveelementshandler.h
M    sources/interactivemoveelementshandler.cpp
M    sources/nameslistwidget.cpp
M    sources/nameslistwidget.h
M    sources/newelementwizard.cpp
M    sources/newelementwizard.h
M    sources/nomenclature.cpp
M    sources/nomenclature.h
M    sources/projectconfigpages.cpp
M    sources/projectview.cpp
M    sources/projectview.h
M    sources/qet.cpp
M    sources/qetapp.cpp
M    sources/qetapp.h
M    sources/qetdiagrameditor.cpp
M    sources/qetdiagrameditor.h
M    sources/qetgraphicsitem/conductor.cpp
M    sources/qetgraphicsitem/conductortextitem.cpp
M    sources/qetgraphicsitem/customelement.cpp
M    sources/qetgraphicsitem/diagramimageitem.cpp
M    sources/qetgraphicsitem/diagramtextitem.cpp
M    sources/qetgraphicsitem/diagramtextitem.h
M    sources/qetgraphicsitem/element.cpp
M    sources/qetgraphicsitem/ghostelement.cpp
M    sources/qetgraphicsitem/qetshapeitem.cpp
M    sources/qetgraphicsitem/terminal.cpp
M    sources/qetgraphicsitem/terminal.h
M    sources/qeticons.cpp
M    sources/qeticons.h
M    sources/qetmainwindow.cpp
M    sources/qetmessagebox.cpp
M    sources/qetmessagebox.h
M    sources/qetprintpreviewdialog.cpp
M    sources/qetprintpreviewdialog.h
M    sources/qetproject.cpp
M    sources/qetsingleapplication.cpp
M    sources/qettabbar.h
M    sources/qfilenameedit.cpp
M    sources/qtextorientationspinboxwidget.cpp
M    sources/qtextorientationspinboxwidget.h
M    sources/qtextorientationwidget.cpp
M    sources/qtextorientationwidget.h
M    sources/richtext/richtexteditor.cpp
M    sources/richtext/richtexteditor_p.h
M    sources/richtext/ui_addlinkdialog.h
M    sources/titleblock/dimensionwidget.h
M    sources/titleblock/gridlayoutanimation.h
M    sources/titleblock/helpercell.h
M    sources/titleblock/integrationmovetemplateshandler.cpp
M    sources/titleblock/integrationmovetemplateshandler.h
M    sources/titleblock/qettemplateeditor.cpp
M    sources/titleblock/qettemplateeditor.h
M    sources/titleblock/templatecellsset.h
M    sources/titleblock/templatecellwidget.cpp
M    sources/titleblock/templatecellwidget.h
M    sources/titleblock/templatecommands.cpp
M    sources/titleblock/templatedeleter.cpp
M    sources/titleblock/templatedeleter.h
M    sources/titleblock/templatelocationchooser.cpp
M    sources/titleblock/templatelocationchooser.h
M    sources/titleblock/templatelocationsaver.cpp
M    sources/titleblock/templatelocationsaver.h
M    sources/titleblock/templatelogomanager.cpp
M    sources/titleblock/templatelogomanager.h
M    sources/titleblock/templateview.cpp
M    sources/titleblock/templatevisualcell.h
M    sources/titleblockcell.cpp
M    sources/titleblocktemplate.cpp
M    sources/treecoloranimation.h
M    sources/ui/conductorpropertieswidget.cpp
M    sources/ui/diagrampropertiesdialog.cpp
M    sources/ui/diagramselection.cpp
M    sources/ui/dialogautonum.cpp
M    sources/ui/dialogwaiting.cpp
M    sources/ui/elementpropertieswidget.cpp
M    sources/ui/elementselectorwidget.cpp
M    sources/ui/linksingleelementwidget.cpp
M    sources/ui/masterpropertieswidget.cpp
M    sources/ui/potentialtextsdialog.cpp
M    sources/ui/projectpropertiesdialog.cpp
M    sources/ui/selectautonumw.cpp
M    sources/ui/titleblockpropertieswidget.cpp
M    sources/ui/xrefpropertieswidget.cpp
M    sources/undocommand/changeelementinformationcommand.cpp


git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@3783 bfdf4180-ca20-0410-9c96-a3a8aa849046
2015-03-02 20:14:56 +00:00
scorpio810 eaff56b669 Update copyright date
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@3734 bfdf4180-ca20-0410-9c96-a3a8aa849046
2015-02-20 14:56:22 +00:00
blacksun 0f40e173ef New diagram properties dialog :
Merge the dialog of default configuration and the dialog of project configuration, into a single configuration dialog.


git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@3317 bfdf4180-ca20-0410-9c96-a3a8aa849046
2014-09-20 20:04:02 +00:00
blacksun bb7fbfca61 Diagram properties dialog: add button to open the conductor autonumérotation editor.
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@3274 bfdf4180-ca20-0410-9c96-a3a8aa849046
2014-08-15 13:16:58 +00:00