Files
qelectrotech-source-mirror/ico
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
..
2017-12-02 20:34:16 +00:00
2026-10-03 11:58:12 +02:00

Icons

QElectroTech loads most icons by name from an icon theme, for example QIcon::fromTheme("document-save"). An icon theme is a folder of icons sorted by size, with an index.theme file that lists the sizes. QET has two themes, qet for light windows and qet-dark for dark ones. misc/make_icon_themes.py builds both from the source folders below.

Folder Contents Source Built by a script License
qet/traced/ QET's icons as SVG, at 16 and 22 px, with smooth versions for larger sizes Traced from QET's former PNG icons, or drawn by contributors No GPL-2.0-or-later
qet/scalable/ QET's SVG icons drawn on a 24 px canvas; 16/ holds 16 px versions Drawn by contributors No GPL-2.0-or-later
qet/pages/ Settings page icons Drawn by contributors No GPL-2.0-or-later
breeze/ KDE Breeze icons, in folders by pixel size KDE Breeze misc/import_breeze_icons.py LGPL-3.0-or-later
breeze/added/ 16 px versions of Breeze icons that Breeze lacks or draws in another style Drawn by contributors in the Breeze style No LGPL-3.0-or-later
flags/ Language flags Damien Sorel's flag pack No Public domain
colors/ Color swatches for the element editor Contributed in 2020 No GPL-2.0-or-later
themes/ The qet and qet-dark themes; generated/ holds intermediate files Built from the folders above misc/make_icon_themes.py Same as the source file
breeze-icons/ App and file-type icons in the Breeze style Nuri No CC-BY-ND-3.0
256x256/ QET logo for windows, the tray and the About menu; app icon Nuri No CC-BY-ND-3.0
mac_icon/, windows_icon/ App and file-type icons for macOS and Windows Nuri No CC-BY-ND-3.0
splash.png Splash screen Nuri No CC-BY-ND-3.0

icon-themes.qrc lists the theme files for the Qt resource system and is written by misc/make_icon_themes.py. Do not edit it by hand.

copyright is the Debian copyright file for the whole project. It holds the full license and credit for each icon.

Adding an icon

  1. Put the SVG in qet/scalable/ and add it to SVGS in misc/make_icon_themes.py. For a Breeze icon, add its name to BREEZE there instead and run misc/import_breeze_icons.py.
  2. Run python3 misc/make_icon_themes.py.
  3. Load it with QIcon::fromTheme("<name>").
  4. Credit it in copyright.