Skip to content

History / search_and_replace

Revisions

  • Call a folio a sheet, as the English interface now does (PR #1216) Prose only: page URLs (folio_links, navigating_folios), image names, code, XML tag and variable names, and French menu names are unchanged. Readers arriving from older forum posts are told a sheet used to be called a folio. Generated by qelectrotech-docker tools/wiki-folio-sheet/rename.py.

    ispyisail committed Oct 1, 2026
  • Deepen the element editor and Search & Replace pages Both documented less than their subject. The element editor is a whole second application in 137 lines; Search & Replace listed six conductor fields where the code edits nineteen. Element editor, four new sections from the source: - the Parties and Profondeur panels, and the X/Y readout -- with the gotcha that the parts list stops generating past 200 primitives and shows a count instead, which is a setting (elementeditor/max-parts-element-editor-list) rather than a limit on the element; - getting drawings in and out: import an element to resize, import DXF, export SVG, and reload, which warns before discarding changes; - read-only editing, and that Save as is the way out; - reshaping handles, pointing at mouse_modifiers rather than repeating it, since Alt turning a rectangle into a polygon matters most here. Search & Replace: the conductor row now lists what applyChange() actually writes, and says what it does not. Cable and Bus are the only conductor properties it skips, in both the simple and advanced paths -- which is precisely the field you would want to rename across forty wires at once. Linked to discussion #934, where adding them is item one. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CaKympWT3owLotCpEN2CFj

    ispyisail committed Sep 19, 2026
  • Document Search & Replace and the nomenclature/summary query builder Both were confirmed still-real gaps from the survey: Search & Replace (sources/SearchAndReplace/, ~3,180 lines) was a single features.md bullet, and the query-builder UI (sources/dataBase/ui/, ~1,088 lines) was only named once inside project_database.md as a pointer to ElementQueryWidget, with no workflow documentation. ## Search & Replace The name is misleading and worth correcting up front: this is not text find/replace. SearchAndReplaceWorker::applyChange() shows the real semantics -- an empty field leaves a property untouched, a filled field replaces it wholesale (never a substring swap), and a reserved sentinel string (set via a per-field checkbox, never typed by the user) explicitly clears a field. Three states per field, not two. Traced through setupLineEdit()'s own doc comment and applyChange()'s three-branch behavior to be sure of this before writing it down. ## Nomenclature / summary query builder ElementQueryWidget (element_nomenclature_view) and SummaryQueryWidget (project_summary_view) are a visual SELECT builder: two-list column picker, seven filter modes with their exact SQL traced from on_m_filter_le_textEdited()'s switch statement (No filter/Not empty/ Empty/Contains/Does not contain/Is equal/Is not equal), group-by and count, an "Edit SQL query" escape hatch, and named saved configurations. Explicit about what it is not: not a general SQL client (bound to one view, can't change the FROM even in raw-SQL mode), and not the same column set as --export-bom, which was verified to hardcode its own fixed list in cli_export.cpp rather than sharing this widget's choices. Links the existing one-line Search & Replace mentions in features (all three languages) to the new page. EN/FR/DE for both.

    ispyisail committed Sep 11, 2026