From 4bd9b6b212fddc84d8cafa85491827e1192ab908 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Sat, 8 Aug 2026 21:06:05 +1200 Subject: [PATCH 01/26] Fix crash changing a dynamic text's color and confirming with Enter Bugtracker #323: crash changing a label's color, but only when confirmed via Enter -- clicking the dialog's own OK button with the mouse doesn't crash. Reported on Windows 11 and Debian, with "QObject::installEventFilter(): Cannot filter events for objects in a different thread" immediately before the segfault. Root cause: DynamicTextItemDelegate::createEditor()'s color case constructed a QColorDialog and returned it directly as the item view's editor widget for the color cell -- unlike every other case in this same function, which returns a small inline widget (QSpinBox, QComboBox, or, for the adjacent font case, a plain placeholder). A QColorDialog is not designed to be used this way: it is not one of the objectNames this delegate's own eventFilter() special-cases, so Enter is handled by the base QStyledItemDelegate::eventFilter() as an ordinary "commit and destroy this small editor" trigger -- racing the dialog's own internal OK-button accept/close path, which on Windows can hand off to the native color picker. Clicking OK with the mouse doesn't go through the same key-press path, which is why only Enter crashed. Verified structurally: an embedded QColorDialog editor is a *child* widget of the view's viewport rather than a proper top-level dialog (confirmed with a standalone Qt program driving the real delegate through QAbstractItemView::edit() -- searching QApplication's top-level widgets never found it, only a search of the viewport's children did), which is the same "used as something it isn't" pattern, just observed a different way. Fix: mirror the font case immediately above -- resolve the color via the static, blocking QColorDialog::getColor() inside createEditor(), and hand back a plain QWidget with the result stashed in two properties (mirroring the font case's "ok" property) for setModelData() to read. By the time the view processes any commit trigger, the "editor" is an inert placeholder with no dialog state left to race. Verified end-to-end with the same standalone program: creates the model item, triggers editing, finds the real (top-level, this time) QColorDialog, clicks its actual OK button, confirms the color lands on the placeholder's properties, sends the editor a synthetic Enter keypress (the exact trigger from the bug report), and confirms the final committed value in the model matches the picked color. Also confirmed a full Release build (333/333) with no new warnings. --- sources/ui/dynamicelementtextmodel.cpp | 44 +++++++++++++++++++++----- 1 file changed, 36 insertions(+), 8 deletions(-) diff --git a/sources/ui/dynamicelementtextmodel.cpp b/sources/ui/dynamicelementtextmodel.cpp index f33128729..e210ffba5 100644 --- a/sources/ui/dynamicelementtextmodel.cpp +++ b/sources/ui/dynamicelementtextmodel.cpp @@ -1686,9 +1686,37 @@ QWidget *DynamicTextItemDelegate::createEditor( } case DynamicElementTextModel::color: { - QColorDialog *cd = new QColorDialog(index.data(Qt::EditRole).value(), parent); - cd->setObjectName("color_dialog"); - return cd; + /* Like the font case above: run the dialog synchronously via + * its static convenience function and stash the result on a + * plain placeholder widget, rather than handing back the + * QColorDialog itself as the item view's "editor". + * + * The item view's own Enter/Escape handling (the base + * QStyledItemDelegate::eventFilter(), since "color_dialog" + * isn't one of the objectNames special-cased in this + * delegate's own eventFilter() above) treats whatever + * createEditor() returned as a small inline editor it + * commits and destroys directly on a key press. A QColorDialog + * is not that: on Windows it can hand off to the native + * color picker, whose own accept/close path then races the + * view's -- pressing Enter fired both, one tearing down an + * object the other was still using (case #323 on the bug + * tracker: "QObject::installEventFilter(): Cannot filter + * events for objects in a different thread" immediately + * followed by a segfault; clicking the dialog's own OK + * button with the mouse didn't reach the view's key + * handling, so it didn't crash). Resolving the dialog + * before returning removes the second, competing teardown + * path entirely. */ + QColor color = QColorDialog::getColor(index.data(Qt::EditRole).value(), parent); + QWidget *w = new QWidget(parent); + if (color.isValid()) + { + w->setProperty("color", color); + w->setProperty("ok", true); + } + w->setObjectName("color_dialog"); + return w; } case DynamicElementTextModel::pos: { @@ -1788,15 +1816,15 @@ void DynamicTextItemDelegate::setModelData( { if(QStandardItem *qsi = qsim->itemFromIndex(index)) { - QColorDialog *cd = static_cast (editor); - if (cd->result() == QDialog::Accepted) + if (editor->property("ok").toBool() == true) { - qsi->setData(cd->selectedColor(), Qt::EditRole); - qsi->setData(cd->selectedColor(), Qt::ForegroundRole); + QColor color = editor->property("color").value(); + qsi->setData(color, Qt::EditRole); + qsi->setData(color, Qt::ForegroundRole); } return; } - + } } else if (editor->objectName() == "info_text") From b0b5345e158d5ed56565146b2b5d3ff94543f663 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Mon, 10 Aug 2026 20:29:44 +1200 Subject: [PATCH 02/26] Commit font/color edits immediately instead of waiting for an unrelated click plc-user on PR #693: the crash is fixed, but the color/font field and the on-diagram text no longer update until you leave the properties list and click in the diagram -- previously it updated as soon as you clicked OK. That's a side effect of the crash fix itself. The old, crashing code returned a *live* QColorDialog as the item view's editor; clicking its OK button called accept()/hide() on it, and hiding the active editor happens to trip the base delegate's own focus-lost commit path -- so the value applied immediately, racily, as a side effect of the same mechanism that crashed on Enter. The fix (commit 4bd9b6b21) replaced that with running the dialog synchronously inside createEditor() and returning an inert placeholder with the result stashed in a property. Correct for the crash, but it also removed that accidental commit trigger: the placeholder never had focus to lose, so nothing tells the view to read the value back until some unrelated interaction (clicking away) incidentally triggers it. Fix: explicitly emit commitData()/closeEditor() for the resolved editor, deferred via QTimer::singleShot(0, ...) since the view only registers createEditor()'s return value as "the active editor" after createEditor() itself returns -- emitting synchronously, before returning, would target a widget the view doesn't know about yet. Applied to both font and color, since both share the exact same "resolve synchronously in createEditor(), return an inert placeholder" shape and thus the exact same gap; font just hadn't been reported. Verified with the same standalone harness from the crash fix (real QTreeView + DynamicTextItemDelegate + QAbstractItemView::edit()), this time deliberately *not* sending the synthetic Enter keypress the crash-fix verification needed: clicks the dialog's real OK button, lets the event loop run, and confirms the picked color lands in the model on its own. Also reconfirmed the crash fix itself still holds (clean exit, no synthetic-Enter needed either way now) and did a full Release build (504/504) with no new warnings. --- sources/ui/dynamicelementtextmodel.cpp | 12 ++++++++++++ sources/ui/dynamicelementtextmodel.h | 15 +++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/sources/ui/dynamicelementtextmodel.cpp b/sources/ui/dynamicelementtextmodel.cpp index e210ffba5..6ad12570a 100644 --- a/sources/ui/dynamicelementtextmodel.cpp +++ b/sources/ui/dynamicelementtextmodel.cpp @@ -36,6 +36,7 @@ #include #include #include +#include #include static int src_txt_row = 0; @@ -1595,6 +1596,15 @@ DynamicTextItemDelegate::DynamicTextItemDelegate(QObject *parent) : QStyledItemDelegate(parent) {} +void DynamicTextItemDelegate::commitAndCloseDeferred(QWidget *editor) const +{ + auto *self = const_cast(this); + QTimer::singleShot(0, self, [self, editor]() { + emit self->commitData(editor); + emit self->closeEditor(editor); + }); +} + QWidget *DynamicTextItemDelegate::createEditor( QWidget *parent, const QStyleOptionViewItem &option, @@ -1682,6 +1692,7 @@ QWidget *DynamicTextItemDelegate::createEditor( w->setProperty("ok", ok); } w->setObjectName("font_dialog"); + commitAndCloseDeferred(w); return w; } case DynamicElementTextModel::color: @@ -1716,6 +1727,7 @@ QWidget *DynamicTextItemDelegate::createEditor( w->setProperty("ok", true); } w->setObjectName("color_dialog"); + commitAndCloseDeferred(w); return w; } case DynamicElementTextModel::pos: diff --git a/sources/ui/dynamicelementtextmodel.h b/sources/ui/dynamicelementtextmodel.h index 67b42e23e..013d9318b 100644 --- a/sources/ui/dynamicelementtextmodel.h +++ b/sources/ui/dynamicelementtextmodel.h @@ -155,6 +155,21 @@ class DynamicTextItemDelegate : public QStyledItemDelegate private: QStringList availableInfo(DynamicElementTextItem *deti) const; + /** + @brief commitAndCloseDeferred + Schedule commitData()/closeEditor() for @a editor on the next + event loop iteration. For editors resolved synchronously inside + createEditor() (font/color, both run their picker dialog before + returning) there is no user interaction left to drive the base + QStyledItemDelegate::eventFilter()'s usual Enter/focus-out commit + path, so without this the value sits picked-but-uncommitted + until something unrelated (e.g. clicking elsewhere) happens to + trigger it. Deferred rather than called immediately: the view + only registers the widget createEditor() returns as "the active + editor" *after* createEditor() itself returns, so emitting here + would target an editor the view doesn't know about yet. + */ + void commitAndCloseDeferred(QWidget *editor) const; }; #endif // DYNAMICELEMENTTEXTMODEL_H From 31ab7538a4d3a6fa905c04ab92b4c37df063dd61 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Mon, 10 Aug 2026 21:19:56 +1200 Subject: [PATCH 03/26] Scroll the diagram view to the selected search hit Bugtracker #309: selecting a result from the Search/Replace hit list highlights the matching element, but on a diagram too large to fit the current view, the view itself never scrolls -- the highlighted element can be entirely off-screen with no indication of where it went. The reporter pinpointed the exact spot, searchandreplacewidget.cpp:1022, and suggested repositioning the view's scrollbars. SearchAndReplaceWidget::on_m_tree_widget_currentItemChanged() already calls setHighlighted()/setSelected() on the matched element, text, or conductor when a hit is selected; it just never brings it into view. Added a call to QGraphicsItem::ensureVisible() alongside each of the three existing highlight/select calls, so the view scrolls the minimum needed for the match to be visible. Followed the same approach as JumpToElementDialog's activateCurrentItem() (added this session for #676) rather than computing scrollbar positions by hand as suggested: ensureVisible() scrolls every view showing the diagram automatically, works correctly if a folio is open in more than one window, and needed no lookup of which QGraphicsView the widget is attached to -- this widget doesn't currently hold one. It was the only existing precedent for this exact "scroll to reveal a matched item" problem anywhere in the codebase. Verified live: built and ran the app under Xvfb, zoomed into one corner of an example diagram until it needed scrollbars, searched for text appearing in two different elements ("Offset null", both op-amp offset-null pins), and confirmed selecting each result scrolled the view to a different part of the diagram, centering the matched element's highlight circle in the visible area each time. No new build warnings. --- sources/SearchAndReplace/ui/searchandreplacewidget.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sources/SearchAndReplace/ui/searchandreplacewidget.cpp b/sources/SearchAndReplace/ui/searchandreplacewidget.cpp index 7f76d33f9..af229b0c5 100644 --- a/sources/SearchAndReplace/ui/searchandreplacewidget.cpp +++ b/sources/SearchAndReplace/ui/searchandreplacewidget.cpp @@ -1020,6 +1020,7 @@ void SearchAndReplaceWidget::on_m_tree_widget_currentItemChanged( { m_highlighted_element = elmt; elmt.data()->setHighlighted(true); + elmt.data()->ensureVisible(); } } else if (m_text_hash.contains(current)) @@ -1029,6 +1030,7 @@ void SearchAndReplaceWidget::on_m_tree_widget_currentItemChanged( { text.data()->setSelected(true); m_last_selected = text; + text.data()->ensureVisible(); } } else if (m_conductor_hash.contains(current)) @@ -1038,6 +1040,7 @@ void SearchAndReplaceWidget::on_m_tree_widget_currentItemChanged( { cond.data()->setSelected(true); m_last_selected = cond; + cond.data()->ensureVisible(); } } From 7debaa55047b280ca7a3cc8a8dd0ea01cae693ca Mon Sep 17 00:00:00 2001 From: Kellermorph Date: Mon, 10 Aug 2026 17:55:59 +0200 Subject: [PATCH 04/26] Update German from Folie to Seite --- lang/qet_de.qm | Bin 359924 -> 359924 bytes lang/qet_de.ts | 1096 ++++++++++++++++++++++++------------------------ 2 files changed, 548 insertions(+), 548 deletions(-) diff --git a/lang/qet_de.qm b/lang/qet_de.qm index 97d6f13658d3b5ebf659d302390513eb4ace17e4..c56ae634eb5e3f31057f42e521ba5477415e1e5c 100644 GIT binary patch delta 2762 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 diff --git a/lang/qet_de.ts b/lang/qet_de.ts index 7f8c27f38..074edf951 100644 --- a/lang/qet_de.ts +++ b/lang/qet_de.ts @@ -67,9 +67,9 @@ - Contact : <a href="mailto:qet@lists.tuxfamily.org">qet@lists.tuxfamily.org</a> + Contact : <a href="mailto:qet@lists.tuxfamily.org">qet@lists.tuxfamily.org</a> about tab, contact line - Kontakt: <a href="mailto:qet@lists.tuxfamily.org">qet@lists.tuxfamily.org</a> + Kontakt: <a href="mailto:qet@lists.tuxfamily.org">qet@lists.tuxfamily.org</a> @@ -277,24 +277,24 @@ - Collection d'éléments + Collection d'éléments Bauteilsammlung - Redimensionneur d'éléments + Redimensionneur d'éléments Element scaler Skalieren von Elementen - Convertisseur d'élément DXF + Convertisseur d'élément DXF Dxf2elmt DXF-zu-Element - Konverter - Outil de traduction d'éléments + Outil de traduction d'éléments Qet_translate Element-Namen übersetzen @@ -320,7 +320,7 @@ - Générateur d'élément lambda + Générateur d'élément lambda Lambda element generator Lambda-Element-Generator @@ -358,12 +358,12 @@ Ajuster la taille du tableau au folio - Tabellegröße an Folie anpassen + Tabellegröße an Seite anpassen Ajouter de nouveau folio et tableau si nécessaire. - Folie und Tabelle hinzufügen, wenn erforderlich. + Seite und Tabelle hinzufügen, wenn erforderlich. @@ -532,7 +532,7 @@ - Configurer les règles d'auto numérotation + Configurer les règles d'auto numérotation Nummerierungsregel konfigurieren @@ -543,7 +543,7 @@ Folio - Folie + Seite @@ -576,7 +576,7 @@ Apply to Selected Folios - Auf ausgewählte Folien anwenden + Auf ausgewählte Seiten anwenden @@ -638,7 +638,7 @@ Folio - Folie + Seite @@ -679,7 +679,7 @@ Für Betriebsmittelkennzeichen (BMK) von Bauteilen gibt es 4 Richtlinien: - Beide: neue und vorhandene BMK werden aktualisiert. Das ist die Standardoption. - nur Neue: nur BMK von neu angelegten Bauteilen werden aktualisiert. Vorhandene BMK bleiben bestehend. - nur Vorhandene: nur BMK von vorhandenen Bauteilen werden aktualisiert. Neuen Bauteilen werden ihr BMK-Formel zugewiesen, werden aber im Nachhinein nicht aktualisiert. -- nicht aktualisieren: neue und vorhandene BMK werden nicht aktualisiert. Dies gilt auch für neu angelegte Folien. +- nicht aktualisieren: neue und vorhandene BMK werden nicht aktualisiert. Dies gilt auch für neu angelegte Seiten. Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. @@ -746,7 +746,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Quantité numéro d'article + Quantité numéro d'article Special field with name : designation quantity Menge Artikelnummer @@ -783,7 +783,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. Form - Folieneigenschaften + Seiteneigenschaften @@ -818,7 +818,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. Dimensions du folio - Folienmaße + Seitenmaße @@ -844,7 +844,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.Conductor - Modifier les propriétés d'un conducteur + Modifier les propriétés d'un conducteur undo caption Leitereigenschaften ändern @@ -859,17 +859,17 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.ConductorPropertiesDialog - Éditer les propriétés d'un conducteur + Éditer les propriétés d'un conducteur Leitereigenschaften bearbeiten - Appliquer les propriétés à l'ensemble des conducteurs de ce potentiel + Appliquer les propriétés à l'ensemble des conducteurs de ce potentiel Eigenschaften auf alle Verbindungen dieses Potenzials übertragen - Modifier les propriétés d'un conducteur + Modifier les propriétés d'un conducteur undo caption Leitereigenschaften ändern @@ -905,7 +905,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. Afficher un texte de potentiel par folio. - Nur eine Potenzialbeschriftung je Folie anzeigen. + Nur eine Potenzialbeschriftung je Seite anzeigen. @@ -950,8 +950,8 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - activer l'option un texte par potentiel - Option "ein Text je Potenzial" aktivieren + activer l'option un texte par potentiel + Option "ein Text je Potenzial" aktivieren @@ -1155,7 +1155,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. # - + @@ -1315,7 +1315,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Impossible d'écrire dans le fichier « %1 ». + Impossible d'écrire dans le fichier « %1 ». Die Datei „%1“ kann nicht beschrieben werden. @@ -1401,7 +1401,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. Propriétés du folio window title - Folieneigenschaften + Seiteneigenschaften @@ -1423,8 +1423,8 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.DiagramView - Ceci est la zone dans laquelle vous concevez vos schémas en y ajoutant des éléments et en posant des conducteurs entre leurs bornes. Il est également possible d'ajouter des textes indépendants. - "What's this?" tip + Ceci est la zone dans laquelle vous concevez vos schémas en y ajoutant des éléments et en posant des conducteurs entre leurs bornes. Il est également possible d'ajouter des textes indépendants. + "What's this?" tip In diesem Bereich entwerfen Sie Ihre Schaltpläne, indem Sie Elemente hinzufügen und Leiter zwischen Anschlüssen verlegen. Es ist auch möglich, unabhängige Texte hinzuzufügen. @@ -1479,7 +1479,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Le fichier n'a pas pu être écrit. + Le fichier n'a pas pu être écrit. Die Datei konnte nicht geschrieben werden. @@ -1489,7 +1489,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Modifier les propriétés d'un conducteur + Modifier les propriétés d'un conducteur undo caption Leitereigenschaften ändern @@ -1521,7 +1521,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Éditer un texte d'élément + Éditer un texte d'élément Textfeld eines Bauteils bearbeiten @@ -1534,7 +1534,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Exporter l'actuelle configuration des textes + Exporter l'actuelle configuration des textes Aktuelle Texteinstellungen exportieren @@ -1573,17 +1573,17 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Modifier des textes d'élément + Modifier des textes d'élément Texte eines Bauteils bearbeiten - Modifier un texte d'élément + Modifier un texte d'élément Text eines Bauteils bearbeiten - Modifier %1 textes d'élément + Modifier %1 textes d'élément %1 Texte eines Bauteils bearbeiten @@ -1629,7 +1629,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Information de l'élément + Information de l'élément Bauteilinformation @@ -1683,47 +1683,47 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Modifier la police d'un texte d'élément + Modifier la police d'un texte d'élément Schriftart eines Bauteiltexts ändern - Modifier le maintient de la rotation d'un texte d'élément + Modifier le maintient de la rotation d'un texte d'élément Verhalten der Leserichtung beim Drehen eines Bauteiltexts ändern - Modifier l'alignement d'un texte d'élément + Modifier l'alignement d'un texte d'élément Ausrichtung eines Bauteiltexts ändern - Modifier la taille d'un texte d'élément + Modifier la taille d'un texte d'élément Größe eines Bauteiltexts ändern - Modifier la couleur d'un texte d'élément + Modifier la couleur d'un texte d'élément Farbe eines Bauteiltexts ändern - Modifier le cadre d'un texte d'élément + Modifier le cadre d'un texte d'élément Rahmen eines Bauteiltexts ändern - Modifier la largeur d'un texte d'élément + Modifier la largeur d'un texte d'élément Breite eines Bauteiltexts ändern - Déplacer un texte d'élément + Déplacer un texte d'élément Text eines Bauteils verschieben - Pivoter un texte d'élément + Pivoter un texte d'élément Textfeld eines Bauteils drehen @@ -1766,7 +1766,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. Maintenir en bas de page - Am unteren Rand der Folie platzieren + Am unteren Rand der Seite platzieren @@ -1804,7 +1804,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Éditer un texte d'élément + Éditer un texte d'élément Textfeld eines Bauteils bearbeiten @@ -1837,7 +1837,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Information de l'élément + Information de l'élément Bauteilinformation @@ -1894,48 +1894,48 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Modifier le texte d'un champ texte + Modifier le texte d'un champ texte Text eines Textfelds ändern - Modifier la police d'un champ texte + Modifier la police d'un champ texte Schriftart eines Textfelds ändern - Modifier la couleur d'un champ texte + Modifier la couleur d'un champ texte Farbe eines Textfelds ändern - Modifier la conservation de l'angle + Modifier la conservation de l'angle Beibehaltung des Winkels ändern - Modifier le cadre d'un champ texte + Modifier le cadre d'un champ texte Rahmen eines Textfelds ändern - Modifier la largeur d'un texte + Modifier la largeur d'un texte Breite eines Bauteiltexts ändern - Modifier l'information d'un texte + Modifier l'information d'un texte Text eines Textfelds ändern - Modifier la source de texte, d'un texte + Modifier la source de texte, d'un texte Quelle eines Texts ändern - Modifier l'alignement d'un champ texte + Modifier l'alignement d'un champ texte Ausrichtung eines Textfelds ändern @@ -1952,7 +1952,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Information de l'élément + Information de l'élément Bauteilinformation @@ -2028,7 +2028,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Choisissez l'élément que vous souhaitez ouvrir. + Choisissez l'élément que vous souhaitez ouvrir. dialog content Wählen Sie das zu öffnende Bauteil. @@ -2040,7 +2040,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Choisissez l'élément dans lequel vous souhaitez enregistrer votre définition. + Choisissez l'élément dans lequel vous souhaitez enregistrer votre définition. dialog content Wählen Sie ein Bauteil, in dem Sie Ihre Definition speichern wollen. @@ -2071,7 +2071,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Choisissez l'emplacement dans lequel vous souhaitez enregistrer votre template. + Choisissez l'emplacement dans lequel vous souhaitez enregistrer votre template. dialog content Wählen Sie den Speicherort, an dem Sie Ihre Vorlage speichern möchten. @@ -2103,13 +2103,13 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Le template existe déjà. Voulez-vous l'écraser ? + Le template existe déjà. Voulez-vous l'écraser ? message box content Die Vorlage existiert bereits. Möchten Sie sie überschreiben? - Vous devez sélectionner un élément ou une catégorie avec un nom pour l'élément. + Vous devez sélectionner un élément ou une catégorie avec un nom pour l'élément. message box content Sie müssen ein Bauteil oder eine Kategorie auswählen. @@ -2121,21 +2121,21 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Nom de fichier de l'élément - placeholder: the element's file name, not its display name + Nom de fichier de l'élément + placeholder: the element's file name, not its display name Dateiname des Elements - Nom de fichier de l'élément : chiffres, minuscules, « - », « _ » et « . » uniquement. -Le nom affiché de l'élément se modifie séparément dans les propriétés de l'élément. + Nom de fichier de l'élément : chiffres, minuscules, « - », « _ » et « . » uniquement. +Le nom affiché de l'élément se modifie séparément dans les propriétés de l'élément. tooltip for the element file-name field Dateiname des Elements: Nur Ziffern, Kleinbuchstaben, „-“, „_“ und „.“. Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des Elements ändern. - La sélection n'existe pas. + La sélection n'existe pas. message box content Auswahl existiert nicht. @@ -2148,19 +2148,19 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - La sélection n'est pas un élément. + La sélection n'est pas un élément. message box content Auswahl ist kein Bauteil. - Écraser l'élément ? + Écraser l'élément ? message box title Bauteil überschreiben? - L'élément existe déjà. Voulez-vous l'écraser ? + L'élément existe déjà. Voulez-vous l'écraser ? message box content Das Bauteil existiert bereits. Soll es überschrieben werden? @@ -2220,7 +2220,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El ElementPropertiesEditorWidget - Propriété de l'élément + Propriété de l'élément Bauteileigenschaften @@ -2269,7 +2269,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Définir le nombre maximal d'esclaves + Définir le nombre maximal d'esclaves max. Slave-Anzahl definieren @@ -2339,12 +2339,12 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El Renvoi de folio suivant - abgehender Folienverweis + abgehender Seitenverweis Renvoi de folio précédent - ankommender Folienverweis + ankommender Seitenverweis @@ -2718,7 +2718,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Éditer l'élément + Éditer l'élément Bauteil bearbeiten @@ -2761,7 +2761,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - N'est pas vide + N'est pas vide Ist nicht leer @@ -2786,7 +2786,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - N'est pas égale à + N'est pas égale à Ungleich @@ -2796,7 +2796,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Type d'éléments + Type d'éléments Bauteiltypen @@ -2877,7 +2877,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El Titre du folio - Folientitel + Seitentitel @@ -2887,7 +2887,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El Numéro du folio - Foliennummer + Seitennummer @@ -2899,13 +2899,13 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Éditer les informations sur l'auteur + Éditer les informations sur l'auteur window title Informationen über Autoren bearbeiten - Vous pouvez utiliser ce champ libre pour mentionner les auteurs de l'élément, sa licence, ou tout autre renseignement que vous jugerez utile. + Vous pouvez utiliser ce champ libre pour mentionner les auteurs de l'élément, sa licence, ou tout autre renseignement que vous jugerez utile. Sie können dieses freie Textfeld benutzen, um die Autoren, die Lizenz, oder jede weitere nützliche Information zu speichern. @@ -2916,7 +2916,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Vous pouvez spécifier le nom de l'élément dans plusieurs langues. + Vous pouvez spécifier le nom de l'élément dans plusieurs langues. Sie können den Namen des Bauteiles in verschiedenen Sprachen eingeben. @@ -2924,13 +2924,13 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El ElementsCategoryEditor - L'item n'est pas une catégorie + L'item n'est pas une catégorie message box title Die Auswahl ist keine Kategorie - L'item demandé n'est pas une categrie. Abandon. + L'item demandé n'est pas une categrie. Abandon. message box content Die Auswahl ist keine Kategorie. Abbruch. @@ -2942,7 +2942,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - La catégorie demandée n'existe pas. Abandon. + La catégorie demandée n'existe pas. Abandon. message box content Die gewünschte Kategorie ist nicht vorhanden. Abbruch. @@ -2972,7 +2972,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Vous n'avez pas les privilèges nécessaires pour modifier cette catégorie. Elle sera donc ouverte en lecture seule. + Vous n'avez pas les privilèges nécessaires pour modifier cette catégorie. Elle sera donc ouverte en lecture seule. message box content Sie haben nicht die Schreibrechte, um diese Kategorie zu verändern: sie wird schreibgeschützt geöffnet. @@ -3032,12 +3032,12 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Éditer l'élément + Éditer l'élément Bauteil bearbeiten - Supprimer l'élément + Supprimer l'élément Bauteil löschen @@ -3087,7 +3087,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Supprimer l'élément ? + Supprimer l'élément ? message box title Bauteil löschen? @@ -3101,13 +3101,13 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Suppression de l'élément + Suppression de l'élément message box title Bauteil wird gelöscht - La suppression de l'élément a échoué. + La suppression de l'élément a échoué. message box content Das Löschen des Bauteils ist gescheitert. @@ -3139,23 +3139,23 @@ Alle Bauteile und Unterordner von diesem Ordner werden ebenso gelöscht. - Avertissement — Importation d'un fichier EPLAN (.edz) + Avertissement — Importation d'un fichier EPLAN (.edz) Warnung — Import EPLAN-Datei (.edz) Le format .edz peut provenir de deux sources différentes : -• Le portail EPLAN Data Portal (dataportal.eplan.com), soumis aux conditions d'utilisation de l'environnement EPLAN Cloud ; -• Le site d'un fabricant de composants (ou d'un distributeur) qui met ses fichiers .edz à disposition directement, selon ses propres conditions. +• Le portail EPLAN Data Portal (dataportal.eplan.com), soumis aux conditions d'utilisation de l'environnement EPLAN Cloud ; +• Le site d'un fabricant de composants (ou d'un distributeur) qui met ses fichiers .edz à disposition directement, selon ses propres conditions. -QElectroTech ne peut pas déterminer automatiquement l'origine du fichier que vous importez, ni les conditions qui s'y appliquent. +QElectroTech ne peut pas déterminer automatiquement l'origine du fichier que vous importez, ni les conditions qui s'y appliquent. En important ce fichier, vous confirmez que : -• vous connaissez son origine et êtes autorisé à l'utiliser dans ce contexte, au regard des conditions applicables à cette source ; +• vous connaissez son origine et êtes autorisé à l'utiliser dans ce contexte, au regard des conditions applicables à cette source ; • cette importation est effectuée à vos propres risques et responsabilité ; -• ni QElectroTech, ni ses mainteneurs, ni ses contributeurs ne peuvent être tenus responsables d'une utilisation non conforme de ces données. +• ni QElectroTech, ni ses mainteneurs, ni ses contributeurs ne peuvent être tenus responsables d'une utilisation non conforme de ces données. Das .edz-Format kann aus verschiedenen Quellen stammen: • dem EPLAN-Datenportal (dataportal.eplan.com), für das die Nutzungsbedingungen der EPLAN-Cloud-Umgebung gelten; @@ -3171,7 +3171,7 @@ Mit dem Import dieser Datei bestätigen Sie, dass: - J'ai lu et j'accepte ces conditions. + J'ai lu et j'accepte ces conditions. Ich habe diese Bedingungen gelesen und akzeptiere sie. @@ -3196,7 +3196,7 @@ Mit dem Import dieser Datei bestätigen Sie, dass: - Impossible d'importer cette pièce : + Impossible d'importer cette pièce : %1 Konnte Datei nicht importieren: %1 @@ -3274,20 +3274,20 @@ Mit dem Import dieser Datei bestätigen Sie, dass: - Glissez-déposez ce modèle de cartouche sur un folio pour l'y appliquer. + Glissez-déposez ce modèle de cartouche sur un folio pour l'y appliquer. Status tip displayed when selecting a title block template - Ziehen/Ablegen, um das Schriftfeld auf der Folie anzuwenden. + Ziehen/Ablegen, um das Schriftfeld auf der Seite anzuwenden. Double-cliquez pour réduire ou développer la collection de cartouches QElectroTech Status tip - Doppelklick zum Öffnen oder Schließen der Sammlung "QElectroTech-Schriftfelder" + Doppelklick zum Öffnen oder Schließen der Sammlung "QElectroTech-Schriftfelder" Ceci est la collection de cartouches fournie avec QElectroTech. Installée en tant que composant système, vous ne pouvez normalement pas la personnaliser. - "What's this" tip + "What's this" tip Diese Sammlung von Schriftfeldern kommt standardmäßig mit QElectroTech. Sie ist fester Bestandteil vom System und kann nicht verändert werden. @@ -3299,7 +3299,7 @@ Mit dem Import dieser Datei bestätigen Sie, dass: Ceci est la collection company de cartouches -- utilisez-la pour créer, stocker et éditer vos propres cartouches. - "What's this" tip + "What's this" tip Dies ist die Firmensammlung von Schriftfeldern -- verwenden Sie sie, um die Schriftfelder Ihrer Firma zu erstellen, zu speichern und zu bearbeiten. @@ -3311,7 +3311,7 @@ Mit dem Import dieser Datei bestätigen Sie, dass: Ceci est votre collection personnelle de cartouches -- utilisez-la pour créer, stocker et éditer vos propres cartouches. - "What's this" tip + "What's this" tip Dies ist Ihre persönliche Schriftfeld-Sammlung. Benutzen Sie sie, um Ihre eigenen Schriftfelder zu erstellen, ablegen und bearbeiten. @@ -3345,12 +3345,12 @@ Mit dem Import dieser Datei bestätigen Sie, dass: Propriétés du folio - Folieneigenschaften + Seiteneigenschaften Ajouter un folio - Neue Folie hinzufügen + Neue Seite hinzufügen @@ -3370,42 +3370,42 @@ Mit dem Import dieser Datei bestätigen Sie, dass: Supprimer ce folio - Folie löschen + Seite löschen Remonter ce folio - Folie 1 Position nach oben verschieben + Seite 1 Position nach oben verschieben Abaisser ce folio - Folie 1 Position nach unten verschieben + Seite 1 Position nach unten verschieben Remonter ce folio x10 - Folie 10 Positionen nach oben verschieben + Seite 10 Positionen nach oben verschieben Remonter ce folio x100 - Folie 100 Positionen nach oben verschieben + Seite 100 Positionen nach oben verschieben Remonter ce folio au debut - Folie an den Anfang verschieben + Seite an den Anfang verschieben Abaisser ce folio x10 - Folie 10 Positionen nach unten verschieben + Seite 10 Positionen nach unten verschieben Abaisser ce folio x100 - Folie 100 Positionen nach unten verschieben + Seite 100 Positionen nach unten verschieben @@ -3508,17 +3508,17 @@ Mit dem Import dieser Datei bestätigen Sie, dass: Exporter les folios du projet window title - Folien des Projekts exportieren + Seiten des Projekts exportieren Choisissez les folios que vous désirez exporter ainsi que leurs dimensions : - Auswahl der zu exportierenden Folien und deren Abmessungen: + Auswahl der zu exportierenden Seiten und deren Abmessungen: Titre du folio - Folientitel + Seitentitel @@ -3540,7 +3540,7 @@ Mit dem Import dieser Datei bestätigen Sie, dass: Vous devez entrer un nom de fichier non vide et unique pour chaque folio à exporter. message box content - Die Dateinamen der zu exportierenden Folien müssen einmalig und nicht leer sein. + Die Dateinamen der zu exportierenden Seiten müssen einmalig und nicht leer sein. @@ -3556,13 +3556,13 @@ Mit dem Import dieser Datei bestätigen Sie, dass: - Impossible d'écrire dans ce fichier + Impossible d'écrire dans ce fichier message box title Schreiben in dieser Datei nicht möglich - Il semblerait que vous n'ayez pas les permissions nécessaires pour écrire dans le fichier %1. + Il semblerait que vous n'ayez pas les permissions nécessaires pour écrire dans le fichier %1. message box content Sie haben wahrscheinlich nicht die benötigten Rechte, um in die Datei %1 zu schreiben. @@ -3635,7 +3635,7 @@ Mit dem Import dieser Datei bestätigen Sie, dass: Exporter entièrement le folio - Ganze Folie exportieren + Ganze Seite exportieren @@ -3693,17 +3693,17 @@ Mit dem Import dieser Datei bestätigen Sie, dass: C&réer de nouveaux folios - Neue Folien e&rstellen + Neue Seiten e&rstellen Numérotation automatique des folios sélectionnés - Ausgewählte Folien automatisch nummerieren + Ausgewählte Seiten automatisch nummerieren Nouveaux folios - Neue Folien + Neue Seiten @@ -3723,40 +3723,40 @@ Mit dem Import dieser Datei bestätigen Sie, dass: Numérotation automatique de Folio : - Regel für die Foliennummerierung: + Regel für die Seitennummerierung: Folio Autonumbering title window - Automatische Foliennummerierung + Automatische Seitennummerierung - C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux folios. --Une numérotation est composée d'une variable minimum. + C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux folios. +-Une numérotation est composée d'une variable minimum. -Vous pouvez ajouter ou supprimer une variable de numérotation par le biais des boutons - et +. -Une variable de numérotation comprend : un type, une valeur et une incrémentation. --les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau folio de la valeur du champ "Incrémentation". --"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. +-les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau folio de la valeur du champ "Incrémentation". +-"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. Si le chiffre défini dans le champ Valeur possède moins de digits que le type choisi,celui-ci sera précédé par un ou deux 0 afin de respecter son type. --Le type "Texte", représente un texte fixe. -Le champ "Incrémentation" n'est pas utilisé. +-Le type "Texte", représente un texte fixe. +Le champ "Incrémentation" n'est pas utilisé. help dialog about the folio autonumerotation - In diesem Dialog können Sie die Nummerierungsregel für neu angelegte Folien definieren. + In diesem Dialog können Sie die Nummerierungsregel für neu angelegte Seiten definieren. - Eine Nummerierungsregel beinhaltet mindestens eine Variable. - Variablen können mittels Knöpfe - und + gelöscht bzw. hinzugefügt werden. - Eine Variable beinhaltet: einen Typ, einen Wert und eine Inkrementierung. -- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. -- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. -Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. +- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. +- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. +Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. -- Der Typ "Text" steht für einen fixen Text. -In diesem Fall wird das Feld "Inkrementierung" ignoriert. +- Der Typ "Text" steht für einen fixen Text. +In diesem Fall wird das Feld "Inkrementierung" ignoriert. @@ -3816,9 +3816,9 @@ that you create. Text and number inputs are - %prefix: Gerätekennbuchstabe - %l: Zeilennummer - %c: Spaltennummer - - %F: Foliennummer - - %f oder %id: Seitennummer der Folie - - %total: Anzahl der Folien im Projekt + - %F: Seitennummer + - %f oder %id: Seitennummer der Seite + - %total: Anzahl der Seiten im Projekt Sie können auch beliebige Variablen verwenden, die Sie im Schriftfeld erstellt haben. Texte und Zahlen sind ebenso erlaubt. @@ -3985,7 +3985,7 @@ Texte und Zahlen sind ebenso erlaubt. - (Recharger les collections d'éléments pour appliquer les changements) + (Recharger les collections d'éléments pour appliquer les changements) (Bauteilsammlungen neu laden, um die Änderungen zu übernehmen) @@ -4001,12 +4001,12 @@ Texte und Zahlen sind ebenso erlaubt. Utiliser les numéros de folio à la place de leur position dans le projet - Foliennummern anstelle von Seitennummern für Projektanzeigen verwenden + Seitennummern anstelle von Seitennummern für Projektanzeigen verwenden Numéroter les colonnes de cartouche à partir de 0 (1 sinon) - Choix de l'increment de depart 1 ou 0 + Choix de l'increment de depart 1 ou 0 Spalten vom Schriftfeld ab 0 nummerieren (sonst ab 1) @@ -4079,7 +4079,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de - Vous pouvez définir ici l'apparence par defaut des differents textes de QElectroTech + Vous pouvez définir ici l'apparence par defaut des differents textes de QElectroTech Einstellungen für die Standarddarstellung der verschiedenen Texte @@ -4124,7 +4124,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de - Méthode de mise à l'echelle des écrans à haute densité de pixels (hdpi) (appliqué au prochain lancement de QElectroTech) : + Méthode de mise à l'echelle des écrans à haute densité de pixels (hdpi) (appliqué au prochain lancement de QElectroTech) : Methode zur Skalierung bei hochauflösenden Bildschirmen (hdpi) (wirksam nach einem Neustart von QElectroTech): @@ -4154,7 +4154,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de - Textes d'éléments + Textes d'éléments Bauteiltexte @@ -4235,7 +4235,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de max: - + @@ -4246,11 +4246,11 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de min: - + - Taille des points de la grille de l'éditeur d'éléments : 1 - 5 + Taille des points de la grille de l'éditeur d'éléments : 1 - 5 Punktgröße im Element-Editor: 1 - 5 @@ -4271,7 +4271,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de Autoriser le dézoom au delà du folio - Ansicht verkleinern über die Folie hinaus erlauben + Ansicht verkleinern über die Seite hinaus erlauben @@ -4295,7 +4295,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de - Pas d'arrondi + Pas d'arrondi nicht runden @@ -4480,8 +4480,8 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu du projet en fonction de : 1 - la valeur sélectionnée -2 - du dpi de l'écran -3 - Modifier le projet sur un autre ordinateur et/ou écran n'ayant pas les mêmes paramètres des points 1 et 2. +2 - du dpi de l'écran +3 - Modifier le projet sur un autre ordinateur et/ou écran n'ayant pas les mêmes paramètres des points 1 et 2. WARNUNG: Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren zu Darstellungsfehlern im Projekt führen: @@ -4500,15 +4500,15 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren - Ceci est un projet QElectroTech, c'est-à-dire un fichier d'extension .qet regroupant plusieurs folios. Il embarque également les éléments et modèles de cartouches utilisés dans ces folios. - "What's this" tip - Das ist ein QElectroTech-Projekt: eine *.qet Datei, in der Folien, eingebettete Bauteile und eingebettete Schriftfelder gespeichert sind. + Ceci est un projet QElectroTech, c'est-à-dire un fichier d'extension .qet regroupant plusieurs folios. Il embarque également les éléments et modèles de cartouches utilisés dans ces folios. + "What's this" tip + Das ist ein QElectroTech-Projekt: eine *.qet Datei, in der Seiten, eingebettete Bauteile und eingebettete Schriftfelder gespeichert sind. Folio sans titre Fallback label when a diagram has no title - Folie ohne Titel + Seite ohne Titel @@ -4524,15 +4524,15 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren - Modèle "%1" + Modèle "%1" used to display a title block template - Vorlage "%1" + Vorlage "%1" Ceci est un modèle de cartouche, qui peut être appliqué à un folio. - "What's this" tip - Das ist eine Schriftfeld-Vorlage, die auf eine Folie angewendet werden kann. + "What's this" tip + Das ist eine Schriftfeld-Vorlage, die auf eine Seite angewendet werden kann. @@ -4606,7 +4606,7 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren Ajuster le tableau au folio - Tabelle an Foliengröße anpassen + Tabelle an Seitengröße anpassen @@ -4686,44 +4686,44 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren - Modifier les marges d'une en tête de tableau + Modifier les marges d'une en tête de tableau Ränder des Tabellenkopfs ändern - Modifier les marges d'un tableau + Modifier les marges d'un tableau Ränder der Tabelle ändern - Modifier l'alignement d'une en tête de tableau + Modifier l'alignement d'une en tête de tableau Textausrichtung eines Tabellenkopfs ändern - Modifier l'alignement des textes d'un tableau + Modifier l'alignement des textes d'un tableau Textausrichtung in einer Tabelle ändern - Modifier la police d'une en tête de tableau + Modifier la police d'une en tête de tableau Schriftart eines Tabellenkopfs ändern - Changer la police d'un tableau + Changer la police d'un tableau Schriftart einer Tabelle ändern <center>ATTENTION :</center> - il manque %1 lignes afin d'afficher l'intégralité des informations + il manque %1 lignes afin d'afficher l'intégralité des informations <center>ACHTUNG:</center> %1 Zeilen fehlen, um alle Information darzustellen - Appliquer la géometrie d'un tableau aux tableau liée à celui-ci + Appliquer la géometrie d'un tableau aux tableau liée à celui-ci Geometrie einer Tabelle auf alle damit verknüpften Tabellen anwenden Geometrie einer Tabelle auf alle damit verknüpften Tabellen anwenden @@ -4781,7 +4781,7 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren - Dimension de l'image + Dimension de l'image Bildgröße @@ -4791,7 +4791,7 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren - Modifier la taille d'une image + Modifier la taille d'une image Bildgröße ändern @@ -4799,27 +4799,27 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren ImportElementDialog - Intégration d'un élément + Intégration d'un élément Bauteil einbetten - L'élément a déjà été intégré dans le projet. Toutefois, la version que vous tentez de poser semble différente. Que souhaitez-vous faire ? + L'élément a déjà été intégré dans le projet. Toutefois, la version que vous tentez de poser semble différente. Que souhaitez-vous faire ? Das Bauteil wurde bereits in das Projekt eingebettet. Es gibt aber vermutlich Versionsunterschiede. Wie möchten Sie vorgehen? - Utiliser l'élément déjà integré + Utiliser l'élément déjà integré Bereits eingebettetes Bauteil verwenden - Intégrer l'élément déposé + Intégrer l'élément déposé Das neu angelegte Bauteil einbetten - Écraser l'élément déjà intégé + Écraser l'élément déjà intégé Das bereits eingebettete Bauteil überschreiben @@ -4892,7 +4892,7 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren Le contenu, la taille et la police du texte ne peuvent être modifié car formaté en html. -Veuillez utiliser l'éditeur avancé pour cela. +Veuillez utiliser l'éditeur avancé pour cela. Inhalt, Größe und Schriftart vom Text können nur im fortgeschrittenen Editor geändert werden (wegen html Formatierung). @@ -4931,12 +4931,12 @@ Veuillez utiliser l'éditeur avancé pour cela. - Modifier la taille d'un champ texte + Modifier la taille d'un champ texte Größe eines Textfelds ändern - Modifier la police d'un champ texte + Modifier la police d'un champ texte Schriftart eines Textfelds ändern @@ -4956,7 +4956,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Modifier les propriétés d'un texte + Modifier les propriétés d'un texte Eigenschaften eines Textfelds ändern @@ -4964,13 +4964,13 @@ Veuillez utiliser l'éditeur avancé pour cela. IntegrationMoveTitleBlockTemplatesHandler - Impossible d'accéder à la catégorie parente + Impossible d'accéder à la catégorie parente error message Zugriff auf die übergeordnete Kategorie nicht möglich - Impossible d'obtenir la description XML de ce modèle + Impossible d'obtenir la description XML de ce modèle error message Die XML-Beschreibung der Vorlage kann nicht geöffnet werden @@ -4982,12 +4982,12 @@ Veuillez utiliser l'éditeur avancé pour cela. - Intégration d'un modèle de cartouche + Intégration d'un modèle de cartouche Schriftfeld-Vorlage einbetten - Le modèle a déjà été intégré dans le projet. Toutefois, la version que vous tentez d'appliquer semble différente. Que souhaitez-vous faire ? + Le modèle a déjà été intégré dans le projet. Toutefois, la version que vous tentez d'appliquer semble différente. Que souhaitez-vous faire ? dialog content - %1 is a title block template name Die Schriftfeld-Vorlage wurde bereits in das Projekt eingebettet. Es gibt aber vermutlich Versionsunterschiede. Wie möchten Sie vorgehen? @@ -5026,7 +5026,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Nom, label ou information de l'élément… + Nom, label ou information de l'élément… Name, Bezeichnung oder Informationen zum Element… @@ -5134,7 +5134,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Remarque : les éléments maîtres ayant atteint leur nombre maximal d'esclaves sont masqués. + Remarque : les éléments maîtres ayant atteint leur nombre maximal d'esclaves sont masqués. Hinweis: Master-Elemente, die ihre maximale Anzahl an Slaves erreicht haben, werden ausgeblendet. @@ -5153,13 +5153,13 @@ Veuillez utiliser l'éditeur avancé pour cela. N° de folio - Foliennummer + Seitennummer Label de folio - Folienname + Seitenname @@ -5167,7 +5167,7 @@ Veuillez utiliser l'éditeur avancé pour cela. Titre de folio - Folientitel + Seitentitel @@ -5229,22 +5229,22 @@ Veuillez utiliser l'éditeur avancé pour cela. - Voir l'élément lié + Voir l'élément lié gebundenes Bauteil zeigen - Lier l'élément + Lier l'élément Bauteil verbinden - Montrer l'élément + Montrer l'élément Bauteil zeigen - Montrer l'élément esclave + Montrer l'élément esclave Slave Bauteil zeigen @@ -5255,7 +5255,7 @@ Veuillez utiliser l'éditeur avancé pour cela. Report de folio - Folienverweis + Seitenverweis @@ -5305,12 +5305,12 @@ Veuillez utiliser l'éditeur avancé pour cela. - <html><head/><body><p>Délier l'élément sélectionné</p></body></html> + <html><head/><body><p>Délier l'élément sélectionné</p></body></html> <html><head/><body><p>Ausgewähltes Bauteil trennen</p></body></html> - <html><head/><body><p>Lier l'élément sélectionné</p></body></html> + <html><head/><body><p>Lier l'élément sélectionné</p></body></html> <html><head/><body><p>Ausgewähltes Bauteil verbinden</p></body></html> @@ -5322,18 +5322,18 @@ Veuillez utiliser l'éditeur avancé pour cela. N° de folio - Foliennummer + Seitennummer Label de folio - Folienname + Seitenname Titre de folio - Folientitel + Seitentitel @@ -5353,22 +5353,22 @@ Veuillez utiliser l'éditeur avancé pour cela. - Lier l'élément + Lier l'élément Bauteil verbinden - Délier l'élément + Délier l'élément Bauteil trennen - Montrer l'élément + Montrer l'élément Bauteil zeigen - Montrer l'élément maître + Montrer l'élément maître Master Bauteil zeigen @@ -5378,7 +5378,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Nombre maximal d'esclaves atteint. + Nombre maximal d'esclaves atteint. Die maximale Anzahl an Slaves wurde erreicht. @@ -5522,7 +5522,7 @@ Veuillez utiliser l'éditeur avancé pour cela. Folio - Folieneigenschaften + Seiteneigenschaften @@ -5532,7 +5532,7 @@ Veuillez utiliser l'éditeur avancé pour cela. Reports de folio - Folienverweise + Seitenverweise @@ -5548,7 +5548,7 @@ Veuillez utiliser l'éditeur avancé pour cela. Nouveau folio configuration page title - Neue Folie + Neue Seite @@ -5601,18 +5601,18 @@ Veuillez utiliser l'éditeur avancé pour cela. - Vous n'êtes pas obligé de préciser l'extension *.elmt. Elle sera ajoutée automatiquement. + Vous n'êtes pas obligé de préciser l'extension *.elmt. Elle sera ajoutée automatiquement. Sie müssen nicht die Dateierweiterung *.elmt eingeben. Diese wird automatisch eingefügt. - Étape 3/3 : Noms de l'élément + Étape 3/3 : Noms de l'élément wizard page title Schritt 3/3: Bauteilname - Indiquez le ou les noms de l'élément. + Indiquez le ou les noms de l'élément. wizard page subtitle Einen oder mehrere Namen für das Bauteil eingeben. @@ -5657,7 +5657,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Mettre à 0 pour un chiffre qui n'avance que par le report d'un chiffre cyclique suivant (ex: le "0" de "0.7") + Mettre à 0 pour un chiffre qui n'avance que par le report d'un chiffre cyclique suivant (ex: le "0" de "0.7") Auf 0 setzen, wenn es sich um eine Zahl handelt, die sich nur durch den Übertrag einer nachfolgenden zyklischen Ziffer erhöht (z. B. die „0“ in „0,7“) @@ -5668,11 +5668,11 @@ Veuillez utiliser l'éditeur avancé pour cela. mod. - + - Format d'affichage : une suite de zéros donne le nombre minimum de chiffres (00 = 07, 000 = 007). Vide = largeur naturelle du type. + Format d'affichage : une suite de zéros donne le nombre minimum de chiffres (00 = 07, 000 = 007). Vide = largeur naturelle du type. Anzeigeformat: Eine Folge von Nullen gibt die Mindestanzahl an Ziffern an (00 = 07, 000 = 007). Leer = natürliche Breite des Typs. @@ -5740,7 +5740,7 @@ Veuillez utiliser l'éditeur avancé pour cela. N° folio - Foliennummer + Seitennummer @@ -5748,7 +5748,7 @@ Veuillez utiliser l'éditeur avancé pour cela. Folio - Folie + Seite @@ -5756,7 +5756,7 @@ Veuillez utiliser l'éditeur avancé pour cela. Chiffre 1 - Folio - Zahlenformat 1 - Folie + Zahlenformat 1 - Seite @@ -5764,7 +5764,7 @@ Veuillez utiliser l'éditeur avancé pour cela. Chiffre 01 - Folio - Zahlenformat 01 - Folie + Zahlenformat 01 - Seite @@ -5772,7 +5772,7 @@ Veuillez utiliser l'éditeur avancé pour cela. Chiffre 001 - Folio - Zahlenformat 001 - Folie + Zahlenformat 001 - Seite @@ -5877,7 +5877,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Supprimer un point d'un polygone + Supprimer un point d'un polygone Punkt eines Polygons löschen @@ -5885,7 +5885,7 @@ Veuillez utiliser l'éditeur avancé pour cela. PartTerminal - Déplacer le label d'une borne + Déplacer le label d'une borne Beschriftung eines Anschlusses verschieben @@ -5956,7 +5956,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Remarque : les éléments maîtres ayant atteint leur nombre maximal d'esclaves sont masqués. + Remarque : les éléments maîtres ayant atteint leur nombre maximal d'esclaves sont masqués. Hinweis: Master-Elemente, die ihre maximale Anzahl an Slaves erreicht haben, werden ausgeblendet. @@ -6031,7 +6031,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Supprimer un point d'un polygone + Supprimer un point d'un polygone Punkt eines Polygons löschen @@ -6137,7 +6137,7 @@ Leiterquerschnitt: %1 Veuillez saisir une formule compatible pour ce potentiel. Les variables suivantes sont incompatibles : %sequf_ %seqtf_ %seqhf_ %id %F %M %LM - Die Formel vom neuen Potenzial beinhaltet Variablen, die nicht mit Folienverweisen kompatibel sind. + Die Formel vom neuen Potenzial beinhaltet Variablen, die nicht mit Seitenverweisen kompatibel sind. Bitte tragen Sie eine passende Formel für dieses Potenzial ein. Folgende Variablen sind inkompatibel: %sequf_ %seqtf_ %seqhf_ %id %F %M %LM @@ -6177,12 +6177,12 @@ Folgende Variablen sind inkompatibel: Folios - Folien + Seiten Numérotation auto des folios - Folien-Auto-Nummerierung + Seiten-Auto-Nummerierung @@ -6258,13 +6258,13 @@ Folgende Variablen sind inkompatibel: Ce titre sera disponible pour tous les folios de ce projet en tant que %projecttitle. informative label - Der Titel ist für alle Folien des Projekts als Variable %projecttitle verfügbar. + Der Titel ist für alle Seiten des Projekts als Variable %projecttitle verfügbar. Vous pouvez définir ci-dessous des propriétés personnalisées qui seront disponibles pour tous les folios de ce projet (typiquement pour les cartouches). informative label - Benutzerdefinierte Eigenschaften können erstellt werden. Sie sind für alle Folien des Projekts verfügbar (typischerweise in den Schriftfeldern). + Benutzerdefinierte Eigenschaften können erstellt werden. Sie sind für alle Seiten des Projekts verfügbar (typischerweise in den Schriftfeldern). @@ -6302,7 +6302,7 @@ Folgende Variablen sind inkompatibel: Folios à imprimer : - Zu druckende Folien: + Zu druckende Seiten: @@ -6361,13 +6361,13 @@ Folgende Variablen sind inkompatibel: - Option d'impression + Option d'impression Druckoptionen Adapter le folio à la page - Folie an Seitengröße anpassen + Seite an Seitengröße anpassen @@ -6376,12 +6376,12 @@ Folgende Variablen sind inkompatibel: - Si cette option est cochée, le folio sera agrandi ou rétréci de façon à remplir toute la surface imprimable d'une et une seule page." - Wenn diese Option aktiviert ist, wird das Folio vergrößert oder verkleinert, um den gesamten druckbaren Bereich einer einzigen Seite auszufüllen." + Si cette option est cochée, le folio sera agrandi ou rétréci de façon à remplir toute la surface imprimable d'une et une seule page." + Wenn diese Option aktiviert ist, wird das Folio vergrößert oder verkleinert, um den gesamten druckbaren Bereich einer einzigen Seite auszufüllen." - Si cette option est cochée, les marges de la feuille seront ignorées et toute sa surface sera utilisée pour l'impression. Cela peut ne pas être supporté par votre imprimante. + Si cette option est cochée, les marges de la feuille seront ignorées et toute sa surface sera utilisée pour l'impression. Cela peut ne pas être supporté par votre imprimante. Wenn diese Option aktiviert ist, werden die Seitenränder ignoriert und das gesamte Blatt zum Drucken verwendet. Dies wird von Ihrem Drucker möglicherweise nicht unterstützt. @@ -6461,7 +6461,7 @@ Folgende Variablen sind inkompatibel: - Options d'impression + Options d'impression window title Druckoptionen @@ -6483,13 +6483,13 @@ Folgende Variablen sind inkompatibel: - Mise en page (non disponible sous Windows pour l'export PDF) + Mise en page (non disponible sous Windows pour l'export PDF) Layout (unter Windows für den PDF-Export nicht verfügbar) Folio sans titre - Folie ohne Titel + Seite ohne Titel @@ -6537,7 +6537,7 @@ Voulez-vous enregistrer les modifications ? Supprimer le folio ? message box title - Folie löschen? + Seite löschen? @@ -6553,7 +6553,7 @@ Voulez-vous enregistrer les modifications ? - Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer. + Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer. message box content Dieses projekt ist schreibgeschützt. Es ist nicht möglich es zu reinigen. @@ -6581,7 +6581,7 @@ Voulez-vous enregistrer les modifications ? Ajouter un folio - Neue Folie hinzufügen + Neue Seite hinzufügen @@ -6607,12 +6607,12 @@ Voulez-vous enregistrer les modifications ? Ce projet ne contient aucun folio label displayed when a project contains no diagram - Dieses Projekt beinhaltet keine Folie + Dieses Projekt beinhaltet keine Seite - <p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p> - <p align="center"><b>Öffnen des Projekts...</b><br/>Folienreiter werden erstellt:</p> + <p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p> + <p align="center"><b>Öffnen des Projekts...</b><br/>Seitenreiter werden erstellt:</p> @@ -6633,7 +6633,7 @@ Voulez-vous enregistrer les modifications ? QETApp - Chargement... Initialisation du cache des collections d'éléments + Chargement... Initialisation du cache des collections d'éléments splash screen caption Laden... Initialisiere die Bauteilsammlungen @@ -6664,13 +6664,13 @@ Voulez-vous enregistrer les modifications ? Cartouches company - title of the company's title block templates collection + title of the company's title block templates collection Firmen-Schriftfelder Cartouches utilisateur - title of the user's title block templates collection + title of the user's title block templates collection Benutzer-Schriftfelder @@ -6689,7 +6689,7 @@ Voulez-vous enregistrer les modifications ? Schema Normal example text - translate length, not meaning - Folie + Seite @@ -6754,12 +6754,12 @@ Voulez-vous enregistrer les modifications ? - &Masquer tous les éditeurs d'élément + &Masquer tous les éditeurs d'élément &Verstecke alle Bauteileditoren - &Restaurer tous les éditeurs d'élément + &Restaurer tous les éditeurs d'élément &Zeige alle Bauteileditoren @@ -6781,12 +6781,12 @@ Voulez-vous enregistrer les modifications ? - &Nouvel éditeur d'élément + &Nouvel éditeur d'élément &Neuer Bauteileditor - Ferme l'application QElectroTech + Ferme l'application QElectroTech Anwendung QElectroTech schließen @@ -6812,7 +6812,7 @@ Voulez-vous enregistrer les modifications ? - Éditeurs d'élément + Éditeurs d'élément Bauteileditor @@ -6823,7 +6823,7 @@ Voulez-vous enregistrer les modifications ? - <b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br> + <b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br> <b>Die folgende Sicherungsdatei wurde gefunden,<br>Möchten Sie sie öffnen?</b><br> @@ -6843,8 +6843,8 @@ Voulez-vous enregistrer les modifications ? - QElectroTech ne s'est pas fermé correctement lors de sa dernière exécution. -Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les enregistrer pour les joindre à un rapport de bug. + QElectroTech ne s'est pas fermé correctement lors de sa dernière exécution. +Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les enregistrer pour les joindre à un rapport de bug. QElectroTech wurde bei der letzten Ausführung nicht ordnungsgemäß beendet. Hier sind die letzten Meldungen, die vor dem Beenden aufgezeichnet wurden – Sie können sie speichern, um sie einem Fehlerbericht beizufügen. @@ -6877,7 +6877,7 @@ Hier sind die letzten Meldungen, die vor dem Beenden aufgezeichnet wurden – Si QElectroTech, une application de réalisation de schémas électriques. Options disponibles : - --help Afficher l'aide sur les options + --help Afficher l'aide sur les options -v, --version Afficher la version --license Afficher la licence @@ -6891,7 +6891,7 @@ Verfügbare Optionen: - --common-elements-dir=DIR Definir le dossier de la collection d'elements + --common-elements-dir=DIR Definir le dossier de la collection d'elements --common-elements-dir=DIR Setzt Pfad zur Bauteilsammlung @@ -6955,7 +6955,7 @@ Verfügbare Optionen: - Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma + Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma Status tip Klicken Sie auf eine Aktion, um die Bearbeitung rückgängig zu machen @@ -6991,9 +6991,9 @@ Verfügbare Optionen: - Ce panneau liste les différentes actions effectuées sur le folio courant. Cliquer sur une action permet de revenir à l'état du schéma juste après son application. - "What's this" tip - Diese Liste protokolliert alle auf der aktuellen Folie ausgeführten Änderungen. Die Auswahl eines Eintrags führt die Änderungen bis zu diesem Eintrag zurück. + Ce panneau liste les différentes actions effectuées sur le folio courant. Cliquer sur une action permet de revenir à l'état du schéma juste après son application. + "What's this" tip + Diese Liste protokolliert alle auf der aktuellen Seite ausgeführten Änderungen. Die Auswahl eines Eintrags führt die Änderungen bis zu diesem Eintrag zurück. @@ -7033,19 +7033,19 @@ Verfügbare Optionen: Propriétés du folio - Folieneigenschaften + Seiteneigenschaften Ajouter un folio - Neue Folie hinzufügen + Neue Seite hinzufügen Supprimer le folio - Folie löschen + Seite löschen @@ -7079,7 +7079,7 @@ Verfügbare Optionen: Enregistre le projet courant et tous ses folios status bar tip - Speichert das aktuelle Projekt und alle seine Folien + Speichert das aktuelle Projekt und alle seine Seiten @@ -7091,25 +7091,25 @@ Verfügbare Optionen: Ajoute une colonne au folio status bar tip - Fügt eine neue Spalte zur Folie hinzu + Fügt eine neue Spalte zur Seite hinzu Enlève une colonne au folio status bar tip - Löscht eine Spalte der Folie + Löscht eine Spalte der Seite Agrandit le folio en hauteur status bar tip - Vergrössert die Höhe der Folie + Vergrössert die Höhe der Seite Rétrécit le folio en hauteur status bar tip - Verkleinert die Höhe der Folie + Verkleinert die Höhe der Seite @@ -7120,7 +7120,7 @@ Verfügbare Optionen: Enlève les éléments sélectionnés du folio status bar tip - Entfernt die ausgewählten Bauteile von der Folie + Entfernt die ausgewählten Bauteile von der Seite @@ -7169,7 +7169,7 @@ Verfügbare Optionen: - Éditer l'item sélectionné + Éditer l'item sélectionné Auswahl bearbeiten @@ -7220,7 +7220,7 @@ Verfügbare Optionen: Zoom adapté - Folie einpassen + Seite einpassen @@ -7271,36 +7271,36 @@ Verfügbare Optionen: Sélectionne tous les éléments du folio status bar tip - Wählt alle Bauteile der Folie aus + Wählt alle Bauteile der Seite aus Désélectionne tous les éléments du folio status bar tip - Wählt alle Bauteile der Folie ab + Wählt alle Bauteile der Seite ab Agrandit le folio status bar tip - Vergrössert die Folie + Vergrössert die Seite Rétrécit le folio status bar tip - Verkleinert die Folie + Verkleinert die Seite Adapte le zoom de façon à afficher tout le contenu du folio indépendamment du cadre - Passt die Ansicht auf den Inhalt der Folie an, unabhängig vom Folienrahmen + Passt die Ansicht auf den Inhalt der Seite an, unabhängig vom Seitenrahmen Adapte le zoom exactement sur le cadre du folio status bar tip - Passt die Ansicht genau auf den Folienrahmen an + Passt die Ansicht genau auf den Seitenrahmen an @@ -7319,19 +7319,19 @@ Verfügbare Optionen: - Ferme l'application QElectroTech + Ferme l'application QElectroTech status bar tip schließt QElectroTech - Annule l'action précédente + Annule l'action précédente status bar tip bricht die letzte Aktion ab - Restaure l'action annulée + Restaure l'action annulée status bar tip stellt die abgebrochene Aktion wieder her @@ -7367,7 +7367,7 @@ Verfügbare Optionen: - Retrouve l'élément sélectionné dans le panel + Retrouve l'élément sélectionné dans le panel status bar tip Sucht das Bauteil in der Sammlung @@ -7408,7 +7408,7 @@ Verfügbare Optionen: Affiche ou masque la grille des folios - Zeige den Hintergrundsraster der Folien an + Zeige den Hintergrundsraster der Seiten an @@ -7503,7 +7503,7 @@ Verfügbare Optionen: Exporte un ou plusieurs folios du projet courant status bar tip - Eine oder mehrere Folien des aktuellen Projekts exportieren + Eine oder mehrere Seiten des aktuellen Projekts exportieren @@ -7513,7 +7513,7 @@ Verfügbare Optionen: - Couper automatiquement les conducteurs existants lors du placement d'un élément + Couper automatiquement les conducteurs existants lors du placement d'un élément Status tip of auto break conductor Vorhandene Leiter beim Platzieren eines Elements automatisch abschneiden @@ -7594,37 +7594,37 @@ Verfügbare Optionen: Ajoute un champ de texte sur le folio actuel - Fügt ein Textfeld auf die aktuelle Folie ein + Fügt ein Textfeld auf die aktuelle Seite ein Ajoute une image sur le folio actuel - Fügt ein Bild auf die aktuelle Folie ein + Fügt ein Bild auf die aktuelle Seite ein Ajoute une ligne sur le folio actuel - Fügt eine Linie auf die aktuelle Folie ein + Fügt eine Linie auf die aktuelle Seite ein Ajoute un rectangle sur le folio actuel - Fügt ein Rechteck auf die aktuelle Folie ein + Fügt ein Rechteck auf die aktuelle Seite ein Ajoute une ellipse sur le folio actuel - Fügt eine Ellipse auf die aktuelle Folie ein + Fügt eine Ellipse auf die aktuelle Seite ein Ajoute une polyligne sur le folio actuel - Fügt eine Polylinie auf die aktuelle Folie ein + Fügt eine Polylinie auf die aktuelle Seite ein Ajoute un plan de bornier sur le folio actuel - Klemmenplan auf aktueller Folie einfügen + Klemmenplan auf aktueller Seite einfügen @@ -7680,22 +7680,22 @@ Verfügbare Optionen: - Affiche ou non la barre d'outils principale + Affiche ou non la barre d'outils principale Zeigt oder versteckt die Hauptwerkzeugsleiste - Affiche ou non la barre d'outils Affichage + Affiche ou non la barre d'outils Affichage Zeigt oder versteckt die Anzeigeleiste - Affiche ou non la barre d'outils Schéma + Affiche ou non la barre d'outils Schéma Zeigt oder versteckt die Schaltplan-Werkzeugsleiste - Affiche ou non le panel d'appareils + Affiche ou non le panel d'appareils Zeigt oder versteckt die Bauteilsammlung @@ -7719,16 +7719,16 @@ Verfügbare Optionen: message box content %n Beschreibungen von Schriftarten, die in einem fremden oder beschädigten Format vorlagen, wurden wiederhergestellt. Sie werden beim nächsten Speichern des Projekts in ein stabiles Format umgeschrieben. - + - %n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes. + %n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes. message box content %n Schriftartbeschreibung(en) konnten nicht gelesen werden; für diese Texte wird die Standardschriftart verwendet. - + @@ -7761,14 +7761,14 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Une erreur est survenue lors de l'ouverture du fichier %1. + Une erreur est survenue lors de l'ouverture du fichier %1. message box content Ein Fehler ist beim Öffnen der Datei %1 aufgetreten. Active le projet « %1 » - Aktiviert das Projekt "%1" + Aktiviert das Projekt "%1" @@ -7785,37 +7785,37 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene Affiche la couleur de fond du folio en blanc ou en gris Status tip of white/grey background button - Schalte die Hintergrundfarbe der Folien in weiß oder grau um + Schalte die Hintergrundfarbe der Seiten in weiß oder grau um Exporte le folio courant dans un autre format status bar tip - Aktuelle Folie in ein anderes Format exportieren + Aktuelle Seite in ein anderes Format exportieren Imprime un ou plusieurs folios du projet courant status bar tip - Druckt eine oder mehrere Folien des aktuellen Projekts + Druckt eine oder mehrere Seiten des aktuellen Projekts Place les éléments du presse-papier sur le folio status bar tip - Inhalt der Zwischenablage auf Folie einfügen + Inhalt der Zwischenablage auf Seite einfügen Édite les propriétés du folio (dimensions, informations du cartouche, propriétés des conducteurs...) status bar tip - Bearbeitet die Folieneigenschaften (Maße, Schriftfeld-Daten, Leitereigenschaften...) + Bearbeitet die Seiteneigenschaften (Maße, Schriftfeld-Daten, Leitereigenschaften...) Permet de visualiser le folio sans pouvoir le modifier status bar tip - Wechselt in das Ansichtsmodus, in dem die Folie nicht bearbeitet werden kann + Wechselt in das Ansichtsmodus, in dem die Seite nicht bearbeitet werden kann @@ -7846,18 +7846,18 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Impossible d'ouvrir le fichier + Impossible d'ouvrir le fichier message box title Öffnen der Datei nicht möglich - Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus. + Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus. Die zu öffnende Datei %1 existiert nicht. - Il semblerait que le fichier que vous essayez d'ouvrir ne soit pas accessible en lecture. Il est donc impossible de l'ouvrir. Veuillez vérifier les permissions du fichier. + Il semblerait que le fichier que vous essayez d'ouvrir ne soit pas accessible en lecture. Il est donc impossible de l'ouvrir. Veuillez vérifier les permissions du fichier. Die zu öffnende Datei kann zum Lesen nicht zugegriffen werden. Prüfen Sie die Zugriffsrechte der Datei. @@ -7868,13 +7868,13 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule. + Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule. Es sind keine Schreibrechte für das zu öffnende Projekt vorhanden. Es wird trotzdem schreibgeschützt geöffnet. - Échec de l'ouverture du projet + Échec de l'ouverture du projet message box title Öffnen des Projekts gescheitert @@ -7886,7 +7886,7 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Éditer l'élement + Éditer l'élement edit element Bauteil bearbeiten @@ -7898,7 +7898,7 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Éditer l'image + Éditer l'image edit image Bild bearbeiten @@ -7910,7 +7910,7 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Éditer l'objet sélectionné + Éditer l'objet sélectionné edit selected item Auswahl bearbeiten @@ -7996,7 +7996,7 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - QElectroTech - Éditeur d'élément + QElectroTech - Éditeur d'élément QElectroTech - Bauteileditor @@ -8192,7 +8192,7 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene Zoom adapté - Folie einpassen + Seite einpassen @@ -8201,7 +8201,7 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Éditer les informations sur l'auteur + Éditer les informations sur l'auteur Informationen über Autoren bearbeiten @@ -8267,8 +8267,8 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - L'import d'un dxf volumineux peut prendre du temps -veuillez patienter durant l'import... + L'import d'un dxf volumineux peut prendre du temps +veuillez patienter durant l'import... Das Importieren einer großen DXF-Datei kann einige Zeit in Anspruch nehmen. @@ -8285,12 +8285,12 @@ veuillez patienter durant l'import... - Éditer le nom et les traductions de l'élément + Éditer le nom et les traductions de l'élément Bauteilname und Übersetzungen bearbeiten - Éditer les propriétés de l'élément + Éditer les propriétés de l'élément Bauteileigenschaften bearbeiten @@ -8337,7 +8337,7 @@ veuillez patienter durant l'import... - Éditeur d'éléments + Éditeur d'éléments status bar message Bauteileditor @@ -8363,7 +8363,7 @@ veuillez patienter durant l'import... - <br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs. + <br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs. warning description <br>Ohne Anschlüsse kann das Bauteil nicht mit anderen Bauteilen mittels Leiter verbunden werden. @@ -8374,18 +8374,18 @@ veuillez patienter durant l'import... - Ajouter un texte d'élément non éditable dans les schémas + Ajouter un texte d'élément non éditable dans les schémas Fügt einen Bauteiltext ein, der im Schaltplaneditor NICHT bearbeitet werden kann - Ajouter un texte d'élément pouvant être édité dans les schémas + Ajouter un texte d'élément pouvant être édité dans les schémas Fügt einen Bauteiltext ein, der im Schaltplaneditor bearbeitet werden kann - <br><b>Erreur</b> :<br>Les reports de folio doivent posséder une seul borne.<br><b>Solution</b> :<br>Verifier que l'élément ne possède qu'une seul borne - <br><b>Fehler</b>: <br>Folienverweise dürfen nur einen Anschluss haben.<br><b>Lösung</b>: <br>Prüfen, dass das Bauteil nur einen Anschluss hat + <br><b>Erreur</b> :<br>Les reports de folio doivent posséder une seul borne.<br><b>Solution</b> :<br>Verifier que l'élément ne possède qu'une seul borne + <br><b>Fehler</b>: <br>Seitenverweise dürfen nur einen Anschluss haben.<br><b>Lösung</b>: <br>Prüfen, dass das Bauteil nur einen Anschluss hat @@ -8425,21 +8425,21 @@ veuillez patienter durant l'import... - Le fichier %1 n'existe pas. + Le fichier %1 n'existe pas. message box content Die Datei %1 existiert nicht. - Impossible d'ouvrir le fichier %1. + Impossible d'ouvrir le fichier %1. message box content Öffnen der Datei %1 nicht möglich. - Ce fichier n'est pas un document XML valide + Ce fichier n'est pas un document XML valide message box content Diese Datei ist kein gültiges XML-Dokument @@ -8460,7 +8460,7 @@ veuillez patienter durant l'import... - Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule. + Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule. message box content Sie haben nicht die Schreibrechte, um dieses Bauteil zu verändern: es wird schreibgeschützt geöffnet. @@ -8473,13 +8473,13 @@ veuillez patienter durant l'import... - Impossible d'écrire dans ce fichier + Impossible d'écrire dans ce fichier message box content Schreiben in diese Datei nicht möglich - Impossible d'enregistrer l'élément + Impossible d'enregistrer l'élément message box content Dieses Bauteil kann nicht gespeichert werden @@ -8490,7 +8490,7 @@ veuillez patienter durant l'import... - <br><b>Erreur</b> :<br>Les définitions de conducteur ne peuvent posséder qu'une seule borne.<br><b>Solution</b> :<br>Vérifier que l'élément ne possède qu'une seule borne + <br><b>Erreur</b> :<br>Les définitions de conducteur ne peuvent posséder qu'une seule borne.<br><b>Solution</b> :<br>Vérifier que l'élément ne possède qu'une seule borne <br><b>Fehler</b>:<br>Leiterdefinitionen dürfen nur einen Anschluss haben.<br><b>Lösung</b>:<br>Stellen Sie sicher, dass das Element nur einen Anschluss hat @@ -8504,13 +8504,13 @@ veuillez patienter durant l'import... - Impossible d'ouvrir le fichier + Impossible d'ouvrir le fichier message box title Öffnen der Datei nicht möglich - Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus. + Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus. Die zu öffnende Datei %1 existiert nicht. @@ -8542,7 +8542,7 @@ veuillez patienter durant l'import... - Éditeur d'élément + Éditeur d'élément Element-Editor @@ -8564,23 +8564,23 @@ veuillez patienter durant l'import... - Échec de l'export + Échec de l'export Export fehlgeschlagen - Impossible d'écrire dans le fichier « %1 ». + Impossible d'écrire dans le fichier « %1 ». Die Datei „%1“ kann nicht beschrieben werden. - Recharger l'élément + Recharger l'élément dialog title Bauteil neu laden - Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ? + Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ? dialog content Das Bauteil wurde verändert. Beim neu Laden gehen die Änderungen verloren. Möchten Sie wirklich das Bauteil neu laden? @@ -8598,14 +8598,14 @@ veuillez patienter durant l'import... - Echec de l'enregistrement + Echec de l'enregistrement Speichervorgang gescheitert - L'enregistrement à échoué, + L'enregistrement à échoué, les conditions requises ne sont pas valides Speichervorgang gescheitert! Die erforderlichen Bedingungen wurden nicht erfüllt @@ -8624,13 +8624,13 @@ Die erforderlichen Bedingungen wurden nicht erfüllt - Enregistrer l'élément en cours ? + Enregistrer l'élément en cours ? dialog title Aktuelles Bauteil speichern? - Voulez-vous enregistrer l'élément %1 ? + Voulez-vous enregistrer l'élément %1 ? dialog content - %1 is an element name Bauteil %1 speichern? @@ -8658,7 +8658,7 @@ Die erforderlichen Bedingungen wurden nicht erfüllt - L'élément n'existe pas. + L'élément n'existe pas. message box content Bauteil existiert nicht. @@ -8764,7 +8764,7 @@ Die erforderlichen Bedingungen wurden nicht erfüllt - Génère un rapport avec les derniers messages de journalisation, pour l'inclure dans un rapport de bug + Génère un rapport avec les derniers messages de journalisation, pour l'inclure dans un rapport de bug status bar tip Erstellt einen Bericht mit den neuesten Protokollmeldungen, um ihn in einen Fehlerbericht aufzunehmen @@ -8815,7 +8815,7 @@ Die erforderlichen Bedingungen wurden nicht erfüllt Projet « %1 : %2» displayed title for a ProjectView - %1 is the project title, -%2 is the project path - Projekt "%1: %2" + Projekt "%1: %2" @@ -8859,7 +8859,7 @@ Möchten Sie fortfahren? - Une erreur s'est produite durant l'intégration du modèle. + Une erreur s'est produite durant l'intégration du modèle. error message Ein Fehler ist beim Einfügen der Vorlage aufgetreten. @@ -8880,7 +8880,7 @@ Sie verwenden derzeit QElectroTech Version %2 . - Il est alors possible que l'ouverture de tout ou partie de ce document échoue. + Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ? Es ist dann möglich, dass das Öffnen des gesamten Dokuments oder eines Teils davon fehlschlägt. Was möchten Sie tun? @@ -8893,27 +8893,27 @@ Was möchten Sie tun? - Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. + Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. Das Projekt, das Sie zu öffnen versuchen, ist teilweise mit Ihrer Version %1 von QElectroTech kompatibel. - Afin de le rendre totalement compatible veuillez ouvrir ce même projet avec la version 0.8, ou 0.80 de QElectroTech et sauvegarder le projet et l'ouvrir à nouveau avec cette version. + Afin de le rendre totalement compatible veuillez ouvrir ce même projet avec la version 0.8, ou 0.80 de QElectroTech et sauvegarder le projet et l'ouvrir à nouveau avec cette version. Que désirez vous faire ? Um es vollständig kompatibel zu machen, öffnen Sie bitte das gleiche Projekt mit der QElectroTech-Version 0.8 oder 0.80, speichern Sie das Projekt und öffnen Sie es erneut mit dieser Version. Was möchten Sie tun? - <p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p> - <p align="center"><b>Öffnen des Projekts...</b><br/>Folien werden erstellt</p> + <p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p> + <p align="center"><b>Öffnen des Projekts...</b><br/>Seiten werden erstellt</p> - <p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p> - <p align="center"><b>Öffnen des Projekts...</b><br/>Querverweise werden eingelesen</p> + <p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p> + <p align="center"><b>Öffnen des Projekts...</b><br/>Querverweise werden eingelesen</p> @@ -9230,7 +9230,7 @@ Was möchten Sie tun? Les caractères autorisés sont : - les chiffres [0-9] - les minuscules [a-z] - - le tiret [-], l'underscore [_] et le point [.] + - le tiret [-], l'underscore [_] et le point [.] tooltip content when editing a filename Zulässige Zeichen sind: @@ -9245,7 +9245,7 @@ Was möchten Sie tun? - Avertissement : l'élément a été enregistré avec une version ultérieure de QElectroTech. + Avertissement : l'élément a été enregistré avec une version ultérieure de QElectroTech. Warnung: das Bauteil wurde mit einer neueren Version von QElectroTech gespeichert. @@ -9316,7 +9316,7 @@ Was möchten Sie tun? modifier les dimensions du folio undo caption - Folienmaße ändern + Seitenmaße ändern @@ -9386,7 +9386,7 @@ Was möchten Sie tun? - Modifier les propriétées de l'élément + Modifier les propriétées de l'élément Bauteileigenschaften bearbeiten @@ -9453,12 +9453,12 @@ Was möchten Sie tun? Folio sans titre - Folie ohne Titel + Seite ohne Titel schema - Folie + Seite @@ -9527,7 +9527,7 @@ Was möchten Sie tun? - %n texte(s) d'élément + %n texte(s) d'élément part of a sentence listing the content of a diagram %n Bauteiltext @@ -9559,20 +9559,20 @@ Was möchten Sie tun? - Le fichier texte contenant la licence GNU/GPL existe mais n'a pas pu être ouvert - bon bah de toute façon, vous la connaissez par coeur non ? + Le fichier texte contenant la licence GNU/GPL existe mais n'a pas pu être ouvert - bon bah de toute façon, vous la connaissez par coeur non ? Die Textdatei der GNU/GPL-Lizenz ist vorhanden, kann aber nicht geöffnet werden - Sie kennen sie sowieso auswendig, oder? - Impossible d'ouvrir le fichier %1 en écriture, erreur %2 rencontrée. + Impossible d'ouvrir le fichier %1 en écriture, erreur %2 rencontrée. error message when attempting to write an XML file Öffnen der Datei %1 zum Schreiben nicht möglich. Fehler %2 aufgetreten. - Une erreur est survenue lors de l'écriture du fichier %1, erreur %2 rencontrée. + Une erreur est survenue lors de l'écriture du fichier %1, erreur %2 rencontrée. error message when attempting to write an XML file Ein Fehler ist beim Schreiben der Datei %1 aufgetreten. Fehler ist: %2. @@ -9650,37 +9650,37 @@ Was möchten Sie tun? - Insertion d'une ligne + Insertion d'une ligne label used in the title block template editor undo list Zeile einfügen - Suppression d'une ligne + Suppression d'une ligne label used in the title block template editor undo list Zeile löschen - Insertion d'une colonne + Insertion d'une colonne label used in the title block template editor undo list Spalte einfügen - Suppression d'une colonne + Suppression d'une colonne label used in the title block template editor undo list Spalte löschen - Modification d'une ligne + Modification d'une ligne label used in the title block template editor undo list Zeile bearbeiten - Modification d'une colonne + Modification d'une colonne label used in the title block template editor undo list Spalte bearbeiten @@ -9692,7 +9692,7 @@ Was möchten Sie tun? - Séparation d'une cellule en %1 + Séparation d'une cellule en %1 label used in the title block template editor undo list; %1 is the number of cells after the split Zelle in %1 Zellen trennen @@ -9813,7 +9813,7 @@ Was möchten Sie tun? - Impossible de charger l'image. + Impossible de charger l'image. Laden vom Bild fehlgeschlagen. @@ -9860,7 +9860,7 @@ Was möchten Sie tun? - Modifier les informations de l'élément : %1 + Modifier les informations de l'élément : %1 Ändern der Informationen vom Bauteil: %1 @@ -9876,7 +9876,7 @@ Was möchten Sie tun? - Modifier les propriétés d'un conducteur + Modifier les propriétés d'un conducteur undo caption Leitereigenschaften ändern @@ -9895,12 +9895,12 @@ Was möchten Sie tun? - Déplacer un texte d'élément + Déplacer un texte d'élément Text eines Bauteils verschieben - Déplacer %1 textes d'élément + Déplacer %1 textes d'élément %1 Texte eines Bauteils verschieben @@ -9946,12 +9946,12 @@ Was möchten Sie tun? Position du folio - Seitennummer der Folie + Seitennummer der Seite Numéro de folio - Foliennummer + Seitennummer @@ -9980,8 +9980,8 @@ Was möchten Sie tun? - Le fichier « %1 » est absent ou illisible : le nom traduit de ce dossier n'a pas pu être lu, son nom de dossier est affiché à la place. - Die Datei "%1" fehlt oder ist nicht lesbar: + Le fichier « %1 » est absent ou illisible : le nom traduit de ce dossier n'a pas pu être lu, son nom de dossier est affiché à la place. + Die Datei "%1" fehlt oder ist nicht lesbar: Der QET-Name dieses Ordners konnte nicht gelesen werden; stattdessen wird der Ordnername angezeigt. @@ -10010,38 +10010,38 @@ Der QET-Name dieses Ordners konnte nicht gelesen werden; stattdessen wird der Or - Ajouter un texte d'élément + Ajouter un texte d'élément Textfeld eines Bauteils einfügen - Ajouter un groupe de textes d'élément + Ajouter un groupe de textes d'élément Gruppe von Bauteiltexten einfügen - Grouper des textes d'élément + Grouper des textes d'élément Bauteiltexte gruppieren - Supprimer un groupe de textes d'élément + Supprimer un groupe de textes d'élément Gruppe von Bauteiltexten löschen - Insérer un texte d'élément dans un groupe de textes + Insérer un texte d'élément dans un groupe de textes Bauteiltext in eine Textgruppe einfügen - Enlever un texte d'élément d'un groupe de textes + Enlever un texte d'élément d'un groupe de textes Bauteiltext aus einer Textgruppe löschen - Modifier l'alignement d'un groupe de textes + Modifier l'alignement d'un groupe de textes Ausrichtung einer Textgruppe ändern @@ -10110,7 +10110,7 @@ Möchten Sie sie ersetzen? - Sélectionner la configuration de textes à ajouter à l'élément + Sélectionner la configuration de textes à ajouter à l'élément Texteinstellung auswählen, die dem Bauteil angewendet wird @@ -10132,11 +10132,11 @@ Möchten Sie sie ersetzen? Chercher/remplacer les propriétés de folio - Folienneigenschaften suchen/ersetzen + Seitenneigenschaften suchen/ersetzen - Chercher/remplacer les propriétés d'éléments. + Chercher/remplacer les propriétés d'éléments. Bauteileigenschaften suchen/ersetzen. @@ -10188,17 +10188,17 @@ Möchten Sie sie ersetzen? Nombre de folio - Anzahl der Folien + Anzahl der Seiten Numéro du folio précédent - Nummer der vorherigen Folie + Nummer der vorherigen Seite Numéro du folio suivant - Nummer der nächsten Folie + Nummer der nächsten Seite @@ -10217,12 +10217,12 @@ Möchten Sie sie ersetzen? - Date d'enregistrement du fichier format local + Date d'enregistrement du fichier format local Speicherdatum der Datei im lokalen Format - Date d'enregistrement du fichier format yyyy-MM-dd + Date d'enregistrement du fichier format yyyy-MM-dd Speicherdatum der Datei im Format JJJJ-MM-TT @@ -10300,7 +10300,7 @@ Möchten Sie sie ersetzen? - Numéro d'article auxiliaire 1 + Numéro d'article auxiliaire 1 Artikelnummer Zusatzartikel 1 @@ -10345,7 +10345,7 @@ Möchten Sie sie ersetzen? - Numéro d'article auxiliaire 2 + Numéro d'article auxiliaire 2 Artikelnummer Zusatzartikel 2 @@ -10390,7 +10390,7 @@ Möchten Sie sie ersetzen? - Numéro d'article auxiliaire 3 + Numéro d'article auxiliaire 3 Artikelnummer Zusatzartikel 3 @@ -10435,7 +10435,7 @@ Möchten Sie sie ersetzen? - Numéro d'article auxiliaire 4 + Numéro d'article auxiliaire 4 Artikelnummer Zusatzartikel 4 @@ -10500,7 +10500,7 @@ Möchten Sie sie ersetzen? - Numéro d'article + Numéro d'article Artikelnummer @@ -10555,12 +10555,12 @@ Möchten Sie sie ersetzen? - Date d'enregistrement du fichier format dd-MM-yyyy + Date d'enregistrement du fichier format dd-MM-yyyy Speicherdatum der Datei im Format TT-MM-JJJJ - Heure d'enregistrement du fichier + Heure d'enregistrement du fichier Uhrzeit vom Abspeichern der Datei @@ -10580,18 +10580,18 @@ Möchten Sie sie ersetzen? - To install the plugin qet_tb_generator<br>Visit :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Requires python 3.5 or above.<br><B><U> First install on Windows</B></U><br>1. Install, if required, python 3.5 or above<br> Visit :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Update on Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>user could launch in a terminal this script in this directory<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br> - Installation des Plugins qet_tb_generator:<br>Besuche <br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Erfordert Python 3.5 oder höher.<br><B><U> Erstinstallation unter Windows</B></U><br>1. Falls erforderlich, installiere Python 3.5 oder höher<br> Besuche :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Aktualisierung unter Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>Der Benutzer kann in einem Terminal dieses Skript in folgendem Verzeichnis ausführen:<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br> + To install the plugin qet_tb_generator<br>Visit :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Requires python 3.5 or above.<br><B><U> First install on Windows</B></U><br>1. Install, if required, python 3.5 or above<br> Visit :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Update on Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>user could launch in a terminal this script in this directory<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br> + Installation des Plugins qet_tb_generator:<br>Besuche <br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Erfordert Python 3.5 oder höher.<br><B><U> Erstinstallation unter Windows</B></U><br>1. Falls erforderlich, installiere Python 3.5 oder höher<br> Besuche :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Aktualisierung unter Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>Der Benutzer kann in einem Terminal dieses Skript in folgendem Verzeichnis ausführen:<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br> - To install the plugin qet_tb_generator<br>Visit :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> First install on macOSX</B></U><br>1. Install, if required, python 3.11 bundle only, <a href='https://www.python.org/ftp/python/3.11.2/python-3.11.2-macos11.pkg'>python-3.11.2-macos11.pkg</a><br>2 Run Profile.command script<br>because program use hardcoded PATH for localise qet-tb-generator plugin <br> Visit :<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>howto</a><br>2. pip3 install qet_tb_generator<br><B><U> Update on macOSX</B></U><br> pip3 install --upgrade qet_tb_generator<br> - Installation des Plugins qet_tb_generator:<br>Besuche <br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> Erstinstallation unter macOSX</B></U><br>1. Falls erforderlich, installiere das Python 3.11-Bundle: <a href='https://www.python.org/ftp/python/3.11.2/python-3.11.2-macos11.pkg'>python-3.11.2-macos11.pkg</a><br>2. Führe das Skript Profile.command aus<br>da das Programm einen festgelegten PATH zur Lokalisierung des Plugins qet-tb-generator verwendet.<br>Besuche :<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>Anleitung</a><br>3. pip3 install qet_tb_generator<br><B><U> Aktualisierung unter macOS</B></U><br> pip3 install --upgrade qet_tb_generator<br> + To install the plugin qet_tb_generator<br>Visit :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> First install on macOSX</B></U><br>1. Install, if required, python 3.11 bundle only, <a href='https://www.python.org/ftp/python/3.11.2/python-3.11.2-macos11.pkg'>python-3.11.2-macos11.pkg</a><br>2 Run Profile.command script<br>because program use hardcoded PATH for localise qet-tb-generator plugin <br> Visit :<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>howto</a><br>2. pip3 install qet_tb_generator<br><B><U> Update on macOSX</B></U><br> pip3 install --upgrade qet_tb_generator<br> + Installation des Plugins qet_tb_generator:<br>Besuche <br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> Erstinstallation unter macOSX</B></U><br>1. Falls erforderlich, installiere das Python 3.11-Bundle: <a href='https://www.python.org/ftp/python/3.11.2/python-3.11.2-macos11.pkg'>python-3.11.2-macos11.pkg</a><br>2. Führe das Skript Profile.command aus<br>da das Programm einen festgelegten PATH zur Lokalisierung des Plugins qet-tb-generator verwendet.<br>Besuche :<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>Anleitung</a><br>3. pip3 install qet_tb_generator<br><B><U> Aktualisierung unter macOS</B></U><br> pip3 install --upgrade qet_tb_generator<br> - To install the plugin qet_tb_generator<br>Visit :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Requires python 3.5 or above.<br><br><B><U> First install on Linux</B></U><br>1. check you have pip3 installed: pip3 --version<br>If not install with: sudo apt-get install python3-pip<br>2. Install the program: sudo pip3 install qet_tb_generator<br>3. Run the program: qet_tb_generator<br><br><B><U> Update on Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br> - Installation des Plugins qet_tb_generator:<br>Besuche <br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Erfordert Python 3.5 oder höher.<br><br><B><U> Erstinstallation unter Linux</B></U><br>1. Überprüfe, ob pip3 installiert ist: pip3 --version<br>Falls nicht, installiere es mit: sudo apt-get install python3-pip<br>2. Installiere das Programm: sudo pip3 install qet_tb_generator<br>3. Starte das Programm: qet_tb_generator<br><br><B><U> Aktualisierung unter Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br> + To install the plugin qet_tb_generator<br>Visit :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Requires python 3.5 or above.<br><br><B><U> First install on Linux</B></U><br>1. check you have pip3 installed: pip3 --version<br>If not install with: sudo apt-get install python3-pip<br>2. Install the program: sudo pip3 install qet_tb_generator<br>3. Run the program: qet_tb_generator<br><br><B><U> Update on Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br> + Installation des Plugins qet_tb_generator:<br>Besuche <br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Erfordert Python 3.5 oder höher.<br><br><B><U> Erstinstallation unter Linux</B></U><br>1. Überprüfe, ob pip3 installiert ist: pip3 --version<br>Falls nicht, installiere es mit: sudo apt-get install python3-pip<br>2. Installiere das Programm: sudo pip3 install qet_tb_generator<br>3. Starte das Programm: qet_tb_generator<br><br><B><U> Aktualisierung unter Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br> @@ -10694,7 +10694,7 @@ Möchten Sie sie ersetzen? - d'un groupe de bornes + d'un groupe de bornes einer Klemmengruppe @@ -10722,7 +10722,7 @@ Möchten Sie sie ersetzen? - d'un groupe de bornes + d'un groupe de bornes einer Klemmengruppe @@ -10737,7 +10737,7 @@ Möchten Sie sie ersetzen? - Modifier les proriétés d'un groupe de bornes + Modifier les proriétés d'un groupe de bornes Die Eigenschaften einer Klemmengruppe ändern @@ -10828,7 +10828,7 @@ Möchten Sie sie ersetzen? - Modifier les propriétés d'un élement + Modifier les propriétés d'un élement Eigenschaften eines Elements bearbeiten @@ -10843,7 +10843,7 @@ Möchten Sie sie ersetzen? - Modifier la couleur d'un pont de bornes + Modifier la couleur d'un pont de bornes Brückerfarbe ändern @@ -10864,7 +10864,7 @@ Möchten Sie sie ersetzen? - Entrer le facteur d'échelle + Entrer le facteur d'échelle Skalierungsfaktor eingeben @@ -10899,7 +10899,7 @@ Möchten Sie sie ersetzen? - Retourner l'élément : + Retourner l'élément : Element spiegeln @@ -10916,8 +10916,8 @@ zusätzliche Informationen betreffend Import / Skalierung von %1 - Le logiciel QET_ElementScaler est nécessaire pour mettre les éléments à l'échelle. -Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper dans le dossier d'installation + Le logiciel QET_ElementScaler est nécessaire pour mettre les éléments à l'échelle. +Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper dans le dossier d'installation Die Software QET_ElementScaler wird benötigt, um Elemente zu skalieren. Bitte laden Sie diese über den unten stehenden Link herunter und entpacken Sie sie in den Installationsordner. @@ -10936,8 +10936,8 @@ Fehler: Stellen Sie sicher, dass die Datei %1 eine gültige dxf-Datei ist - L'import dxf nécessite le logiciel dxf2elmt. -Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper dans le dossier d'installation + L'import dxf nécessite le logiciel dxf2elmt. +Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper dans le dossier d'installation Für den dxf-Import ist die Software dxf2elmt erforderlich. Bitte laden Sie diese über den Link herunter und entpacken Sie sie in den Installationsordner. @@ -10956,7 +10956,7 @@ Bitte laden Sie diese über den Link herunter und entpacken Sie sie in den Insta Ajouter un folio undo command text - Neue Folie hinzufügen + Neue Seite hinzufügen @@ -10991,14 +10991,14 @@ Bitte laden Sie diese über den Link herunter und entpacken Sie sie in den Insta Les information à afficher sont supérieurs à la quantité maximal pouvant être affiché par les tableaux. -Veuillez ajouter un nouveau tableau ou regler les tableaux existant afin d'afficher l'integralité des informations. +Veuillez ajouter un nouveau tableau ou regler les tableaux existant afin d'afficher l'integralité des informations. Die anzuzeigenden Informationen sind größer als die maximale Menge, die von den Tabellen angezeigt werden kann. Bitte fügen Sie eine neue Tabelle hinzu oder passen Sie die vorhandenen Tabellen an, um alle Informationen anzuzeigen. Les information à afficher sont supérieurs à la quantité maximal pouvant être affiché par le tableau. -Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'afficher l'integralité des informations. +Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'afficher l'integralité des informations. Die anzuzeigenden Informationen sind größer als die maximale Menge, die von der Tabelle angezeigt werden kann. Bitte fügen Sie eine neue Tabelle hinzu oder passen Sie die vorhandene Tabelle an, um alle Informationen anzuzeigen. @@ -11009,7 +11009,7 @@ Bitte fügen Sie eine neue Tabelle hinzu oder passen Sie die vorhandene Tabelle - Modifier la géometrie d'un tableau + Modifier la géometrie d'un tableau Tabellengeometrie ändern @@ -11042,7 +11042,7 @@ Bitte fügen Sie eine neue Tabelle hinzu oder passen Sie die vorhandene Tabelle - Supprimer un point d'un polygone + Supprimer un point d'un polygone Punkt eines Polygons löschen @@ -11144,8 +11144,8 @@ Bitte fügen Sie eine neue Tabelle hinzu oder passen Sie die vorhandene Tabelle - L'élément « %1 » existe déjà. Que souhaitez-vous faire ? - Das Bauteil "%1" ist schon vorhanden. Wie möchten Sie vorgehen? + L'élément « %1 » existe déjà. Que souhaitez-vous faire ? + Das Bauteil "%1" ist schon vorhanden. Wie möchten Sie vorgehen? @@ -11474,7 +11474,7 @@ Bitte fügen Sie eine neue Tabelle hinzu oder passen Sie die vorhandene Tabelle Folio : - Foliennummer: + Seitennummer: @@ -11509,10 +11509,10 @@ Les variables suivantes sont utilisables : - %total : nombre total de folios dans le projet - %autonum : Folio Auto Numeration In der Schriftfeld-Vorlage als %folio verfügbar. -Folgende Variablen stehen im Feld Folie zur Verfügung: -%id: Seitennummer der Folie im Projekt -%total: Anzahl der Folien im Projekt -%autonum: Automatische Foliennummerierung +Folgende Variablen stehen im Feld Seite zur Verfügung: +%id: Seitennummer der Seite im Projekt +%total: Anzahl der Seiten im Projekt +%autonum: Automatische Seitennummerierung @@ -11543,9 +11543,9 @@ Folgende Variablen stehen im Feld Folie zur Verfügung: Vous pouvez définir ici vos propres associations noms/valeurs pour que le cartouche en tienne compte. Exemple : -associer le nom "volta" et la valeur "1745" remplacera %{volta} par 1745 dans le cartouche. +associer le nom "volta" et la valeur "1745" remplacera %{volta} par 1745 dans le cartouche. Hier können Sie Ihre eigenen Kombinationen Variablen/Werte für die Einträge der Datenfelder im Schriftfeld definieren. Zum Beispiel: -die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volta} durch 1745 ersetzen. +die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volta} durch 1745 ersetzen. @@ -11558,7 +11558,7 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt i Label de report de folio - Querverweistext der Folienverweise + Querverweistext der Seitenverweise @@ -11566,14 +11566,14 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt i Créer votre propre texte en vous aidant des variables suivantes : %f : la position du folio dans le projet %F : le numéro de folio -%M : l'installation +%M : l'installation %LM : la localisation %l : le numéro de ligne %c : le numéro de colonne Sie können eigene Querverweistexte definieren. Folgende Variablen sind verfügbar: -%f: Seitennummer der Folie -%F: Foliennummer +%f: Seitennummer der Seite +%F: Seitennummer %M: Anlage %LM: Ort %l: Zeilennummer @@ -11615,7 +11615,7 @@ Folgende Variablen sind verfügbar: Champ texte de folio - Textfeld in Folie + Textfeld in Seite @@ -11625,12 +11625,12 @@ Folgende Variablen sind verfügbar: <html><head/><body><p>Définir les propriétés à remplacer dans les folios</p></body></html> - <html><head/><body><p>Zu ersetzende Folieneigenschaften definieren</p></body></html> + <html><head/><body><p>Zu ersetzende Seiteneigenschaften definieren</p></body></html> Folio - Folie + Seite @@ -11710,7 +11710,7 @@ Folgende Variablen sind verfügbar: Folios - Folien + Seiten @@ -11740,7 +11740,7 @@ Folgende Variablen sind verfügbar: Eléments report de folio - Folienverweise + Seitenverweise @@ -11750,17 +11750,17 @@ Folgende Variablen sind verfügbar: Sélectionner les éléments de ce folio - Bauteile auf dieser Folie auswählen + Bauteile auf dieser Seite auswählen Sélectionner les conducteurs de ce folio - Leiter auf dieser Folie auswählen + Leiter auf dieser Seite auswählen Sélectionner les textes de ce folio - Texte auf dieser Folie auswählen + Texte auf dieser Seite auswählen @@ -11867,54 +11867,54 @@ Folgende Variablen sind verfügbar: Folio Autonumérotation title window - Automatische Foliennummerierung + Automatische Seitennummerierung - C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux folios. --Une numérotation est composée d'une variable minimum. + C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux folios. +-Une numérotation est composée d'une variable minimum. -Vous pouvez ajouter ou supprimer une variable de numérotation par le biais des boutons - et +. -Une variable de numérotation comprend : un type, une valeur et une incrémentation. --les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau folio de la valeur du champ "Incrémentation". --"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. +-les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau folio de la valeur du champ "Incrémentation". +-"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. Si le chiffre défini dans le champ Valeur possède moins de digits que le type choisi,celui-ci sera précédé par un ou deux 0 afin de respecter son type. --Le type "Texte", représente un texte fixe. -Le champ "Incrémentation" n'est pas utilisé. +-Le type "Texte", représente un texte fixe. +Le champ "Incrémentation" n'est pas utilisé. help dialog about the folio autonumerotation - In diesem Dialog können Sie die Nummerierungsregel für neu angelegte Folien definieren. + In diesem Dialog können Sie die Nummerierungsregel für neu angelegte Seiten definieren. - Eine Nummerierungsregel beinhaltet mindestens eine Variable. - Variablen können mittels Knöpfe - und + gelöscht bzw. hinzugefügt werden. - Eine Variable beinhaltet: einen Typ, einen Wert und eine Inkrementierung. -- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. -- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. -Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. +- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. +- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. +Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. -- Der Typ "Text" steht für einen fixen Text. -In diesem Fall wird das Feld "Inkrementierung" ignoriert. +- Der Typ "Text" steht für einen fixen Text. +In diesem Fall wird das Feld "Inkrementierung" ignoriert. - C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux conducteurs. --Une numérotation est composée d'une variable minimum. + C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux conducteurs. +-Une numérotation est composée d'une variable minimum. -Vous pouvez ajouter ou supprimer une variable de numérotation par le biais des boutons - et +. -Une variable de numérotation comprend : un type, une valeur et une incrémentation. --les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau conducteur de la valeur du champ "Incrémentation". --"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. +-les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau conducteur de la valeur du champ "Incrémentation". +-"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. Si le chiffre défini dans le champ Valeur possède moins de digits que le type choisi,celui-ci sera précédé par un ou deux 0 afin de respecter son type. --Le type "Texte", représente un texte fixe. -Le champ "Incrémentation" n'est pas utilisé. +-Le type "Texte", représente un texte fixe. +Le champ "Incrémentation" n'est pas utilisé. --Le type "N° folio" représente le n° du folio en cours. +-Le type "N° folio" représente le n° du folio en cours. Les autres champs ne sont pas utilisés. --Le type "Folio" représente le nom du folio en cours. +-Le type "Folio" représente le nom du folio en cours. Les autres champs ne sont pas utilisés. help dialog about the conductor autonumerotation In diesem Dialog können Sie die Nummerierungsregel für neue Leiter definieren. @@ -11922,17 +11922,17 @@ Les autres champs ne sont pas utilisés. - Variablen können mittels Knöpfe - und + gelöscht bzw. hinzugefügt werden. - Eine Variable beinhaltet: einen Typ, einen Wert und eine Inkrementierung. -- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. -- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. -Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. +- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. +- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. +Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. -- Der Typ "Text" steht für einen fixen Text. -In diesem Fall wird das Feld "Inkrementierung" ignoriert. +- Der Typ "Text" steht für einen fixen Text. +In diesem Fall wird das Feld "Inkrementierung" ignoriert. -- Der Typ "Foliennummer" steht für die Seitennummer der Folie. +- Der Typ "Seitennummer" steht für die Seitennummer der Seite. Andere Felder werden nicht verwendet. -- Der Typ "Folie" steht für die Foliennummer. +- Der Typ "Seite" steht für die Seitennummer. Andere Felder werden nicht verwendet. @@ -11943,22 +11943,22 @@ Andere Felder werden nicht verwendet. - C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux elements. --Une numérotation est composée d'une variable minimum. + C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux elements. +-Une numérotation est composée d'une variable minimum. -Vous pouvez ajouter ou supprimer une variable de numérotation par le biais des boutons - et +. -Une variable de numérotation comprend : un type, une valeur et une incrémentation. --les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau conducteur de la valeur du champ "Incrémentation". --"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. +-les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau conducteur de la valeur du champ "Incrémentation". +-"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. Si le chiffre défini dans le champ Valeur possède moins de digits que le type choisi,celui-ci sera précédé par un ou deux 0 afin de respecter son type. --Le type "Texte", représente un texte fixe. -Le champ "Incrémentation" n'est pas utilisé. +-Le type "Texte", représente un texte fixe. +Le champ "Incrémentation" n'est pas utilisé. --Le type "N° folio" représente le n° du folio en cours. +-Le type "N° folio" représente le n° du folio en cours. Les autres champs ne sont pas utilisés. --Le type "Folio" représente le nom du folio en cours. +-Le type "Folio" représente le nom du folio en cours. Les autres champs ne sont pas utilisés. help dialog about the element autonumerotation In diesem Dialog können Sie die Nummerierungsregel für neue Elemente definieren. @@ -11966,17 +11966,17 @@ Les autres champs ne sont pas utilisés. - Variablen können mittels Knöpfe - und + gelöscht bzw. hinzugefügt werden. - Eine Variable beinhaltet: einen Typ, einen Wert und eine Inkrementierung. -- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. -- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. -Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. +- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. +- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. +Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. -- Der Typ "Text" steht für einen fixen Text. -In diesem Fall wird das Feld "Inkrementierung" ignoriert. +- Der Typ "Text" steht für einen fixen Text. +In diesem Fall wird das Feld "Inkrementierung" ignoriert. -- Der Typ "Foliennummer" steht für die Seitennummer der Folie. +- Der Typ "Seitennummer" steht für die Seitennummer der Seite. Andere Felder werden nicht verwendet. -- Der Typ "Folie" steht für die Foliennummer. +- Der Typ "Seite" steht für die Seitennummer. Andere Felder werden nicht verwendet. @@ -12141,17 +12141,17 @@ Andere Felder werden nicht verwendet. - Éditer les propriétés d'une primitive + Éditer les propriétés d'une primitive Stammfunktioneigenschaften bearbeiten - Modifier le trait d'une forme + Modifier le trait d'une forme Linie einer Form ändern - Modifier le remplissage d'une forme + Modifier le remplissage d'une forme Füllung einer Form ändern @@ -12167,7 +12167,7 @@ Andere Felder werden nicht verwendet. - Modifier les propriétés d'une forme simple + Modifier les propriétés d'une forme simple Eigenschaften einer geometrischen Form ändern @@ -14261,7 +14261,7 @@ Andere Felder werden nicht verwendet. - Modifier l'orientation d'une borne + Modifier l'orientation d'une borne Orientierung eines Anschlusses ändern @@ -14314,7 +14314,7 @@ Andere Felder werden nicht verwendet. - Modifier le type d'une borne + Modifier le type d'une borne Typ des Anschlusses ändern @@ -14345,7 +14345,7 @@ Andere Felder werden nicht verwendet. - Modifier l'alignement du label + Modifier l'alignement du label Ausrichtung der Beschriftung ändern @@ -14361,7 +14361,7 @@ Andere Felder werden nicht verwendet. - Modifier l'étiquette du maître + Modifier l'étiquette du maître Die Bezeichnung des Masters ändern @@ -14370,11 +14370,11 @@ Andere Felder werden nicht verwendet. Modifier le nom de la borne Den Namen des Anschlusses ändern - + - Modifier l'index de l'étiquette du maître + Modifier l'index de l'étiquette du maître Den Index des Master-Tags ändern @@ -14482,7 +14482,7 @@ Andere Felder werden nicht verwendet. - Cette fonction numérote les bornes du projet selon leur position. Les bornes vides ou verrouillées sont ignorées.Le marquage des bornes doit être configuré au préalable comme suit : '-X:AB'. La partie avant les deux-points (le bornier) peut être nommée au choix. 'AB' peut être composé de chiffres ou de lettres." + Cette fonction numérote les bornes du projet selon leur position. Les bornes vides ou verrouillées sont ignorées.Le marquage des bornes doit être configuré au préalable comme suit : '-X:AB'. La partie avant les deux-points (le bornier) peut être nommée au choix. 'AB' peut être composé de chiffres ou de lettres." Diese Funktion nummeriert die Klemmen des Projekts entsprechend ihrer Position. Leere oder gesperrte Klemmen werden dabei ignoriert. Die Klemmenbezeichnung muss zuvor wie folgt konfiguriert werden: „-X:AB“. Der Teil vor dem Doppelpunkt (die Klemmenleiste) kann beliebig benannt werden. „AB“ kann aus Ziffern oder Buchstaben bestehen. @@ -14492,12 +14492,12 @@ Andere Felder werden nicht verwendet. - Priorité à l'axe X (horizontal) + Priorité à l'axe X (horizontal) Priorität für die X-Achse (horizontal) - Priorité à l'axe Y (vertical) + Priorité à l'axe Y (vertical) Priorität für die Y-Achse (vertikal) @@ -14788,7 +14788,7 @@ Andere Felder werden nicht verwendet. - Afficher l'aide + Afficher l'aide Hilfe anzeigen @@ -14818,7 +14818,7 @@ Andere Felder werden nicht verwendet. - Texte d'en tête + Texte d'en tête Kopfzeile @@ -14990,7 +14990,7 @@ Andere Felder werden nicht verwendet. TextEditor - Modifier le contenu d'un champ texte + Modifier le contenu d'un champ texte Inhalt eines Textfelds ändern @@ -15001,12 +15001,12 @@ Andere Felder werden nicht verwendet. - Modifier la police d'un texte + Modifier la police d'un texte Schriftart eines Texts ändern - Modifier la couleur d'un texte + Modifier la couleur d'un texte Farbe eines Texts ändern @@ -15062,12 +15062,12 @@ Andere Felder werden nicht verwendet. - Point d'ancrage du texte et alignement des lignes entre elles + Point d'ancrage du texte et alignement des lignes entre elles Bezugspunkt des Textes und Ausrichtung der Zeilen zueinander - Modifier l'alignement d'un champ texte + Modifier l'alignement d'un champ texte Ausrichtung eines Textfelds ändern @@ -15156,7 +15156,7 @@ Andere Felder werden nicht verwendet. Créer un Folio Numérotation Auto - Neue auto-nummerierte Folie anlegen + Neue auto-nummerierte Seite anlegen @@ -15171,7 +15171,7 @@ Andere Felder werden nicht verwendet. Folio : - Foliennummer: + Seitennummer: @@ -15241,10 +15241,10 @@ Les variables suivantes sont utilisables : - %total : nombre total de folios dans le projet - %autonum : Folio Auto Numeration In Schriftfeld-Vorlagen als %folio verfügbar. -Folgende Variablen stehen im Feld Folie zur Verfügung: -%id: Seitennummer der Folie im Projekt -%total: Anzahl der Folien im Projekt -%autonum: Automatische Foliennummerierung +Folgende Variablen stehen im Feld Seite zur Verfügung: +%id: Seitennummer der Seite im Projekt +%total: Anzahl der Seiten im Projekt +%autonum: Automatische Seitennummerierung @@ -15254,7 +15254,7 @@ Folgende Variablen stehen im Feld Folie zur Verfügung: <html><head/><body><p>Affiche le cartouche en bas (horizontalement) ou à droite (verticalement) du folio.</p></body></html> - <html><head/><body><p>Zeigt das Schriftfeld unter der Folie (waagerecht) oder rechts davon (senkrecht) an.</p></body></html> + <html><head/><body><p>Zeigt das Schriftfeld unter der Seite (waagerecht) oder rechts davon (senkrecht) an.</p></body></html> @@ -15304,9 +15304,9 @@ Folgende Variablen stehen im Feld Folie zur Verfügung: Vous pouvez définir ici vos propres associations noms/valeurs pour que le cartouche en tienne compte. Exemple : -associer le nom "volta" et la valeur "1745" remplacera %{volta} par 1745 dans le cartouche. +associer le nom "volta" et la valeur "1745" remplacera %{volta} par 1745 dans le cartouche. Hier können Sie Ihre eigenen Kombinationen Variablen/Werte für die Einträge der Datenfelder im Schriftfeld definieren. Zum Beispiel: -die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volta} durch 1745 ersetzen. +die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volta} durch 1745 ersetzen. @@ -15353,8 +15353,8 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt i - Attention : les bordures des cellules vides n'apparaissent pas lors du rendu final sur le folio. - Achtung: der Rahmen von leeren Zellen wird nicht auf der Folie angezeigt. + Attention : les bordures des cellules vides n'apparaissent pas lors du rendu final sur le folio. + Achtung: der Rahmen von leeren Zellen wird nicht auf der Seite angezeigt. @@ -15455,19 +15455,19 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt i - Édition d'une cellule : %1 + Édition d'une cellule : %1 label of and undo command when editing a cell Zellenbearbeitung: %1 - Par défaut, les variables suivantes sont disponibles :<ul><li>%{author} : auteur du folio</li><li>%{date} : date du folio</li><li>%{title} : titre du folio</li><li>%{filename} : nom de fichier du projet</li><li>%{plant} : nom de l'installation (=) dans laquelle se trouve le folio</li><li>%{locmach} : nom de la localisation (+) dans laquelle se trouve le folio</li><li>%{indexrev} : indice de révision du folio</li><li>%{version} : version du logiciel</li><li>%{folio} : numéro du folio</li><li>%{folio-id} : position du folio dans le projet</li><li>%{folio-total} : nombre total de folios dans le projet</li><li>%{previous-folio-num} : numéro du folio précédent</li><li>%{next-folio-num} : numéro du folio suivant</li><li>%{projecttitle} : titre du projet</li><li>%{projectpath} : chemin du projet</li><li>%{projectfilename} : nom du fichier</li><li>%{saveddate} : date d'enregistrement du fichier format local</li><li>%{saveddate-eu} : date d'enregistrement du fichier format dd-MM-yyyy</li><li>%{saveddate-us} : date d'enregistrement du fichier format yyyy-MM-dd</li><li>%{savedtime} : heure d'enregistrement du fichier</li><li>%{savedfilename} : nom du fichier enregistré</li><li>%{savedfilepath} : chemin du fichier enregistré</li></ul> - Standardmäßig sind die folgenden Variablen verfügbar:<ul><li>%{author}: Autor der Folie </li><li>%{date}: Datum der Folie</li><li>%{title}: Titel der Folie</li><li>%{filename}: Dateiname des Projekts</li><li>%{plant}: Name der Anlage (=), zu der die Folie gehört</li><li>%{locmach}: Name des Ortes (+), zu dem die Folie gehört</li><li>%{indexrev}: Revisionsindex der Folie</li><li>%{version}: Softwareversion</li><li>%{folio}: Foliennummer</li><li>%{folio-id}: Seitennummer der Folie</li><li>%{folio-total}: Anzahl der Folien im Projekt</li><li>%{previous-folio-num}: Nummer der vorherigen Folie</li><li>%{next-folio-num}: Nummer der nächsten Folie</li><li>%{projecttitle}: Titel des Projekts</li><li>%{projectpath}: Projektpfad</li><li>%{projectfilename}: Name der Projektdatei</li><li>%{saveddate}: Speicherdatum der Dateim im lokalen Format</li><li>%{saveddate-eu}: Speicherdatum der Datei im Format TT-MM-JJJJ</li><li>%{saveddate-us}: Speicherdatum der Datei im Format JJJJ-MM-TT</li><li>%{savedtime}: Zeitpunkt des Speicherns der Datei</li><li>%{savedfilename}: Name der gespeicherten Datei</li><li>%{savedfilepath}: Pfad zur gespeicherten Datei</li></ul> + Par défaut, les variables suivantes sont disponibles :<ul><li>%{author} : auteur du folio</li><li>%{date} : date du folio</li><li>%{title} : titre du folio</li><li>%{filename} : nom de fichier du projet</li><li>%{plant} : nom de l'installation (=) dans laquelle se trouve le folio</li><li>%{locmach} : nom de la localisation (+) dans laquelle se trouve le folio</li><li>%{indexrev} : indice de révision du folio</li><li>%{version} : version du logiciel</li><li>%{folio} : numéro du folio</li><li>%{folio-id} : position du folio dans le projet</li><li>%{folio-total} : nombre total de folios dans le projet</li><li>%{previous-folio-num} : numéro du folio précédent</li><li>%{next-folio-num} : numéro du folio suivant</li><li>%{projecttitle} : titre du projet</li><li>%{projectpath} : chemin du projet</li><li>%{projectfilename} : nom du fichier</li><li>%{saveddate} : date d'enregistrement du fichier format local</li><li>%{saveddate-eu} : date d'enregistrement du fichier format dd-MM-yyyy</li><li>%{saveddate-us} : date d'enregistrement du fichier format yyyy-MM-dd</li><li>%{savedtime} : heure d'enregistrement du fichier</li><li>%{savedfilename} : nom du fichier enregistré</li><li>%{savedfilepath} : chemin du fichier enregistré</li></ul> + Standardmäßig sind die folgenden Variablen verfügbar:<ul><li>%{author}: Autor der Seite </li><li>%{date}: Datum der Seite</li><li>%{title}: Titel der Seite</li><li>%{filename}: Dateiname des Projekts</li><li>%{plant}: Name der Anlage (=), zu der die Seite gehört</li><li>%{locmach}: Name des Ortes (+), zu dem die Seite gehört</li><li>%{indexrev}: Revisionsindex der Seite</li><li>%{version}: Softwareversion</li><li>%{folio}: Seitennummer</li><li>%{folio-id}: Seitennummer der Seite</li><li>%{folio-total}: Anzahl der Seiten im Projekt</li><li>%{previous-folio-num}: Nummer der vorherigen Seite</li><li>%{next-folio-num}: Nummer der nächsten Seite</li><li>%{projecttitle}: Titel des Projekts</li><li>%{projectpath}: Projektpfad</li><li>%{projectfilename}: Name der Projektdatei</li><li>%{saveddate}: Speicherdatum der Dateim im lokalen Format</li><li>%{saveddate-eu}: Speicherdatum der Datei im Format TT-MM-JJJJ</li><li>%{saveddate-us}: Speicherdatum der Datei im Format JJJJ-MM-TT</li><li>%{savedtime}: Zeitpunkt des Speicherns der Datei</li><li>%{savedfilename}: Name der gespeicherten Datei</li><li>%{savedfilepath}: Pfad zur gespeicherten Datei</li></ul> - Chaque cellule d'un cartouche affiche une valeur, optionnellement précédée d'un label. Tous deux peuvent être traduits en plusieurs langues.<br/>Comme ce que vous éditez actuellement est un <em>modèle</em> de cartouche, ne saisissez pas directement des données brutes : insérez plutôt des variables sous la forme %{nom-de-variable}, qui seront ensuite remplacées par les valeurs adéquates sur le folio. - Jede Zelle des Schriftfelds zeigt einen Wert und optional einen vorangestelltes Label an. Beide Elemente können in verschiedene Sprachen übersetzt werden.<br/>Gerade wird eine <em>Vorlage</em> für ein Schriftfeld bearbeitet. Tragen Sie keine statischen Daten ein: Nutzen Sie eher Variablen in der Form %{Variablenname}, um deren Werte im Schriftfeld der Folie anzuzeigen. + Chaque cellule d'un cartouche affiche une valeur, optionnellement précédée d'un label. Tous deux peuvent être traduits en plusieurs langues.<br/>Comme ce que vous éditez actuellement est un <em>modèle</em> de cartouche, ne saisissez pas directement des données brutes : insérez plutôt des variables sous la forme %{nom-de-variable}, qui seront ensuite remplacées par les valeurs adéquates sur le folio. + Jede Zelle des Schriftfelds zeigt einen Wert und optional einen vorangestelltes Label an. Beide Elemente können in verschiedene Sprachen übersetzt werden.<br/>Gerade wird eine <em>Vorlage</em> für ein Schriftfeld bearbeitet. Tragen Sie keine statischen Daten ein: Nutzen Sie eher Variablen in der Form %{Variablenname}, um deren Werte im Schriftfeld der Seite anzuzeigen. @@ -15578,8 +15578,8 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt i - Il existe déjà un logo portant le nom "%1" au sein de ce modèle de cartouche. Voulez-vous le remplacer ou préférez-vous spécifier un autre nom pour ce nouveau logo ? - Es existiert bereits ein Logo mit dem Namen "%1" in dieser Schriftfeld-Vorlage. Vorhandenes Logo ersetzen oder neues Logo umbenennen? + Il existe déjà un logo portant le nom "%1" au sein de ce modèle de cartouche. Voulez-vous le remplacer ou préférez-vous spécifier un autre nom pour ce nouveau logo ? + Es existiert bereits ein Logo mit dem Namen "%1" in dieser Schriftfeld-Vorlage. Vorhandenes Logo ersetzen oder neues Logo umbenennen? @@ -15604,7 +15604,7 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt i - Impossible d'ouvrir le fichier spécifié + Impossible d'ouvrir le fichier spécifié Öffnen der Datei nicht möglich @@ -15619,7 +15619,7 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt i - Impossible d'exporter vers le fichier spécifié + Impossible d'exporter vers le fichier spécifié Exportieren zur Zieldatei nicht möglich @@ -15748,12 +15748,12 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt i - Changer la largeur de l'aperçu + Changer la largeur de l'aperçu Breite der Vorschau bearbeiten - Largeur de l'aperçu : + Largeur de l'aperçu : Breite der Vorschau: @@ -15791,9 +15791,9 @@ Maximale Länge: %2px - Cartouches du projet "%1" + Cartouches du projet "%1" collection title when the project has a suitable title -- %1 is the project title - Schriftfelder vom Projekt "%1" + Schriftfelder vom Projekt "%1" @@ -15821,7 +15821,7 @@ Maximale Länge: %2px - Impossible d'ouvrir le fichier pour l'écriture. + Impossible d'ouvrir le fichier pour l'écriture. Die Datei kann nicht zum Schreiben geöffnet werden. @@ -15986,8 +15986,8 @@ Maximale Länge: %2px %M: Installation %LM: Localisation Folgende Variablen sind verfügbar: -%f: Seitennummer der Folie -%F: Foliennummer +%f: Seitennummer der Seite +%F: Seitennummer %l: Zeilennummer %c: Spaltennummer %M: Anlage @@ -15995,7 +15995,7 @@ Maximale Länge: %2px - Option d'affichage en croix + Option d'affichage en croix Optionen für die Darstellung als Tabelle @@ -16041,11 +16041,11 @@ Maximale Länge: %2px En bas de page - Im unteren Bereich der Folie + Im unteren Bereich der Seite - Sous le label de l'élément + Sous le label de l'élément Unter dem Betriebsmittelkennzeichen @@ -16109,7 +16109,7 @@ Maximale Länge: %2px Folio sans titre - Folie ohne Titel + Seite ohne Titel @@ -16279,7 +16279,7 @@ Maximale Länge: %2px Folio - Folie + Seite From 6bf6a17dc9297de57789631bfbdbdef0841c05ce Mon Sep 17 00:00:00 2001 From: plc-user <74435298+plc-user@users.noreply.github.com> Date: Mon, 10 Aug 2026 21:33:24 +0200 Subject: [PATCH 05/26] update German translations --- lang/qet_de.qm | Bin 359924 -> 360638 bytes lang/qet_de.ts | 1645 +++++++++++++++++++++++++----------------------- 2 files changed, 849 insertions(+), 796 deletions(-) diff --git a/lang/qet_de.qm b/lang/qet_de.qm index c56ae634eb5e3f31057f42e521ba5477415e1e5c..9a62f57722c23e9bbd8c0f86aff5d9982fa75dbe 100644 GIT binary patch delta 23262 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 delta 22827 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 YUsxLHSh_>eIyP@tGTh}mmDCUZ1HtdLjsO4v diff --git a/lang/qet_de.ts b/lang/qet_de.ts index 074edf951..b70016135 100644 --- a/lang/qet_de.ts +++ b/lang/qet_de.ts @@ -67,9 +67,9 @@ - Contact : <a href="mailto:qet@lists.tuxfamily.org">qet@lists.tuxfamily.org</a> + Contact : <a href="mailto:qet@lists.tuxfamily.org">qet@lists.tuxfamily.org</a> about tab, contact line - Kontakt: <a href="mailto:qet@lists.tuxfamily.org">qet@lists.tuxfamily.org</a> + Kontakt: <a href="mailto:qet@lists.tuxfamily.org">qet@lists.tuxfamily.org</a> @@ -277,24 +277,24 @@ - Collection d'éléments + Collection d'éléments Bauteilsammlung - Redimensionneur d'éléments + Redimensionneur d'éléments Element scaler Skalieren von Elementen - Convertisseur d'élément DXF + Convertisseur d'élément DXF Dxf2elmt DXF-zu-Element - Konverter - Outil de traduction d'éléments + Outil de traduction d'éléments Qet_translate Element-Namen übersetzen @@ -320,7 +320,7 @@ - Générateur d'élément lambda + Générateur d'élément lambda Lambda element generator Lambda-Element-Generator @@ -507,46 +507,75 @@ Auswahl Nummerierungsregeln - - - + + Valeur + Wert + + + + Incrément + Inkrement + + + + Suivant + Nächstes + + + + + Réinitialiser à la valeur de départ Auf den Ausgangswert zurücksetzen - - - + + + Valeur actuelle du compteur. Saisir une nouvelle valeur et valider pour la modifier. Aktueller Zählerstand. Geben Sie einen neuen Wert ein und bestätigen Sie, um ihn zu ändern. - + + + + Incrément : valeur ajoutée au compteur à chaque nouvelle numérotation + Inkrement: Wert, der bei jeder neuen Nummerierung zum Zähler addiert wird + + + + + + Prochaine valeur qui sera appliquée avec cet incrément + Nächster Wert, der mit diesem Inkrement angewendet wird + + + Element Bauteil - + Conducteur Leiter - - Configurer les règles d'auto numérotation + + Configurer les règles d'auto numérotation Nummerierungsregel konfigurieren - + Configurer Konfigurieren - + Folio Seite - + Autonumérotation Automatische Nummerierung @@ -746,7 +775,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Quantité numéro d'article + Quantité numéro d'article Special field with name : designation quantity Menge Artikelnummer @@ -844,7 +873,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.Conductor - Modifier les propriétés d'un conducteur + Modifier les propriétés d'un conducteur undo caption Leitereigenschaften ändern @@ -859,17 +888,17 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.ConductorPropertiesDialog - Éditer les propriétés d'un conducteur + Éditer les propriétés d'un conducteur Leitereigenschaften bearbeiten - Appliquer les propriétés à l'ensemble des conducteurs de ce potentiel + Appliquer les propriétés à l'ensemble des conducteurs de ce potentiel Eigenschaften auf alle Verbindungen dieses Potenzials übertragen - Modifier les propriétés d'un conducteur + Modifier les propriétés d'un conducteur undo caption Leitereigenschaften ändern @@ -950,8 +979,8 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - activer l'option un texte par potentiel - Option "ein Text je Potenzial" aktivieren + activer l'option un texte par potentiel + Option "ein Text je Potenzial" aktivieren @@ -1155,7 +1184,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. # - + # @@ -1315,7 +1344,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Impossible d'écrire dans le fichier « %1 ». + Impossible d'écrire dans le fichier « %1 ». Die Datei „%1“ kann nicht beschrieben werden. @@ -1382,7 +1411,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. DiagramEventAddElement - + Ajouter %1 Einfügen von .%1 @@ -1423,8 +1452,8 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.DiagramView - Ceci est la zone dans laquelle vous concevez vos schémas en y ajoutant des éléments et en posant des conducteurs entre leurs bornes. Il est également possible d'ajouter des textes indépendants. - "What's this?" tip + Ceci est la zone dans laquelle vous concevez vos schémas en y ajoutant des éléments et en posant des conducteurs entre leurs bornes. Il est également possible d'ajouter des textes indépendants. + "What's this?" tip In diesem Bereich entwerfen Sie Ihre Schaltpläne, indem Sie Elemente hinzufügen und Leiter zwischen Anschlüssen verlegen. Es ist auch möglich, unabhängige Texte hinzuzufügen. @@ -1479,7 +1508,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Le fichier n'a pas pu être écrit. + Le fichier n'a pas pu être écrit. Die Datei konnte nicht geschrieben werden. @@ -1489,7 +1518,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Modifier les propriétés d'un conducteur + Modifier les propriétés d'un conducteur undo caption Leitereigenschaften ändern @@ -1521,7 +1550,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Éditer un texte d'élément + Éditer un texte d'élément Textfeld eines Bauteils bearbeiten @@ -1534,7 +1563,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Exporter l'actuelle configuration des textes + Exporter l'actuelle configuration des textes Aktuelle Texteinstellungen exportieren @@ -1573,17 +1602,17 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Modifier des textes d'élément + Modifier des textes d'élément Texte eines Bauteils bearbeiten - Modifier un texte d'élément + Modifier un texte d'élément Text eines Bauteils bearbeiten - Modifier %1 textes d'élément + Modifier %1 textes d'élément %1 Texte eines Bauteils bearbeiten @@ -1600,211 +1629,211 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. DynamicElementTextModel - + Propriété Eigenschaft - + Valeur Wert - + Source du texte Textquelle - - - - - + + + + + Texte utilisateur Benutzertext - - - - - - Information de l'élément + + + + + + Information de l'élément Bauteilinformation - - - - - + + + + + Texte composé Zusammengesetzter Text - + Texte Text - + Information Information - + Mon texte composé Mein zusammengesetzter Text - + Taille Größe - + Police Schriftart - + Largeur Breite - + Conserver la rotation visuel Leserichtung beim Drehen beibehalten - + Éditer Bearbeiten - - Modifier la police d'un texte d'élément + + Modifier la police d'un texte d'élément Schriftart eines Bauteiltexts ändern - - Modifier le maintient de la rotation d'un texte d'élément + + Modifier le maintient de la rotation d'un texte d'élément Verhalten der Leserichtung beim Drehen eines Bauteiltexts ändern - - Modifier l'alignement d'un texte d'élément + + Modifier l'alignement d'un texte d'élément Ausrichtung eines Bauteiltexts ändern - - Modifier la taille d'un texte d'élément + + Modifier la taille d'un texte d'élément Größe eines Bauteiltexts ändern - - Modifier la couleur d'un texte d'élément + + Modifier la couleur d'un texte d'élément Farbe eines Bauteiltexts ändern - - Modifier le cadre d'un texte d'élément + + Modifier le cadre d'un texte d'élément Rahmen eines Bauteiltexts ändern - - Modifier la largeur d'un texte d'élément + + Modifier la largeur d'un texte d'élément Breite eines Bauteiltexts ändern - - Déplacer un texte d'élément + + Déplacer un texte d'élément Text eines Bauteils verschieben - - Pivoter un texte d'élément + + Pivoter un texte d'élément Textfeld eines Bauteils drehen - + Éditer un groupe de textes Textgruppe bearbeiten - - - + + + Gauche Linksbündig - - - + + + Droite Rechtsbündig - - - + + + Centre Zentriert - - + + Alignement Ausrichtung - + Ajustement vertical Zeilenabstand - + Maintenir en bas de page Am unteren Rand der Seite platzieren - + Déplacer un texte dans un autre groupe Text in eine andere Gruppe verschieben - + Couleur Farbe - - + + Cadre Rahmen - - + + Position X Position X - - + + Position Y Position Y - - + + Rotation Drehung - - Éditer un texte d'élément + + Éditer un texte d'élément Textfeld eines Bauteils bearbeiten @@ -1816,7 +1845,7 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.Form - + Source du texte Textquelle @@ -1837,27 +1866,27 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. - Information de l'élément + Information de l'élément Bauteilinformation - + Encadrer le texte Text einrahmen - + Texte composé Zusammengesetzter Text - + Police Schriftart - + X X @@ -1867,78 +1896,84 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren.Breite - + Y Y - + Alignement Ausrichtung - + Rotation Drehung - - + + Déplacer un champ texte Textfeld verschieben - + Pivoter un champ texte Textfeld drehen - - Modifier le texte d'un champ texte + + Modifier le texte d'un champ texte Text eines Textfelds ändern - - - Modifier la police d'un champ texte + + + Modifier la police d'un champ texte Schriftart eines Textfelds ändern - - Modifier la couleur d'un champ texte + + Modifier la couleur d'un champ texte Farbe eines Textfelds ändern - - Modifier la conservation de l'angle + + Modifier la conservation de l'angle Beibehaltung des Winkels ändern - - Modifier le cadre d'un champ texte + + Modifier le point de rotation d'un champ texte + Rotationspunkt eines Textfelds ändern + + + + Modifier le cadre d'un champ texte Rahmen eines Textfelds ändern - - Modifier la largeur d'un texte + + Modifier la largeur d'un texte Breite eines Bauteiltexts ändern - - Modifier l'information d'un texte + + Modifier l'information d'un texte Text eines Textfelds ändern - - Modifier la source de texte, d'un texte + + Modifier la source de texte, d'un texte Quelle eines Texts ändern - - Modifier l'alignement d'un champ texte + + Modifier l'alignement d'un champ texte Ausrichtung eines Textfelds ändern + Tourner autour de son propre centre Um eigenen Mittelpunkt drehen @@ -1946,32 +1981,32 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. DynamicTextItemDelegate - + Texte utilisateur Benutzertext - - Information de l'élément + + Information de l'élément Bauteilinformation - + Texte composé Zusammengesetzter Text - + Gauche Linksbündig - + Centre Zentriert - + Droite Rechtsbündig @@ -2021,146 +2056,146 @@ Bemerkung: diese Optionen verhindern NICHT das automatische Nummerieren. ElementDialog - + Ouvrir un élément dialog title Bauteil öffnen - - Choisissez l'élément que vous souhaitez ouvrir. + + Choisissez l'élément que vous souhaitez ouvrir. dialog content Wählen Sie das zu öffnende Bauteil. - + Enregistrer un élément dialog title Bauteil speichern - - Choisissez l'élément dans lequel vous souhaitez enregistrer votre définition. + + Choisissez l'élément dans lequel vous souhaitez enregistrer votre définition. dialog content Wählen Sie ein Bauteil, in dem Sie Ihre Definition speichern wollen. - + Ouvrir une catégorie dialog title Kategorie öffnen - - + + Choisissez une catégorie. dialog content Kategorie auswählen. - + Enregistrer une catégorie dialog title Kategorie speichern - + Enregistrer un template dialog title Vorlage speichern - - Choisissez l'emplacement dans lequel vous souhaitez enregistrer votre template. + + Choisissez l'emplacement dans lequel vous souhaitez enregistrer votre template. dialog content Wählen Sie den Speicherort, an dem Sie Ihre Vorlage speichern möchten. - + Titre Titel - + Label Betriebsmittelkennzeichen - + Nom du nouveau dossier Name vom neuen Ordner - + Nom du nouveau template Name der neuen Vorlage - + Écraser le template ? message box title Die Vorlage überschreiben? - - Le template existe déjà. Voulez-vous l'écraser ? + + Le template existe déjà. Voulez-vous l'écraser ? message box content Die Vorlage existiert bereits. Möchten Sie sie überschreiben? - - Vous devez sélectionner un élément ou une catégorie avec un nom pour l'élément. + + Vous devez sélectionner un élément ou une catégorie avec un nom pour l'élément. message box content Sie müssen ein Bauteil oder eine Kategorie auswählen. - + Sélection inexistante message box title Keine Auswahl - - Nom de fichier de l'élément - placeholder: the element's file name, not its display name + + Nom de fichier de l'élément + placeholder: the element's file name, not its display name Dateiname des Elements - - Nom de fichier de l'élément : chiffres, minuscules, « - », « _ » et « . » uniquement. -Le nom affiché de l'élément se modifie séparément dans les propriétés de l'élément. + + Nom de fichier de l'élément : chiffres, minuscules, « - », « _ » et « . » uniquement. +Le nom affiché de l'élément se modifie séparément dans les propriétés de l'élément. tooltip for the element file-name field Dateiname des Elements: Nur Ziffern, Kleinbuchstaben, „-“, „_“ und „.“. Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des Elements ändern. - - La sélection n'existe pas. + + La sélection n'existe pas. message box content Auswahl existiert nicht. - - + + Sélection incorrecte message box title Auswahl nicht korrekt - - La sélection n'est pas un élément. + + La sélection n'est pas un élément. message box content Auswahl ist kein Bauteil. - - Écraser l'élément ? + + Écraser l'élément ? message box title Bauteil überschreiben? - - L'élément existe déjà. Voulez-vous l'écraser ? + + L'élément existe déjà. Voulez-vous l'écraser ? message box content Das Bauteil existiert bereits. Soll es überschrieben werden? @@ -2220,15 +2255,15 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El ElementPropertiesEditorWidget - Propriété de l'élément + Propriété de l'élément Bauteileigenschaften - - + + Type Typ @@ -2269,7 +2304,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Définir le nombre maximal d'esclaves + Définir le nombre maximal d'esclaves max. Slave-Anzahl definieren @@ -2299,8 +2334,8 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - - + + Fonction Funktion @@ -2322,7 +2357,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - + Simple Einzelbauteil @@ -2363,19 +2398,19 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - + Normalement ouvert Schliesser - + Normalement fermé Öffner - + Inverseur Wechsler @@ -2391,25 +2426,25 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - + Puissance Leistung - + Temporisé travail anzugverzögert - + Temporisé repos abfallverzögert - + Temporisé travail & repos Anzug- und Abfallverzögert @@ -2465,152 +2500,152 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El Neutralleiter - - + + + - - + T%1 T%1 - + Autre Andere - + Configuration PLC SPS-Konfiguration - + + + - + - - - - + + Adresse Adresse - - + + Commentaire Kommentar - + Réf. croisée Querverweis - - + + Nb. Anzahl - + T1 T1 - + Police des en-têtes Schriftart der Überschriften - + Configurer la police des en-têtes de colonnes Schriftart für Spaltenüberschriften festlegen - + Police du texte Schriftart des Textes - + Configurer la police du texte dans les cellules Schriftart des Textes in den Zellen festlegen - + Afficher les en-têtes sur la feuille Kopfzeilen auf dem Blatt anzeigen - + Afficher ou masquer les en-têtes de colonnes du tableau PLC sur la feuille Spaltenüberschriften der SPS-Tabelle auf dem Blatt anzeigen oder ausblenden - + Saut %1 après: Sprung %1 danach: - + Aucun Keine - + H. ligne: Zeilenhöhe: - - + + mm mm - + Réf. Querverweis - + Nom personnalisé de la colonne (vide = par défaut) Benutzerdefinierter Spaltenname (leer = Standard) - + Visible Sichtbar - + Coller depuis le presse-papiers Aus der Zwischenablage einfügen - - + + Police des en-têtes: %1 %2pt Schriftgröße der Überschriften: %1 %2pt - - + + Police du texte: %1 %2pt Schriftgröße: %1 %2pt - + Police des en-têtes de colonnes Schriftart der Spaltenüberschriften - + Police du texte des cellules Schriftart des Zelltextes @@ -2718,7 +2753,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Éditer l'élément + Éditer l'élément Bauteil bearbeiten @@ -2761,7 +2796,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - N'est pas vide + N'est pas vide Ist nicht leer @@ -2786,7 +2821,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - N'est pas égale à + N'est pas égale à Ungleich @@ -2796,7 +2831,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Type d'éléments + Type d'éléments Bauteiltypen @@ -2893,30 +2928,30 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El ElementScene - + Déplacer une primitive Stammfunktion verschieben - - Éditer les informations sur l'auteur + + Éditer les informations sur l'auteur window title Informationen über Autoren bearbeiten - - Vous pouvez utiliser ce champ libre pour mentionner les auteurs de l'élément, sa licence, ou tout autre renseignement que vous jugerez utile. + + Vous pouvez utiliser ce champ libre pour mentionner les auteurs de l'élément, sa licence, ou tout autre renseignement que vous jugerez utile. Sie können dieses freie Textfeld benutzen, um die Autoren, die Lizenz, oder jede weitere nützliche Information zu speichern. - + Éditer les noms window title Namen bearbeiten - - Vous pouvez spécifier le nom de l'élément dans plusieurs langues. + + Vous pouvez spécifier le nom de l'élément dans plusieurs langues. Sie können den Namen des Bauteiles in verschiedenen Sprachen eingeben. @@ -2924,13 +2959,13 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El ElementsCategoryEditor - L'item n'est pas une catégorie + L'item n'est pas une catégorie message box title Die Auswahl ist keine Kategorie - L'item demandé n'est pas une categrie. Abandon. + L'item demandé n'est pas une categrie. Abandon. message box content Die Auswahl ist keine Kategorie. Abbruch. @@ -2942,7 +2977,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - La catégorie demandée n'existe pas. Abandon. + La catégorie demandée n'existe pas. Abandon. message box content Die gewünschte Kategorie ist nicht vorhanden. Abbruch. @@ -2972,7 +3007,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Vous n'avez pas les privilèges nécessaires pour modifier cette catégorie. Elle sera donc ouverte en lecture seule. + Vous n'avez pas les privilèges nécessaires pour modifier cette catégorie. Elle sera donc ouverte en lecture seule. message box content Sie haben nicht die Schreibrechte, um diese Kategorie zu verändern: sie wird schreibgeschützt geöffnet. @@ -3032,12 +3067,12 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Éditer l'élément + Éditer l'élément Bauteil bearbeiten - Supprimer l'élément + Supprimer l'élément Bauteil löschen @@ -3087,7 +3122,7 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Supprimer l'élément ? + Supprimer l'élément ? message box title Bauteil löschen? @@ -3101,13 +3136,13 @@ Der angezeigte Name des Elements lässt sich separat in den Eigenschaften des El - Suppression de l'élément + Suppression de l'élément message box title Bauteil wird gelöscht - La suppression de l'élément a échoué. + La suppression de l'élément a échoué. message box content Das Löschen des Bauteils ist gescheitert. @@ -3139,23 +3174,23 @@ Alle Bauteile und Unterordner von diesem Ordner werden ebenso gelöscht. - Avertissement — Importation d'un fichier EPLAN (.edz) + Avertissement — Importation d'un fichier EPLAN (.edz) Warnung — Import EPLAN-Datei (.edz) Le format .edz peut provenir de deux sources différentes : -• Le portail EPLAN Data Portal (dataportal.eplan.com), soumis aux conditions d'utilisation de l'environnement EPLAN Cloud ; -• Le site d'un fabricant de composants (ou d'un distributeur) qui met ses fichiers .edz à disposition directement, selon ses propres conditions. +• Le portail EPLAN Data Portal (dataportal.eplan.com), soumis aux conditions d'utilisation de l'environnement EPLAN Cloud ; +• Le site d'un fabricant de composants (ou d'un distributeur) qui met ses fichiers .edz à disposition directement, selon ses propres conditions. -QElectroTech ne peut pas déterminer automatiquement l'origine du fichier que vous importez, ni les conditions qui s'y appliquent. +QElectroTech ne peut pas déterminer automatiquement l'origine du fichier que vous importez, ni les conditions qui s'y appliquent. En important ce fichier, vous confirmez que : -• vous connaissez son origine et êtes autorisé à l'utiliser dans ce contexte, au regard des conditions applicables à cette source ; +• vous connaissez son origine et êtes autorisé à l'utiliser dans ce contexte, au regard des conditions applicables à cette source ; • cette importation est effectuée à vos propres risques et responsabilité ; -• ni QElectroTech, ni ses mainteneurs, ni ses contributeurs ne peuvent être tenus responsables d'une utilisation non conforme de ces données. +• ni QElectroTech, ni ses mainteneurs, ni ses contributeurs ne peuvent être tenus responsables d'une utilisation non conforme de ces données. Das .edz-Format kann aus verschiedenen Quellen stammen: • dem EPLAN-Datenportal (dataportal.eplan.com), für das die Nutzungsbedingungen der EPLAN-Cloud-Umgebung gelten; @@ -3171,7 +3206,7 @@ Mit dem Import dieser Datei bestätigen Sie, dass: - J'ai lu et j'accepte ces conditions. + J'ai lu et j'accepte ces conditions. Ich habe diese Bedingungen gelesen und akzeptiere sie. @@ -3196,7 +3231,7 @@ Mit dem Import dieser Datei bestätigen Sie, dass: - Impossible d'importer cette pièce : + Impossible d'importer cette pièce : %1 Konnte Datei nicht importieren: %1 @@ -3274,7 +3309,7 @@ Mit dem Import dieser Datei bestätigen Sie, dass: - Glissez-déposez ce modèle de cartouche sur un folio pour l'y appliquer. + Glissez-déposez ce modèle de cartouche sur un folio pour l'y appliquer. Status tip displayed when selecting a title block template Ziehen/Ablegen, um das Schriftfeld auf der Seite anzuwenden. @@ -3282,12 +3317,12 @@ Mit dem Import dieser Datei bestätigen Sie, dass: Double-cliquez pour réduire ou développer la collection de cartouches QElectroTech Status tip - Doppelklick zum Öffnen oder Schließen der Sammlung "QElectroTech-Schriftfelder" + Doppelklick zum Öffnen oder Schließen der Sammlung "QElectroTech-Schriftfelder" Ceci est la collection de cartouches fournie avec QElectroTech. Installée en tant que composant système, vous ne pouvez normalement pas la personnaliser. - "What's this" tip + "What's this" tip Diese Sammlung von Schriftfeldern kommt standardmäßig mit QElectroTech. Sie ist fester Bestandteil vom System und kann nicht verändert werden. @@ -3299,7 +3334,7 @@ Mit dem Import dieser Datei bestätigen Sie, dass: Ceci est la collection company de cartouches -- utilisez-la pour créer, stocker et éditer vos propres cartouches. - "What's this" tip + "What's this" tip Dies ist die Firmensammlung von Schriftfeldern -- verwenden Sie sie, um die Schriftfelder Ihrer Firma zu erstellen, zu speichern und zu bearbeiten. @@ -3311,7 +3346,7 @@ Mit dem Import dieser Datei bestätigen Sie, dass: Ceci est votre collection personnelle de cartouches -- utilisez-la pour créer, stocker et éditer vos propres cartouches. - "What's this" tip + "What's this" tip Dies ist Ihre persönliche Schriftfeld-Sammlung. Benutzen Sie sie, um Ihre eigenen Schriftfelder zu erstellen, ablegen und bearbeiten. @@ -3516,64 +3551,64 @@ Mit dem Import dieser Datei bestätigen Sie, dass: Auswahl der zu exportierenden Seiten und deren Abmessungen: - + Titre du folio Seitentitel - + Nom de fichier Dateiname - + Dimensions Maße - + Noms des fichiers cibles message box title Namen der Zieldateien - + Vous devez entrer un nom de fichier non vide et unique pour chaque folio à exporter. message box content Die Dateinamen der zu exportierenden Seiten müssen einmalig und nicht leer sein. - + Dossier non spécifié message box title Ordner nicht angegeben - + Vous devez spécifier le chemin du dossier dans lequel seront enregistrés les fichiers images. message box content Geben Sie den Pfad vom Ordner ein, in dem die Bilddateien gespeichert werden. - - Impossible d'écrire dans ce fichier + + Impossible d'écrire dans ce fichier message box title Schreiben in dieser Datei nicht möglich - - Il semblerait que vous n'ayez pas les permissions nécessaires pour écrire dans le fichier %1. + + Il semblerait que vous n'ayez pas les permissions nécessaires pour écrire dans le fichier %1. message box content Sie haben wahrscheinlich nicht die benötigten Rechte, um in die Datei %1 zu schreiben. - + Aperçu Vorschau - - + + px px @@ -3733,17 +3768,17 @@ Mit dem Import dieser Datei bestätigen Sie, dass: - C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux folios. --Une numérotation est composée d'une variable minimum. + C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux folios. +-Une numérotation est composée d'une variable minimum. -Vous pouvez ajouter ou supprimer une variable de numérotation par le biais des boutons - et +. -Une variable de numérotation comprend : un type, une valeur et une incrémentation. --les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau folio de la valeur du champ "Incrémentation". --"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. +-les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau folio de la valeur du champ "Incrémentation". +-"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. Si le chiffre défini dans le champ Valeur possède moins de digits que le type choisi,celui-ci sera précédé par un ou deux 0 afin de respecter son type. --Le type "Texte", représente un texte fixe. -Le champ "Incrémentation" n'est pas utilisé. +-Le type "Texte", représente un texte fixe. +Le champ "Incrémentation" n'est pas utilisé. help dialog about the folio autonumerotation In diesem Dialog können Sie die Nummerierungsregel für neu angelegte Seiten definieren. @@ -3751,12 +3786,12 @@ Le champ "Incrémentation" n'est pas utilisé. - Variablen können mittels Knöpfe - und + gelöscht bzw. hinzugefügt werden. - Eine Variable beinhaltet: einen Typ, einen Wert und eine Inkrementierung. -- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. -- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. -Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. +- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. +- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. +Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. -- Der Typ "Text" steht für einen fixen Text. -In diesem Fall wird das Feld "Inkrementierung" ignoriert. +- Der Typ "Text" steht für einen fixen Text. +In diesem Fall wird das Feld "Inkrementierung" ignoriert. @@ -3965,27 +4000,27 @@ Texte und Zahlen sind ebenso erlaubt. - + - + - + Par defaut Standard - + - + - + Parcourir... Auswählen... - - (Recharger les collections d'éléments pour appliquer les changements) + + (Recharger les collections d'éléments pour appliquer les changements) (Bauteilsammlungen neu laden, um die Änderungen zu übernehmen) @@ -4006,7 +4041,7 @@ Texte und Zahlen sind ebenso erlaubt. Numéroter les colonnes de cartouche à partir de 0 (1 sinon) - Choix de l'increment de depart 1 ou 0 + Choix de l'increment de depart 1 ou 0 Spalten vom Schriftfeld ab 0 nummerieren (sonst ab 1) @@ -4058,7 +4093,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de Zugriff auf Sammlungen - + Répertoire de la collection commune Pfad zur gemeinsamen Bauteilsammlung @@ -4068,7 +4103,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de Pfad zur Benutzer-Bauteilsammlung - + Répertoire des cartouches utilisateur Pfad zu den Benutzer-Schriftfeldern @@ -4079,7 +4114,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de - Vous pouvez définir ici l'apparence par defaut des differents textes de QElectroTech + Vous pouvez définir ici l'apparence par defaut des differents textes de QElectroTech Einstellungen für die Standarddarstellung der verschiedenen Texte @@ -4124,11 +4159,11 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de - Méthode de mise à l'echelle des écrans à haute densité de pixels (hdpi) (appliqué au prochain lancement de QElectroTech) : + Méthode de mise à l'echelle des écrans à haute densité de pixels (hdpi) (appliqué au prochain lancement de QElectroTech) : Methode zur Skalierung bei hochauflösenden Bildschirmen (hdpi) (wirksam nach einem Neustart von QElectroTech): - + Répertoire de la collection company Pfad zur Firmen-Bauteilsammlung @@ -4138,7 +4173,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de Pfad zu Firmen-Schriftfeldern - + Répertoire des Macros utilisateur Pfad zu Benutzer-Vorlagen @@ -4154,7 +4189,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de - Textes d'éléments + Textes d'éléments Bauteiltexte @@ -4235,7 +4270,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de max: - + max: @@ -4246,11 +4281,11 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de min: - + min: - Taille des points de la grille de l'éditeur d'éléments : 1 - 5 + Taille des points de la grille de l'éditeur d'éléments : 1 - 5 Punktgröße im Element-Editor: 1 - 5 @@ -4295,7 +4330,7 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de - Pas d'arrondi + Pas d'arrondi nicht runden @@ -4480,8 +4515,8 @@ Hier unten kann der Standardwert dieses Textfeldes für Ihre eigenen Bauteile de Toutes valeurs autre que ‘Pas d’arrondi’ peut causer des erreurs de rendu du projet en fonction de : 1 - la valeur sélectionnée -2 - du dpi de l'écran -3 - Modifier le projet sur un autre ordinateur et/ou écran n'ayant pas les mêmes paramètres des points 1 et 2. +2 - du dpi de l'écran +3 - Modifier le projet sur un autre ordinateur et/ou écran n'ayant pas les mêmes paramètres des points 1 et 2. WARNUNG: Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren zu Darstellungsfehlern im Projekt führen: @@ -4500,8 +4535,8 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren - Ceci est un projet QElectroTech, c'est-à-dire un fichier d'extension .qet regroupant plusieurs folios. Il embarque également les éléments et modèles de cartouches utilisés dans ces folios. - "What's this" tip + Ceci est un projet QElectroTech, c'est-à-dire un fichier d'extension .qet regroupant plusieurs folios. Il embarque également les éléments et modèles de cartouches utilisés dans ces folios. + "What's this" tip Das ist ein QElectroTech-Projekt: eine *.qet Datei, in der Seiten, eingebettete Bauteile und eingebettete Schriftfelder gespeichert sind. @@ -4524,14 +4559,14 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren - Modèle "%1" + Modèle "%1" used to display a title block template - Vorlage "%1" + Vorlage "%1" Ceci est un modèle de cartouche, qui peut être appliqué à un folio. - "What's this" tip + "What's this" tip Das ist eine Schriftfeld-Vorlage, die auf eine Seite angewendet werden kann. @@ -4686,44 +4721,44 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren - Modifier les marges d'une en tête de tableau + Modifier les marges d'une en tête de tableau Ränder des Tabellenkopfs ändern - Modifier les marges d'un tableau + Modifier les marges d'un tableau Ränder der Tabelle ändern - Modifier l'alignement d'une en tête de tableau + Modifier l'alignement d'une en tête de tableau Textausrichtung eines Tabellenkopfs ändern - Modifier l'alignement des textes d'un tableau + Modifier l'alignement des textes d'un tableau Textausrichtung in einer Tabelle ändern - Modifier la police d'une en tête de tableau + Modifier la police d'une en tête de tableau Schriftart eines Tabellenkopfs ändern - Changer la police d'un tableau + Changer la police d'un tableau Schriftart einer Tabelle ändern <center>ATTENTION :</center> - il manque %1 lignes afin d'afficher l'intégralité des informations + il manque %1 lignes afin d'afficher l'intégralité des informations <center>ACHTUNG:</center> %1 Zeilen fehlen, um alle Information darzustellen - Appliquer la géometrie d'un tableau aux tableau liée à celui-ci + Appliquer la géometrie d'un tableau aux tableau liée à celui-ci Geometrie einer Tabelle auf alle damit verknüpften Tabellen anwenden Geometrie einer Tabelle auf alle damit verknüpften Tabellen anwenden @@ -4781,7 +4816,7 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren - Dimension de l'image + Dimension de l'image Bildgröße @@ -4791,7 +4826,7 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren - Modifier la taille d'une image + Modifier la taille d'une image Bildgröße ändern @@ -4799,27 +4834,27 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren ImportElementDialog - Intégration d'un élément + Intégration d'un élément Bauteil einbetten - L'élément a déjà été intégré dans le projet. Toutefois, la version que vous tentez de poser semble différente. Que souhaitez-vous faire ? + L'élément a déjà été intégré dans le projet. Toutefois, la version que vous tentez de poser semble différente. Que souhaitez-vous faire ? Das Bauteil wurde bereits in das Projekt eingebettet. Es gibt aber vermutlich Versionsunterschiede. Wie möchten Sie vorgehen? - Utiliser l'élément déjà integré + Utiliser l'élément déjà integré Bereits eingebettetes Bauteil verwenden - Intégrer l'élément déposé + Intégrer l'élément déposé Das neu angelegte Bauteil einbetten - Écraser l'élément déjà intégé + Écraser l'élément déjà intégé Das bereits eingebettete Bauteil überschreiben @@ -4892,7 +4927,7 @@ Alle Einstellungen außer „Keine Rundung“ können je nach folgenden Faktoren Le contenu, la taille et la police du texte ne peuvent être modifié car formaté en html. -Veuillez utiliser l'éditeur avancé pour cela. +Veuillez utiliser l'éditeur avancé pour cela. Inhalt, Größe und Schriftart vom Text können nur im fortgeschrittenen Editor geändert werden (wegen html Formatierung). @@ -4902,9 +4937,9 @@ Veuillez utiliser l'éditeur avancé pour cela. - - - + + + Police Schriftart @@ -4914,49 +4949,49 @@ Veuillez utiliser l'éditeur avancé pour cela. html Formatierung entfernen - - + + Déplacer un champ texte Textfeld verschieben - + Pivoter un champ texte Textfeld drehen - + Modifier un champ texte Textfeld ändern - - Modifier la taille d'un champ texte + + Modifier la taille d'un champ texte Größe eines Textfelds ändern - - Modifier la police d'un champ texte + + Modifier la police d'un champ texte Schriftart eines Textfelds ändern - + Pivoter plusieurs champs texte Mehrere Textfelder drehen - + Modifier la taille de plusieurs champs texte Größe mehrerer Textfelder ändern - + Modifier la police de plusieurs champs texte Schriftart mehrerer Textfelder ändern - - Modifier les propriétés d'un texte + + Modifier les propriétés d'un texte Eigenschaften eines Textfelds ändern @@ -4964,13 +4999,13 @@ Veuillez utiliser l'éditeur avancé pour cela. IntegrationMoveTitleBlockTemplatesHandler - Impossible d'accéder à la catégorie parente + Impossible d'accéder à la catégorie parente error message Zugriff auf die übergeordnete Kategorie nicht möglich - Impossible d'obtenir la description XML de ce modèle + Impossible d'obtenir la description XML de ce modèle error message Die XML-Beschreibung der Vorlage kann nicht geöffnet werden @@ -4982,12 +5017,12 @@ Veuillez utiliser l'éditeur avancé pour cela. - Intégration d'un modèle de cartouche + Intégration d'un modèle de cartouche Schriftfeld-Vorlage einbetten - Le modèle a déjà été intégré dans le projet. Toutefois, la version que vous tentez d'appliquer semble différente. Que souhaitez-vous faire ? + Le modèle a déjà été intégré dans le projet. Toutefois, la version que vous tentez d'appliquer semble différente. Que souhaitez-vous faire ? dialog content - %1 is a title block template name Die Schriftfeld-Vorlage wurde bereits in das Projekt eingebettet. Es gibt aber vermutlich Versionsunterschiede. Wie möchten Sie vorgehen? @@ -5026,7 +5061,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Nom, label ou information de l'élément… + Nom, label ou information de l'élément… Name, Bezeichnung oder Informationen zum Element… @@ -5134,7 +5169,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Remarque : les éléments maîtres ayant atteint leur nombre maximal d'esclaves sont masqués. + Remarque : les éléments maîtres ayant atteint leur nombre maximal d'esclaves sont masqués. Hinweis: Master-Elemente, die ihre maximale Anzahl an Slaves erreicht haben, werden ausgeblendet. @@ -5229,22 +5264,22 @@ Veuillez utiliser l'éditeur avancé pour cela. - Voir l'élément lié + Voir l'élément lié gebundenes Bauteil zeigen - Lier l'élément + Lier l'élément Bauteil verbinden - Montrer l'élément + Montrer l'élément Bauteil zeigen - Montrer l'élément esclave + Montrer l'élément esclave Slave Bauteil zeigen @@ -5305,12 +5340,12 @@ Veuillez utiliser l'éditeur avancé pour cela. - <html><head/><body><p>Délier l'élément sélectionné</p></body></html> + <html><head/><body><p>Délier l'élément sélectionné</p></body></html> <html><head/><body><p>Ausgewähltes Bauteil trennen</p></body></html> - <html><head/><body><p>Lier l'élément sélectionné</p></body></html> + <html><head/><body><p>Lier l'élément sélectionné</p></body></html> <html><head/><body><p>Ausgewähltes Bauteil verbinden</p></body></html> @@ -5353,22 +5388,22 @@ Veuillez utiliser l'éditeur avancé pour cela. - Lier l'élément + Lier l'élément Bauteil verbinden - Délier l'élément + Délier l'élément Bauteil trennen - Montrer l'élément + Montrer l'élément Bauteil zeigen - Montrer l'élément maître + Montrer l'élément maître Master Bauteil zeigen @@ -5377,42 +5412,42 @@ Veuillez utiliser l'éditeur avancé pour cela. Anordnung speichern - - Nombre maximal d'esclaves atteint. + + Nombre maximal d'esclaves atteint. Die maximale Anzahl an Slaves wurde erreicht. - + Cet élément maître ne peut plus accepter aucun nouveau contact esclave, la limite fixée a été atteinte (Limite: %1). Dieser Master kann keine neuen Slave-Kontakte mehr akzeptieren, da das festgelegte Limit erreicht wurde (Limit: %1). - + Type Typ - + Adresse Adresse - + Fonction Funktion - + Commentaire Kommentar - + Réf. croisée Querverweis - + Coller depuis le presse-papiers Aus der Zwischenablage einfügen @@ -5560,90 +5595,90 @@ Veuillez utiliser l'éditeur avancé pour cela. NewElementWizard - + Créer un nouvel élément : Assistant window title Neues Bauteil erstellen: Assistent - + &Suivant > &Weiter > - + Étape 1/3 : Catégorie parente wizard page title Schritt 1/3: übergeordnete Kategorie - + Sélectionnez une catégorie dans laquelle enregistrer le nouvel élément. wizard page subtitle Suchen Sie eine Kategorie aus, in der das neue Bauteil gespeichert wird. - + Étape 2/3 : Nom du fichier wizard page title Schritt 2/3: Dateiname - + Indiquez le nom du fichier dans lequel enregistrer le nouvel élément. wizard page subtitle Geben Sie den Dateinamen ein zum Speichern des neuen Bauteils. - + nouvel_element Neues_Bauteil - - Vous n'êtes pas obligé de préciser l'extension *.elmt. Elle sera ajoutée automatiquement. + + Vous n'êtes pas obligé de préciser l'extension *.elmt. Elle sera ajoutée automatiquement. Sie müssen nicht die Dateierweiterung *.elmt eingeben. Diese wird automatisch eingefügt. - - Étape 3/3 : Noms de l'élément + + Étape 3/3 : Noms de l'élément wizard page title Schritt 3/3: Bauteilname - - Indiquez le ou les noms de l'élément. + + Indiquez le ou les noms de l'élément. wizard page subtitle Einen oder mehrere Namen für das Bauteil eingeben. - + Nom du nouvel élément default name when creating a new element Name des neuen Bauteils - - - + + + Erreur message box title Fehler - + Vous devez sélectionner une catégorie. message box content Sie müssen eine Kategorie auswählen. - + Vous devez entrer un nom de fichier message box content Sie müssen einen Dateinamen eingeben - + Un élément portant le même nom existe déjà Ein Bauteil mit dem gleichen Namen existiert bereits @@ -5657,7 +5692,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Mettre à 0 pour un chiffre qui n'avance que par le report d'un chiffre cyclique suivant (ex: le "0" de "0.7") + Mettre à 0 pour un chiffre qui n'avance que par le report d'un chiffre cyclique suivant (ex: le "0" de "0.7") Auf 0 setzen, wenn es sich um eine Zahl handelt, die sich nur durch den Übertrag einer nachfolgenden zyklischen Ziffer erhöht (z. B. die „0“ in „0,7“) @@ -5668,11 +5703,11 @@ Veuillez utiliser l'éditeur avancé pour cela. mod. - + - Format d'affichage : une suite de zéros donne le nombre minimum de chiffres (00 = 07, 000 = 007). Vide = largeur naturelle du type. + Format d'affichage : une suite de zéros donne le nombre minimum de chiffres (00 = 07, 000 = 007). Vide = largeur naturelle du type. Anzeigeformat: Eine Folge von Nullen gibt die Mindestanzahl an Ziffern an (00 = 07, 000 = 007). Leer = natürliche Breite des Typs. @@ -5832,7 +5867,7 @@ Veuillez utiliser l'éditeur avancé pour cela. Dynamisches Textfeld - + Déplacer un champ texte Textfeld verschieben @@ -5877,7 +5912,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Supprimer un point d'un polygone + Supprimer un point d'un polygone Punkt eines Polygons löschen @@ -5885,7 +5920,7 @@ Veuillez utiliser l'éditeur avancé pour cela. PartTerminal - Déplacer le label d'une borne + Déplacer le label d'une borne Beschriftung eines Anschlusses verschieben @@ -5956,7 +5991,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Remarque : les éléments maîtres ayant atteint leur nombre maximal d'esclaves sont masqués. + Remarque : les éléments maîtres ayant atteint leur nombre maximal d'esclaves sont masqués. Hinweis: Master-Elemente, die ihre maximale Anzahl an Slaves erreicht haben, werden ausgeblendet. @@ -6031,7 +6066,7 @@ Veuillez utiliser l'éditeur avancé pour cela. - Supprimer un point d'un polygone + Supprimer un point d'un polygone Punkt eines Polygons löschen @@ -6185,26 +6220,26 @@ Folgende Variablen sind inkompatibel: Seiten-Auto-Nummerierung - - - - - - - + + + + + + + Sans nom Unbenannt - - - - - - - - - + + + + + + + + + Nom de la nouvelle numérotation Name der neuen Nummerierungsregel @@ -6361,7 +6396,7 @@ Folgende Variablen sind inkompatibel: - Option d'impression + Option d'impression Druckoptionen @@ -6376,12 +6411,12 @@ Folgende Variablen sind inkompatibel: - Si cette option est cochée, le folio sera agrandi ou rétréci de façon à remplir toute la surface imprimable d'une et une seule page." - Wenn diese Option aktiviert ist, wird das Folio vergrößert oder verkleinert, um den gesamten druckbaren Bereich einer einzigen Seite auszufüllen." + Si cette option est cochée, le folio sera agrandi ou rétréci de façon à remplir toute la surface imprimable d'une et une seule page." + Wenn diese Option aktiviert ist, wird das Folio vergrößert oder verkleinert, um den gesamten druckbaren Bereich einer einzigen Seite auszufüllen." - Si cette option est cochée, les marges de la feuille seront ignorées et toute sa surface sera utilisée pour l'impression. Cela peut ne pas être supporté par votre imprimante. + Si cette option est cochée, les marges de la feuille seront ignorées et toute sa surface sera utilisée pour l'impression. Cela peut ne pas être supporté par votre imprimante. Wenn diese Option aktiviert ist, werden die Seitenränder ignoriert und das gesamte Blatt zum Drucken verwendet. Dies wird von Ihrem Drucker möglicherweise nicht unterstützt. @@ -6461,7 +6496,7 @@ Folgende Variablen sind inkompatibel: - Options d'impression + Options d'impression window title Druckoptionen @@ -6483,7 +6518,7 @@ Folgende Variablen sind inkompatibel: - Mise en page (non disponible sous Windows pour l'export PDF) + Mise en page (non disponible sous Windows pour l'export PDF) Layout (unter Windows für den PDF-Export nicht verfügbar) @@ -6553,7 +6588,7 @@ Voulez-vous enregistrer les modifications ? - Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer. + Ce projet est en lecture seule. Il n'est donc pas possible de le nettoyer. message box content Dieses projekt ist schreibgeschützt. Es ist nicht möglich es zu reinigen. @@ -6611,8 +6646,8 @@ Voulez-vous enregistrer les modifications ? - <p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p> - <p align="center"><b>Öffnen des Projekts...</b><br/>Seitenreiter werden erstellt:</p> + <p align="center"><b>Ouverture du projet en cours...</b><br/>Création des onglets de folio :</p> + <p align="center"><b>Öffnen des Projekts...</b><br/>Seitenreiter werden erstellt:</p> @@ -6632,239 +6667,239 @@ Voulez-vous enregistrer les modifications ? QETApp - - Chargement... Initialisation du cache des collections d'éléments + + Chargement... Initialisation du cache des collections d'éléments splash screen caption Laden... Initialisiere die Bauteilsammlungen - + Chargement... Éditeur de schéma splash screen caption Laden... Schaltplaneditor - + Chargement... Ouverture des fichiers splash screen caption Laden... Öffne Dateien - + LTR Translate this string to RTL if you are translating to a Right-to-Left language, else translate to LTR LTR - + Cartouches QET title of the title block templates collection provided by QElectroTech QET-Schriftfelder - + Cartouches company - title of the company's title block templates collection + title of the company's title block templates collection Firmen-Schriftfelder - + Cartouches utilisateur - title of the user's title block templates collection + title of the user's title block templates collection Benutzer-Schriftfelder - + Q Single-letter example text - translate length, not meaning Q - + QET Small example text - translate length, not meaning QET - + Schema Normal example text - translate length, not meaning Seite - + Electrique Normal example text - translate length, not meaning Elektrik - + QElectroTech Long example text - translate length, not meaning QElectroTech - + Configurer QElectroTech window title QElectroTech Einstellungen - + Chargement... splash screen caption Lade... - + Chargement... icône du systray splash screen caption Lade... Symbole des Systemsbenachrichtigungsfelds - + QElectroTech systray menu title QElectroTech - + &Quitter &Beenden - + &Masquer &Verstecken - + &Restaurer &Zeigen - + &Masquer tous les éditeurs de schéma &Verstecke alle Schaltplaneditoren - + &Restaurer tous les éditeurs de schéma &Zeige alle Schaltplaneditoren - - &Masquer tous les éditeurs d'élément + + &Masquer tous les éditeurs d'élément &Verstecke alle Bauteileditoren - - &Restaurer tous les éditeurs d'élément + + &Restaurer tous les éditeurs d'élément &Zeige alle Bauteileditoren - + &Masquer tous les éditeurs de cartouche systray submenu entry &Verstecke alle Schriftfeld-Editoren - + &Restaurer tous les éditeurs de cartouche systray submenu entry &Zeige alle Schriftfeld-Editoren - + &Nouvel éditeur de schéma &Neuer Schaltplaneditor - - &Nouvel éditeur d'élément + + &Nouvel éditeur d'élément &Neuer Bauteileditor - - Ferme l'application QElectroTech + + Ferme l'application QElectroTech Anwendung QElectroTech schließen - + Réduire QElectroTech dans le systray QElectroTech in Systembenachrichtigungsfeld minimieren - + Restaurer QElectroTech QElectroTech wiederherstellen - + QElectroTech systray icon tooltip QElectroTech - + Éditeurs de schémas Schaltplaneditor - - Éditeurs d'élément + + Éditeurs d'élément Bauteileditor - + Éditeurs de cartouche systray menu entry Schriftfeld-Editor - - <b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br> + + <b>Le fichier de restauration suivant a été trouvé,<br>Voulez-vous l'ouvrir ?</b><br> <b>Die folgende Sicherungsdatei wurde gefunden,<br>Möchten Sie sie öffnen?</b><br> - + <b>Les fichiers de restauration suivant on été trouvé,<br>Voulez-vous les ouvrir ?</b><br> <b>Die folgenden Sicherungsdateien wurden gefunden,<br>Möchten Sie sie öffnen?</b><br> - + Fichier de restauration Sicherungsdatei - + Rapport de plantage Absturzbericht - - QElectroTech ne s'est pas fermé correctement lors de sa dernière exécution. -Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les enregistrer pour les joindre à un rapport de bug. + + QElectroTech ne s'est pas fermé correctement lors de sa dernière exécution. +Voici les derniers messages enregistrés avant l'arrêt -- vous pouvez les enregistrer pour les joindre à un rapport de bug. QElectroTech wurde bei der letzten Ausführung nicht ordnungsgemäß beendet. Hier sind die letzten Meldungen, die vor dem Beenden aufgezeichnet wurden – Sie können sie speichern, um sie einem Fehlerbericht beizufügen. - + Rapport de diagnostic Diagnosebericht - + Ceci contient les derniers messages de journalisation de cette session. Vérifiez le contenu avant de le joindre à un rapport de bug public. Hier finden Sie die neuesten Protokolleinträge dieser Sitzung. Überprüfen Sie den Inhalt, bevor Sie ihn einem öffentlichen Fehlerbericht beifügen. - + Usage : Verwendung: - + [options] [fichier]... @@ -6873,11 +6908,11 @@ Hier sind die letzten Meldungen, die vor dem Beenden aufgezeichnet wurden – Si - + QElectroTech, une application de réalisation de schémas électriques. Options disponibles : - --help Afficher l'aide sur les options + --help Afficher l'aide sur les options -v, --version Afficher la version --license Afficher la licence @@ -6890,35 +6925,35 @@ Verfügbare Optionen: - - --common-elements-dir=DIR Definir le dossier de la collection d'elements + + --common-elements-dir=DIR Definir le dossier de la collection d'elements --common-elements-dir=DIR Setzt Pfad zur Bauteilsammlung - + --common-tbt-dir=DIR Definir le dossier de la collection de modeles de cartouches --common-tbt-dir=DIR Pfad zur Schriftfeld-Sammlung setzen - + --config-dir=DIR Definir le dossier de configuration --config-dir=DIR Setzt Pfad zur Konfiguration - + --data-dir=DIR Definir le dossier de data --data-dir=DIR Setzt Pfad zu den Daten - + --lang-dir=DIR Definir le dossier contenant les fichiers de langue --lang-dir=DIR Setzt Pfad zu den Sprachdateien @@ -6955,7 +6990,7 @@ Verfügbare Optionen: - Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma + Cliquez sur une action pour revenir en arrière dans l'édition de votre schéma Status tip Klicken Sie auf eine Aktion, um die Bearbeitung rückgängig zu machen @@ -6991,8 +7026,8 @@ Verfügbare Optionen: - Ce panneau liste les différentes actions effectuées sur le folio courant. Cliquer sur une action permet de revenir à l'état du schéma juste après son application. - "What's this" tip + Ce panneau liste les différentes actions effectuées sur le folio courant. Cliquer sur une action permet de revenir à l'état du schéma juste après son application. + "What's this" tip Diese Liste protokolliert alle auf der aktuellen Seite ausgeführten Änderungen. Die Auswahl eines Eintrags führt die Änderungen bis zu diesem Eintrag zurück. @@ -7169,7 +7204,7 @@ Verfügbare Optionen: - Éditer l'item sélectionné + Éditer l'item sélectionné Auswahl bearbeiten @@ -7319,19 +7354,19 @@ Verfügbare Optionen: - Ferme l'application QElectroTech + Ferme l'application QElectroTech status bar tip schließt QElectroTech - Annule l'action précédente + Annule l'action précédente status bar tip bricht die letzte Aktion ab - Restaure l'action annulée + Restaure l'action annulée status bar tip stellt die abgebrochene Aktion wieder her @@ -7367,7 +7402,7 @@ Verfügbare Optionen: - Retrouve l'élément sélectionné dans le panel + Retrouve l'élément sélectionné dans le panel status bar tip Sucht das Bauteil in der Sammlung @@ -7513,7 +7548,7 @@ Verfügbare Optionen: - Couper automatiquement les conducteurs existants lors du placement d'un élément + Couper automatiquement les conducteurs existants lors du placement d'un élément Status tip of auto break conductor Vorhandene Leiter beim Platzieren eines Elements automatisch abschneiden @@ -7680,22 +7715,22 @@ Verfügbare Optionen: - Affiche ou non la barre d'outils principale + Affiche ou non la barre d'outils principale Zeigt oder versteckt die Hauptwerkzeugsleiste - Affiche ou non la barre d'outils Affichage + Affiche ou non la barre d'outils Affichage Zeigt oder versteckt die Anzeigeleiste - Affiche ou non la barre d'outils Schéma + Affiche ou non la barre d'outils Schéma Zeigt oder versteckt die Schaltplan-Werkzeugsleiste - Affiche ou non le panel d'appareils + Affiche ou non le panel d'appareils Zeigt oder versteckt die Bauteilsammlung @@ -7719,16 +7754,16 @@ Verfügbare Optionen: message box content %n Beschreibungen von Schriftarten, die in einem fremden oder beschädigten Format vorlagen, wurden wiederhergestellt. Sie werden beim nächsten Speichern des Projekts in ein stabiles Format umgeschrieben. - + - %n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes. + %n description(s) de police n'ont pas pu être lue(s) ; la police par défaut sera utilisée pour ces textes. message box content %n Schriftartbeschreibung(en) konnten nicht gelesen werden; für diese Texte wird die Standardschriftart verwendet. - + @@ -7761,14 +7796,14 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Une erreur est survenue lors de l'ouverture du fichier %1. + Une erreur est survenue lors de l'ouverture du fichier %1. message box content Ein Fehler ist beim Öffnen der Datei %1 aufgetreten. Active le projet « %1 » - Aktiviert das Projekt "%1" + Aktiviert das Projekt "%1" @@ -7846,18 +7881,18 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Impossible d'ouvrir le fichier + Impossible d'ouvrir le fichier message box title Öffnen der Datei nicht möglich - Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus. + Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus. Die zu öffnende Datei %1 existiert nicht. - Il semblerait que le fichier que vous essayez d'ouvrir ne soit pas accessible en lecture. Il est donc impossible de l'ouvrir. Veuillez vérifier les permissions du fichier. + Il semblerait que le fichier que vous essayez d'ouvrir ne soit pas accessible en lecture. Il est donc impossible de l'ouvrir. Veuillez vérifier les permissions du fichier. Die zu öffnende Datei kann zum Lesen nicht zugegriffen werden. Prüfen Sie die Zugriffsrechte der Datei. @@ -7868,13 +7903,13 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule. + Il semblerait que le projet que vous essayez d'ouvrir ne soit pas accessible en écriture. Il sera donc ouvert en lecture seule. Es sind keine Schreibrechte für das zu öffnende Projekt vorhanden. Es wird trotzdem schreibgeschützt geöffnet. - Échec de l'ouverture du projet + Échec de l'ouverture du projet message box title Öffnen des Projekts gescheitert @@ -7886,7 +7921,7 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Éditer l'élement + Éditer l'élement edit element Bauteil bearbeiten @@ -7898,7 +7933,7 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Éditer l'image + Éditer l'image edit image Bild bearbeiten @@ -7910,7 +7945,7 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Éditer l'objet sélectionné + Éditer l'objet sélectionné edit selected item Auswahl bearbeiten @@ -7996,7 +8031,7 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - QElectroTech - Éditeur d'élément + QElectroTech - Éditeur d'élément QElectroTech - Bauteileditor @@ -8201,7 +8236,7 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - Éditer les informations sur l'auteur + Éditer les informations sur l'auteur Informationen über Autoren bearbeiten @@ -8267,8 +8302,8 @@ Entfernen Sie die Überbrückung und/oder löschen Sie die Ebenen der betroffene - L'import d'un dxf volumineux peut prendre du temps -veuillez patienter durant l'import... + L'import d'un dxf volumineux peut prendre du temps +veuillez patienter durant l'import... Das Importieren einer großen DXF-Datei kann einige Zeit in Anspruch nehmen. @@ -8285,12 +8320,12 @@ veuillez patienter durant l'import... - Éditer le nom et les traductions de l'élément + Éditer le nom et les traductions de l'élément Bauteilname und Übersetzungen bearbeiten - Éditer les propriétés de l'élément + Éditer les propriétés de l'élément Bauteileigenschaften bearbeiten @@ -8337,7 +8372,7 @@ veuillez patienter durant l'import... - Éditeur d'éléments + Éditeur d'éléments status bar message Bauteileditor @@ -8363,7 +8398,7 @@ veuillez patienter durant l'import... - <br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs. + <br>En l'absence de borne, l'élément ne pourra être relié à d'autres éléments par l'intermédiaire de conducteurs. warning description <br>Ohne Anschlüsse kann das Bauteil nicht mit anderen Bauteilen mittels Leiter verbunden werden. @@ -8374,17 +8409,17 @@ veuillez patienter durant l'import... - Ajouter un texte d'élément non éditable dans les schémas + Ajouter un texte d'élément non éditable dans les schémas Fügt einen Bauteiltext ein, der im Schaltplaneditor NICHT bearbeitet werden kann - Ajouter un texte d'élément pouvant être édité dans les schémas + Ajouter un texte d'élément pouvant être édité dans les schémas Fügt einen Bauteiltext ein, der im Schaltplaneditor bearbeitet werden kann - <br><b>Erreur</b> :<br>Les reports de folio doivent posséder une seul borne.<br><b>Solution</b> :<br>Verifier que l'élément ne possède qu'une seul borne + <br><b>Erreur</b> :<br>Les reports de folio doivent posséder une seul borne.<br><b>Solution</b> :<br>Verifier que l'élément ne possède qu'une seul borne <br><b>Fehler</b>: <br>Seitenverweise dürfen nur einen Anschluss haben.<br><b>Lösung</b>: <br>Prüfen, dass das Bauteil nur einen Anschluss hat @@ -8425,21 +8460,21 @@ veuillez patienter durant l'import... - Le fichier %1 n'existe pas. + Le fichier %1 n'existe pas. message box content Die Datei %1 existiert nicht. - Impossible d'ouvrir le fichier %1. + Impossible d'ouvrir le fichier %1. message box content Öffnen der Datei %1 nicht möglich. - Ce fichier n'est pas un document XML valide + Ce fichier n'est pas un document XML valide message box content Diese Datei ist kein gültiges XML-Dokument @@ -8460,7 +8495,7 @@ veuillez patienter durant l'import... - Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule. + Vous n'avez pas les privilèges nécessaires pour modifier cet élement. Il sera donc ouvert en lecture seule. message box content Sie haben nicht die Schreibrechte, um dieses Bauteil zu verändern: es wird schreibgeschützt geöffnet. @@ -8473,13 +8508,13 @@ veuillez patienter durant l'import... - Impossible d'écrire dans ce fichier + Impossible d'écrire dans ce fichier message box content Schreiben in diese Datei nicht möglich - Impossible d'enregistrer l'élément + Impossible d'enregistrer l'élément message box content Dieses Bauteil kann nicht gespeichert werden @@ -8490,7 +8525,7 @@ veuillez patienter durant l'import... - <br><b>Erreur</b> :<br>Les définitions de conducteur ne peuvent posséder qu'une seule borne.<br><b>Solution</b> :<br>Vérifier que l'élément ne possède qu'une seule borne + <br><b>Erreur</b> :<br>Les définitions de conducteur ne peuvent posséder qu'une seule borne.<br><b>Solution</b> :<br>Vérifier que l'élément ne possède qu'une seule borne <br><b>Fehler</b>:<br>Leiterdefinitionen dürfen nur einen Anschluss haben.<br><b>Lösung</b>:<br>Stellen Sie sicher, dass das Element nur einen Anschluss hat @@ -8504,13 +8539,13 @@ veuillez patienter durant l'import... - Impossible d'ouvrir le fichier + Impossible d'ouvrir le fichier message box title Öffnen der Datei nicht möglich - Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus. + Il semblerait que le fichier %1 que vous essayez d'ouvrir n'existe pas ou plus. Die zu öffnende Datei %1 existiert nicht. @@ -8542,7 +8577,7 @@ veuillez patienter durant l'import... - Éditeur d'élément + Éditeur d'élément Element-Editor @@ -8564,23 +8599,23 @@ veuillez patienter durant l'import... - Échec de l'export + Échec de l'export Export fehlgeschlagen - Impossible d'écrire dans le fichier « %1 ». + Impossible d'écrire dans le fichier « %1 ». Die Datei „%1“ kann nicht beschrieben werden. - Recharger l'élément + Recharger l'élément dialog title Bauteil neu laden - Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ? + Vous avez efffectué des modifications sur cet élément. Si vous le rechargez, ces modifications seront perdues. Voulez-vous vraiment recharger l'élément ? dialog content Das Bauteil wurde verändert. Beim neu Laden gehen die Änderungen verloren. Möchten Sie wirklich das Bauteil neu laden? @@ -8598,14 +8633,14 @@ veuillez patienter durant l'import... - Echec de l'enregistrement + Echec de l'enregistrement Speichervorgang gescheitert - L'enregistrement à échoué, + L'enregistrement à échoué, les conditions requises ne sont pas valides Speichervorgang gescheitert! Die erforderlichen Bedingungen wurden nicht erfüllt @@ -8624,13 +8659,13 @@ Die erforderlichen Bedingungen wurden nicht erfüllt - Enregistrer l'élément en cours ? + Enregistrer l'élément en cours ? dialog title Aktuelles Bauteil speichern? - Voulez-vous enregistrer l'élément %1 ? + Voulez-vous enregistrer l'élément %1 ? dialog content - %1 is an element name Bauteil %1 speichern? @@ -8658,7 +8693,7 @@ Die erforderlichen Bedingungen wurden nicht erfüllt - L'élément n'existe pas. + L'élément n'existe pas. message box content Bauteil existiert nicht. @@ -8764,7 +8799,7 @@ Die erforderlichen Bedingungen wurden nicht erfüllt - Génère un rapport avec les derniers messages de journalisation, pour l'inclure dans un rapport de bug + Génère un rapport avec les derniers messages de journalisation, pour l'inclure dans un rapport de bug status bar tip Erstellt einen Bericht mit den neuesten Protokollmeldungen, um ihn in einen Fehlerbericht aufzunehmen @@ -8815,7 +8850,7 @@ Die erforderlichen Bedingungen wurden nicht erfüllt Projet « %1 : %2» displayed title for a ProjectView - %1 is the project title, -%2 is the project path - Projekt "%1: %2" + Projekt "%1: %2" @@ -8859,7 +8894,7 @@ Möchten Sie fortfahren? - Une erreur s'est produite durant l'intégration du modèle. + Une erreur s'est produite durant l'intégration du modèle. error message Ein Fehler ist beim Einfügen der Vorlage aufgetreten. @@ -8880,7 +8915,7 @@ Sie verwenden derzeit QElectroTech Version %2 . - Il est alors possible que l'ouverture de tout ou partie de ce document échoue. + Il est alors possible que l'ouverture de tout ou partie de ce document échoue. Que désirez vous faire ? Es ist dann möglich, dass das Öffnen des gesamten Dokuments oder eines Teils davon fehlschlägt. Was möchten Sie tun? @@ -8893,27 +8928,27 @@ Was möchten Sie tun? - Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. + Le projet que vous tentez d'ouvrir est partiellement compatible avec votre version %1 de QElectroTech. Das Projekt, das Sie zu öffnen versuchen, ist teilweise mit Ihrer Version %1 von QElectroTech kompatibel. - Afin de le rendre totalement compatible veuillez ouvrir ce même projet avec la version 0.8, ou 0.80 de QElectroTech et sauvegarder le projet et l'ouvrir à nouveau avec cette version. + Afin de le rendre totalement compatible veuillez ouvrir ce même projet avec la version 0.8, ou 0.80 de QElectroTech et sauvegarder le projet et l'ouvrir à nouveau avec cette version. Que désirez vous faire ? Um es vollständig kompatibel zu machen, öffnen Sie bitte das gleiche Projekt mit der QElectroTech-Version 0.8 oder 0.80, speichern Sie das Projekt und öffnen Sie es erneut mit dieser Version. Was möchten Sie tun? - <p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p> - <p align="center"><b>Öffnen des Projekts...</b><br/>Seiten werden erstellt</p> + <p align="center"><b>Ouverture du projet en cours...</b><br/>Création des folios</p> + <p align="center"><b>Öffnen des Projekts...</b><br/>Seiten werden erstellt</p> - <p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p> - <p align="center"><b>Öffnen des Projekts...</b><br/>Querverweise werden eingelesen</p> + <p align="center"><b>Ouverture du projet en cours...</b><br/>Mise en place des références croisées</p> + <p align="center"><b>Öffnen des Projekts...</b><br/>Querverweise werden eingelesen</p> @@ -9146,79 +9181,79 @@ Was möchten Sie tun? Zelleneigenschaften - + [Modifié] window title tag [geändert] - + [Lecture seule] window title tag [schreibgeschützt] - + %1 %2 part of the window title - %1 is the filepath or template name, %2 is the [Changed] or [Read only] tag %1 %2 - + QElectroTech - Éditeur de modèle de cartouche titleblock template editor: base window title QElectroTech - Schriftfeld-Editor - + %1 - %2 window title: %1 is the base window title, %2 is a template name %1 - %2 - + Ouvrir un modèle File > open dialog window title Vorlage öffnen - + Ouvrir un fichier dialog title Datei öffnen - + Modèles de cartouches QElectroTech (*%1);;Fichiers XML (*.xml);;Tous les fichiers (*) filetypes allowed when opening a title block template file - %1 is the .titleblock extension QElectroTech-Schriftfeld-Vorlagen (*%1);;XML-Dateien (*.xml);;Alle Dateien (*) - + Enregistrer le modèle sous dialog window title Vorlage speichern unter - + Enregistrer sous dialog title Speichern unter - + Modèles de cartouches QElectroTech (*%1) filetypes allowed when saving a title block template file - %1 is the .titleblock extension QElectroTech Schriftfeld-Vorlagen (*%1) - + Éditer les informations complémentaires window title Zusätzliche Informationen bearbeiten - + Vous pouvez utiliser ce champ libre pour mentionner les auteurs du cartouche, sa licence, ou tout autre renseignement que vous jugerez utile. Sie können dieses freie Textfeld benutzen, um die Autoren, die Lizenz, oder jede weitere nützliche Information über das Schriftfeld zu speichern. @@ -9230,7 +9265,7 @@ Was möchten Sie tun? Les caractères autorisés sont : - les chiffres [0-9] - les minuscules [a-z] - - le tiret [-], l'underscore [_] et le point [.] + - le tiret [-], l'underscore [_] et le point [.] tooltip content when editing a filename Zulässige Zeichen sind: @@ -9245,7 +9280,7 @@ Was möchten Sie tun? - Avertissement : l'élément a été enregistré avec une version ultérieure de QElectroTech. + Avertissement : l'élément a été enregistré avec une version ultérieure de QElectroTech. Warnung: das Bauteil wurde mit einer neueren Version von QElectroTech gespeichert. @@ -9270,38 +9305,38 @@ Was möchten Sie tun? %1 löschen - + coller %1 undo caption - %1 is a sentence listing the content to paste %1 einfügen - + couper %1 undo caption - %1 is a sentence listing the content to cut %1 ausschneiden - + déplacer %1 undo caption - %1 is a sentence listing the moved content %1 verschieben - + modifier le texte undo caption Text bearbeiten - + modifier un conducteur undo caption Leiter bearbeiten - + Réinitialiser %1 undo caption - %1 is a sentence listing the reset content %1 zurücksetzen @@ -9313,7 +9348,7 @@ Was möchten Sie tun? Schriftfeld bearbeiten - + modifier les dimensions du folio undo caption Seitenmaße ändern @@ -9386,7 +9421,7 @@ Was möchten Sie tun? - Modifier les propriétées de l'élément + Modifier les propriétées de l'élément Bauteileigenschaften bearbeiten @@ -9451,32 +9486,32 @@ Was möchten Sie tun? Text - + Folio sans titre Seite ohne Titel - + schema Seite - + Conserver les proportions Verhältnis beibehalten - + Réinitialiser les dimensions Größe zurücksetzen - + Aperçu Vorschau - + Exporter vers le presse-papier In die Zwischenablage kopieren @@ -9527,7 +9562,7 @@ Was möchten Sie tun? - %n texte(s) d'élément + %n texte(s) d'élément part of a sentence listing the content of a diagram %n Bauteiltext @@ -9559,20 +9594,20 @@ Was möchten Sie tun? - Le fichier texte contenant la licence GNU/GPL existe mais n'a pas pu être ouvert - bon bah de toute façon, vous la connaissez par coeur non ? + Le fichier texte contenant la licence GNU/GPL existe mais n'a pas pu être ouvert - bon bah de toute façon, vous la connaissez par coeur non ? Die Textdatei der GNU/GPL-Lizenz ist vorhanden, kann aber nicht geöffnet werden - Sie kennen sie sowieso auswendig, oder? - Impossible d'ouvrir le fichier %1 en écriture, erreur %2 rencontrée. + Impossible d'ouvrir le fichier %1 en écriture, erreur %2 rencontrée. error message when attempting to write an XML file Öffnen der Datei %1 zum Schreiben nicht möglich. Fehler %2 aufgetreten. - Une erreur est survenue lors de l'écriture du fichier %1, erreur %2 rencontrée. + Une erreur est survenue lors de l'écriture du fichier %1, erreur %2 rencontrée. error message when attempting to write an XML file Ein Fehler ist beim Schreiben der Datei %1 aufgetreten. Fehler ist: %2. @@ -9650,37 +9685,37 @@ Was möchten Sie tun? - Insertion d'une ligne + Insertion d'une ligne label used in the title block template editor undo list Zeile einfügen - Suppression d'une ligne + Suppression d'une ligne label used in the title block template editor undo list Zeile löschen - Insertion d'une colonne + Insertion d'une colonne label used in the title block template editor undo list Spalte einfügen - Suppression d'une colonne + Suppression d'une colonne label used in the title block template editor undo list Spalte löschen - Modification d'une ligne + Modification d'une ligne label used in the title block template editor undo list Zeile bearbeiten - Modification d'une colonne + Modification d'une colonne label used in the title block template editor undo list Spalte bearbeiten @@ -9692,7 +9727,7 @@ Was möchten Sie tun? - Séparation d'une cellule en %1 + Séparation d'une cellule en %1 label used in the title block template editor undo list; %1 is the number of cells after the split Zelle in %1 Zellen trennen @@ -9813,7 +9848,7 @@ Was möchten Sie tun? - Impossible de charger l'image. + Impossible de charger l'image. Laden vom Bild fehlgeschlagen. @@ -9860,7 +9895,7 @@ Was möchten Sie tun? - Modifier les informations de l'élément : %1 + Modifier les informations de l'élément : %1 Ändern der Informationen vom Bauteil: %1 @@ -9876,7 +9911,7 @@ Was möchten Sie tun? - Modifier les propriétés d'un conducteur + Modifier les propriétés d'un conducteur undo caption Leitereigenschaften ändern @@ -9895,12 +9930,12 @@ Was möchten Sie tun? - Déplacer un texte d'élément + Déplacer un texte d'élément Text eines Bauteils verschieben - Déplacer %1 textes d'élément + Déplacer %1 textes d'élément %1 Texte eines Bauteils verschieben @@ -9980,8 +10015,8 @@ Was möchten Sie tun? - Le fichier « %1 » est absent ou illisible : le nom traduit de ce dossier n'a pas pu être lu, son nom de dossier est affiché à la place. - Die Datei "%1" fehlt oder ist nicht lesbar: + Le fichier « %1 » est absent ou illisible : le nom traduit de ce dossier n'a pas pu être lu, son nom de dossier est affiché à la place. + Die Datei "%1" fehlt oder ist nicht lesbar: Der QET-Name dieses Ordners konnte nicht gelesen werden; stattdessen wird der Ordnername angezeigt. @@ -9995,7 +10030,7 @@ Der QET-Name dieses Ordners konnte nicht gelesen werden; stattdessen wird der Or Sammlung - + Ajouter %n conducteur(s) add a numbers of conductor one or more @@ -10010,38 +10045,38 @@ Der QET-Name dieses Ordners konnte nicht gelesen werden; stattdessen wird der Or - Ajouter un texte d'élément + Ajouter un texte d'élément Textfeld eines Bauteils einfügen - Ajouter un groupe de textes d'élément + Ajouter un groupe de textes d'élément Gruppe von Bauteiltexten einfügen - Grouper des textes d'élément + Grouper des textes d'élément Bauteiltexte gruppieren - Supprimer un groupe de textes d'élément + Supprimer un groupe de textes d'élément Gruppe von Bauteiltexten löschen - Insérer un texte d'élément dans un groupe de textes + Insérer un texte d'élément dans un groupe de textes Bauteiltext in eine Textgruppe einfügen - Enlever un texte d'élément d'un groupe de textes + Enlever un texte d'élément d'un groupe de textes Bauteiltext aus einer Textgruppe löschen - Modifier l'alignement d'un groupe de textes + Modifier l'alignement d'un groupe de textes Ausrichtung einer Textgruppe ändern @@ -10110,7 +10145,7 @@ Möchten Sie sie ersetzen? - Sélectionner la configuration de textes à ajouter à l'élément + Sélectionner la configuration de textes à ajouter à l'élément Texteinstellung auswählen, die dem Bauteil angewendet wird @@ -10136,7 +10171,7 @@ Möchten Sie sie ersetzen? - Chercher/remplacer les propriétés d'éléments. + Chercher/remplacer les propriétés d'éléments. Bauteileigenschaften suchen/ersetzen. @@ -10217,12 +10252,12 @@ Möchten Sie sie ersetzen? - Date d'enregistrement du fichier format local + Date d'enregistrement du fichier format local Speicherdatum der Datei im lokalen Format - Date d'enregistrement du fichier format yyyy-MM-dd + Date d'enregistrement du fichier format yyyy-MM-dd Speicherdatum der Datei im Format JJJJ-MM-TT @@ -10248,7 +10283,7 @@ Möchten Sie sie ersetzen? - + Type Typ @@ -10256,7 +10291,7 @@ Möchten Sie sie ersetzen? - + Adresse Adresse @@ -10264,7 +10299,7 @@ Möchten Sie sie ersetzen? - + Commentaire @@ -10273,7 +10308,7 @@ Möchten Sie sie ersetzen? - + Réf. croisée Querverweis @@ -10281,7 +10316,7 @@ Möchten Sie sie ersetzen? - + @@ -10300,7 +10335,7 @@ Möchten Sie sie ersetzen? - Numéro d'article auxiliaire 1 + Numéro d'article auxiliaire 1 Artikelnummer Zusatzartikel 1 @@ -10345,7 +10380,7 @@ Möchten Sie sie ersetzen? - Numéro d'article auxiliaire 2 + Numéro d'article auxiliaire 2 Artikelnummer Zusatzartikel 2 @@ -10390,7 +10425,7 @@ Möchten Sie sie ersetzen? - Numéro d'article auxiliaire 3 + Numéro d'article auxiliaire 3 Artikelnummer Zusatzartikel 3 @@ -10435,7 +10470,7 @@ Möchten Sie sie ersetzen? - Numéro d'article auxiliaire 4 + Numéro d'article auxiliaire 4 Artikelnummer Zusatzartikel 4 @@ -10500,7 +10535,7 @@ Möchten Sie sie ersetzen? - Numéro d'article + Numéro d'article Artikelnummer @@ -10555,12 +10590,12 @@ Möchten Sie sie ersetzen? - Date d'enregistrement du fichier format dd-MM-yyyy + Date d'enregistrement du fichier format dd-MM-yyyy Speicherdatum der Datei im Format TT-MM-JJJJ - Heure d'enregistrement du fichier + Heure d'enregistrement du fichier Uhrzeit vom Abspeichern der Datei @@ -10579,22 +10614,22 @@ Möchten Sie sie ersetzen? Leiter erstellen - - To install the plugin qet_tb_generator<br>Visit :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Requires python 3.5 or above.<br><B><U> First install on Windows</B></U><br>1. Install, if required, python 3.5 or above<br> Visit :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Update on Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>user could launch in a terminal this script in this directory<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br> - Installation des Plugins qet_tb_generator:<br>Besuche <br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Erfordert Python 3.5 oder höher.<br><B><U> Erstinstallation unter Windows</B></U><br>1. Falls erforderlich, installiere Python 3.5 oder höher<br> Besuche :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Aktualisierung unter Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>Der Benutzer kann in einem Terminal dieses Skript in folgendem Verzeichnis ausführen:<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br> + + To install the plugin qet_tb_generator<br>Visit :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Requires python 3.5 or above.<br><B><U> First install on Windows</B></U><br>1. Install, if required, python 3.5 or above<br> Visit :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Update on Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>user could launch in a terminal this script in this directory<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br> + Installation des Plugins qet_tb_generator:<br>Besuche <br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br>Erfordert Python 3.5 oder höher.<br><B><U> Erstinstallation unter Windows</B></U><br>1. Falls erforderlich, installiere Python 3.5 oder höher<br> Besuche :<br><a href='https://www.python.org/downloads/'>python.org</a><br>2. pip install qet_tb_generator<br><B><U> Aktualisierung unter Windows</B></U><br>python -m pip install --upgrade qet_tb_generator<br>>>Der Benutzer kann in einem Terminal dieses Skript in folgendem Verzeichnis ausführen:<br> C:\users\XXXX\AppData\Local\Programs\Python\Python36-32\Scripts <br> - - To install the plugin qet_tb_generator<br>Visit :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> First install on macOSX</B></U><br>1. Install, if required, python 3.11 bundle only, <a href='https://www.python.org/ftp/python/3.11.2/python-3.11.2-macos11.pkg'>python-3.11.2-macos11.pkg</a><br>2 Run Profile.command script<br>because program use hardcoded PATH for localise qet-tb-generator plugin <br> Visit :<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>howto</a><br>2. pip3 install qet_tb_generator<br><B><U> Update on macOSX</B></U><br> pip3 install --upgrade qet_tb_generator<br> - Installation des Plugins qet_tb_generator:<br>Besuche <br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> Erstinstallation unter macOSX</B></U><br>1. Falls erforderlich, installiere das Python 3.11-Bundle: <a href='https://www.python.org/ftp/python/3.11.2/python-3.11.2-macos11.pkg'>python-3.11.2-macos11.pkg</a><br>2. Führe das Skript Profile.command aus<br>da das Programm einen festgelegten PATH zur Lokalisierung des Plugins qet-tb-generator verwendet.<br>Besuche :<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>Anleitung</a><br>3. pip3 install qet_tb_generator<br><B><U> Aktualisierung unter macOS</B></U><br> pip3 install --upgrade qet_tb_generator<br> + + To install the plugin qet_tb_generator<br>Visit :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> First install on macOSX</B></U><br>1. Install, if required, python 3.11 bundle only, <a href='https://www.python.org/ftp/python/3.11.2/python-3.11.2-macos11.pkg'>python-3.11.2-macos11.pkg</a><br>2 Run Profile.command script<br>because program use hardcoded PATH for localise qet-tb-generator plugin <br> Visit :<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>howto</a><br>2. pip3 install qet_tb_generator<br><B><U> Update on macOSX</B></U><br> pip3 install --upgrade qet_tb_generator<br> + Installation des Plugins qet_tb_generator:<br>Besuche <br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><B><U> Erstinstallation unter macOSX</B></U><br>1. Falls erforderlich, installiere das Python 3.11-Bundle: <a href='https://www.python.org/ftp/python/3.11.2/python-3.11.2-macos11.pkg'>python-3.11.2-macos11.pkg</a><br>2. Führe das Skript Profile.command aus<br>da das Programm einen festgelegten PATH zur Lokalisierung des Plugins qet-tb-generator verwendet.<br>Besuche :<br><a href='https://qelectrotech.org/forum/viewtopic.php?pid=5674#p5674'>Anleitung</a><br>3. pip3 install qet_tb_generator<br><B><U> Aktualisierung unter macOS</B></U><br> pip3 install --upgrade qet_tb_generator<br> - - To install the plugin qet_tb_generator<br>Visit :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Requires python 3.5 or above.<br><br><B><U> First install on Linux</B></U><br>1. check you have pip3 installed: pip3 --version<br>If not install with: sudo apt-get install python3-pip<br>2. Install the program: sudo pip3 install qet_tb_generator<br>3. Run the program: qet_tb_generator<br><br><B><U> Update on Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br> - Installation des Plugins qet_tb_generator:<br>Besuche <br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Erfordert Python 3.5 oder höher.<br><br><B><U> Erstinstallation unter Linux</B></U><br>1. Überprüfe, ob pip3 installiert ist: pip3 --version<br>Falls nicht, installiere es mit: sudo apt-get install python3-pip<br>2. Installiere das Programm: sudo pip3 install qet_tb_generator<br>3. Starte das Programm: qet_tb_generator<br><br><B><U> Aktualisierung unter Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br> + + To install the plugin qet_tb_generator<br>Visit :<br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Requires python 3.5 or above.<br><br><B><U> First install on Linux</B></U><br>1. check you have pip3 installed: pip3 --version<br>If not install with: sudo apt-get install python3-pip<br>2. Install the program: sudo pip3 install qet_tb_generator<br>3. Run the program: qet_tb_generator<br><br><B><U> Update on Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br> + Installation des Plugins qet_tb_generator:<br>Besuche <br><a href='https://pypi.python.org/pypi/qet-tb-generator'>qet-tb-generator</a><br><br>Erfordert Python 3.5 oder höher.<br><br><B><U> Erstinstallation unter Linux</B></U><br>1. Überprüfe, ob pip3 installiert ist: pip3 --version<br>Falls nicht, installiere es mit: sudo apt-get install python3-pip<br>2. Installiere das Programm: sudo pip3 install qet_tb_generator<br>3. Starte das Programm: qet_tb_generator<br><br><B><U> Aktualisierung unter Linux</B></U><br>sudo pip3 install --upgrade qet_tb_generator<br> - + Error launching qet_tb_generator plugin Fehler beim Ausführen vom Plugin qet_tb_generator @@ -10614,15 +10649,15 @@ Möchten Sie sie ersetzen? Einfügen + + + - - - this is an error in the code dies ist ein Programmfehler @@ -10694,7 +10729,7 @@ Möchten Sie sie ersetzen? - d'un groupe de bornes + d'un groupe de bornes einer Klemmengruppe @@ -10722,7 +10757,7 @@ Möchten Sie sie ersetzen? - d'un groupe de bornes + d'un groupe de bornes einer Klemmengruppe @@ -10737,7 +10772,7 @@ Möchten Sie sie ersetzen? - Modifier les proriétés d'un groupe de bornes + Modifier les proriétés d'un groupe de bornes Die Eigenschaften einer Klemmengruppe ändern @@ -10828,7 +10863,7 @@ Möchten Sie sie ersetzen? - Modifier les propriétés d'un élement + Modifier les propriétés d'un élement Eigenschaften eines Elements bearbeiten @@ -10843,7 +10878,7 @@ Möchten Sie sie ersetzen? - Modifier la couleur d'un pont de bornes + Modifier la couleur d'un pont de bornes Brückerfarbe ändern @@ -10864,7 +10899,7 @@ Möchten Sie sie ersetzen? - Entrer le facteur d'échelle + Entrer le facteur d'échelle Skalierungsfaktor eingeben @@ -10899,7 +10934,7 @@ Möchten Sie sie ersetzen? - Retourner l'élément : + Retourner l'élément : Element spiegeln @@ -10916,8 +10951,8 @@ zusätzliche Informationen betreffend Import / Skalierung von %1 - Le logiciel QET_ElementScaler est nécessaire pour mettre les éléments à l'échelle. -Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper dans le dossier d'installation + Le logiciel QET_ElementScaler est nécessaire pour mettre les éléments à l'échelle. +Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper dans le dossier d'installation Die Software QET_ElementScaler wird benötigt, um Elemente zu skalieren. Bitte laden Sie diese über den unten stehenden Link herunter und entpacken Sie sie in den Installationsordner. @@ -10936,8 +10971,8 @@ Fehler: Stellen Sie sicher, dass die Datei %1 eine gültige dxf-Datei ist - L'import dxf nécessite le logiciel dxf2elmt. -Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper dans le dossier d'installation + L'import dxf nécessite le logiciel dxf2elmt. +Veuillez télécharger celui-ci en suivant le lien ci dessous et le dézipper dans le dossier d'installation Für den dxf-Import ist die Software dxf2elmt erforderlich. Bitte laden Sie diese über den Link herunter und entpacken Sie sie in den Installationsordner. @@ -10991,14 +11026,14 @@ Bitte laden Sie diese über den Link herunter und entpacken Sie sie in den Insta Les information à afficher sont supérieurs à la quantité maximal pouvant être affiché par les tableaux. -Veuillez ajouter un nouveau tableau ou regler les tableaux existant afin d'afficher l'integralité des informations. +Veuillez ajouter un nouveau tableau ou regler les tableaux existant afin d'afficher l'integralité des informations. Die anzuzeigenden Informationen sind größer als die maximale Menge, die von den Tabellen angezeigt werden kann. Bitte fügen Sie eine neue Tabelle hinzu oder passen Sie die vorhandenen Tabellen an, um alle Informationen anzuzeigen. Les information à afficher sont supérieurs à la quantité maximal pouvant être affiché par le tableau. -Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'afficher l'integralité des informations. +Veuillez ajouter un nouveau tableau ou regler le tableau existant afin d'afficher l'integralité des informations. Die anzuzeigenden Informationen sind größer als die maximale Menge, die von der Tabelle angezeigt werden kann. Bitte fügen Sie eine neue Tabelle hinzu oder passen Sie die vorhandene Tabelle an, um alle Informationen anzuzeigen. @@ -11009,7 +11044,7 @@ Bitte fügen Sie eine neue Tabelle hinzu oder passen Sie die vorhandene Tabelle - Modifier la géometrie d'un tableau + Modifier la géometrie d'un tableau Tabellengeometrie ändern @@ -11042,7 +11077,7 @@ Bitte fügen Sie eine neue Tabelle hinzu oder passen Sie die vorhandene Tabelle - Supprimer un point d'un polygone + Supprimer un point d'un polygone Punkt eines Polygons löschen @@ -11144,8 +11179,8 @@ Bitte fügen Sie eine neue Tabelle hinzu oder passen Sie die vorhandene Tabelle - L'élément « %1 » existe déjà. Que souhaitez-vous faire ? - Das Bauteil "%1" ist schon vorhanden. Wie möchten Sie vorgehen? + L'élément « %1 » existe déjà. Que souhaitez-vous faire ? + Das Bauteil "%1" ist schon vorhanden. Wie möchten Sie vorgehen? @@ -11543,9 +11578,9 @@ Folgende Variablen stehen im Feld Seite zur Verfügung: Vous pouvez définir ici vos propres associations noms/valeurs pour que le cartouche en tienne compte. Exemple : -associer le nom "volta" et la valeur "1745" remplacera %{volta} par 1745 dans le cartouche. +associer le nom "volta" et la valeur "1745" remplacera %{volta} par 1745 dans le cartouche. Hier können Sie Ihre eigenen Kombinationen Variablen/Werte für die Einträge der Datenfelder im Schriftfeld definieren. Zum Beispiel: -die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volta} durch 1745 ersetzen. +die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volta} durch 1745 ersetzen. @@ -11566,7 +11601,7 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volt Créer votre propre texte en vous aidant des variables suivantes : %f : la position du folio dans le projet %F : le numéro de folio -%M : l'installation +%M : l'installation %LM : la localisation %l : le numéro de ligne %c : le numéro de colonne @@ -11871,17 +11906,17 @@ Folgende Variablen sind verfügbar: - C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux folios. --Une numérotation est composée d'une variable minimum. + C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux folios. +-Une numérotation est composée d'une variable minimum. -Vous pouvez ajouter ou supprimer une variable de numérotation par le biais des boutons - et +. -Une variable de numérotation comprend : un type, une valeur et une incrémentation. --les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau folio de la valeur du champ "Incrémentation". --"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. +-les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau folio de la valeur du champ "Incrémentation". +-"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. Si le chiffre défini dans le champ Valeur possède moins de digits que le type choisi,celui-ci sera précédé par un ou deux 0 afin de respecter son type. --Le type "Texte", représente un texte fixe. -Le champ "Incrémentation" n'est pas utilisé. +-Le type "Texte", représente un texte fixe. +Le champ "Incrémentation" n'est pas utilisé. help dialog about the folio autonumerotation In diesem Dialog können Sie die Nummerierungsregel für neu angelegte Seiten definieren. @@ -11889,32 +11924,32 @@ Le champ "Incrémentation" n'est pas utilisé. - Variablen können mittels Knöpfe - und + gelöscht bzw. hinzugefügt werden. - Eine Variable beinhaltet: einen Typ, einen Wert und eine Inkrementierung. -- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. -- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. -Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. +- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. +- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. +Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. -- Der Typ "Text" steht für einen fixen Text. -In diesem Fall wird das Feld "Inkrementierung" ignoriert. +- Der Typ "Text" steht für einen fixen Text. +In diesem Fall wird das Feld "Inkrementierung" ignoriert. - C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux conducteurs. --Une numérotation est composée d'une variable minimum. + C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux conducteurs. +-Une numérotation est composée d'une variable minimum. -Vous pouvez ajouter ou supprimer une variable de numérotation par le biais des boutons - et +. -Une variable de numérotation comprend : un type, une valeur et une incrémentation. --les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau conducteur de la valeur du champ "Incrémentation". --"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. +-les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau conducteur de la valeur du champ "Incrémentation". +-"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. Si le chiffre défini dans le champ Valeur possède moins de digits que le type choisi,celui-ci sera précédé par un ou deux 0 afin de respecter son type. --Le type "Texte", représente un texte fixe. -Le champ "Incrémentation" n'est pas utilisé. +-Le type "Texte", représente un texte fixe. +Le champ "Incrémentation" n'est pas utilisé. --Le type "N° folio" représente le n° du folio en cours. +-Le type "N° folio" représente le n° du folio en cours. Les autres champs ne sont pas utilisés. --Le type "Folio" représente le nom du folio en cours. +-Le type "Folio" représente le nom du folio en cours. Les autres champs ne sont pas utilisés. help dialog about the conductor autonumerotation In diesem Dialog können Sie die Nummerierungsregel für neue Leiter definieren. @@ -11922,17 +11957,17 @@ Les autres champs ne sont pas utilisés. - Variablen können mittels Knöpfe - und + gelöscht bzw. hinzugefügt werden. - Eine Variable beinhaltet: einen Typ, einen Wert und eine Inkrementierung. -- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. -- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. -Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. +- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. +- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. +Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. -- Der Typ "Text" steht für einen fixen Text. -In diesem Fall wird das Feld "Inkrementierung" ignoriert. +- Der Typ "Text" steht für einen fixen Text. +In diesem Fall wird das Feld "Inkrementierung" ignoriert. -- Der Typ "Seitennummer" steht für die Seitennummer der Seite. +- Der Typ "Seitennummer" steht für die Seitennummer der Seite. Andere Felder werden nicht verwendet. -- Der Typ "Seite" steht für die Seitennummer. +- Der Typ "Seite" steht für die Seitennummer. Andere Felder werden nicht verwendet. @@ -11943,22 +11978,22 @@ Andere Felder werden nicht verwendet. - C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux elements. --Une numérotation est composée d'une variable minimum. + C'est ici que vous pouvez définir la manière dont seront numérotés les nouveaux elements. +-Une numérotation est composée d'une variable minimum. -Vous pouvez ajouter ou supprimer une variable de numérotation par le biais des boutons - et +. -Une variable de numérotation comprend : un type, une valeur et une incrémentation. --les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau conducteur de la valeur du champ "Incrémentation". --"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. +-les types "Chiffre 1", "Chiffre 01" et "Chiffre 001", représentent un type numérique défini dans le champ "Valeur", qui s'incrémente à chaque nouveau conducteur de la valeur du champ "Incrémentation". +-"Chiffre 01" et "Chiffre 001", sont respectivement représentés sur le schéma par deux et trois digits minimum. Si le chiffre défini dans le champ Valeur possède moins de digits que le type choisi,celui-ci sera précédé par un ou deux 0 afin de respecter son type. --Le type "Texte", représente un texte fixe. -Le champ "Incrémentation" n'est pas utilisé. +-Le type "Texte", représente un texte fixe. +Le champ "Incrémentation" n'est pas utilisé. --Le type "N° folio" représente le n° du folio en cours. +-Le type "N° folio" représente le n° du folio en cours. Les autres champs ne sont pas utilisés. --Le type "Folio" représente le nom du folio en cours. +-Le type "Folio" représente le nom du folio en cours. Les autres champs ne sont pas utilisés. help dialog about the element autonumerotation In diesem Dialog können Sie die Nummerierungsregel für neue Elemente definieren. @@ -11966,17 +12001,17 @@ Les autres champs ne sont pas utilisés. - Variablen können mittels Knöpfe - und + gelöscht bzw. hinzugefügt werden. - Eine Variable beinhaltet: einen Typ, einen Wert und eine Inkrementierung. -- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. -- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. -Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. +- Die Typen "Zahlenformat 1", "Zahlenformat 01" und "Zahlenformat 001" stellen eine Zahl dar, deren Startwert im Feld "Wert" definiert ist und die um den Wert vom Feld "Inkrementierung" inkrementiert wird. +- "Zahlenformat 01" und "Zahlenformat 001" werden im Schaltplan mit zwei bzw. drei Ziffern angezeigt. +Vorangestellte Nullen werden hinzugefügt falls der Startwert vom Feld "Wert" weniger Ziffer hat. -- Der Typ "Text" steht für einen fixen Text. -In diesem Fall wird das Feld "Inkrementierung" ignoriert. +- Der Typ "Text" steht für einen fixen Text. +In diesem Fall wird das Feld "Inkrementierung" ignoriert. -- Der Typ "Seitennummer" steht für die Seitennummer der Seite. +- Der Typ "Seitennummer" steht für die Seitennummer der Seite. Andere Felder werden nicht verwendet. -- Der Typ "Seite" steht für die Seitennummer. +- Der Typ "Seite" steht für die Seitennummer. Andere Felder werden nicht verwendet. @@ -12141,33 +12176,33 @@ Andere Felder werden nicht verwendet. - Éditer les propriétés d'une primitive + Éditer les propriétés d'une primitive Stammfunktioneigenschaften bearbeiten - - Modifier le trait d'une forme + + Modifier le trait d'une forme Linie einer Form ändern - - Modifier le remplissage d'une forme + + Modifier le remplissage d'une forme Füllung einer Form ändern - + Fermer le polygone Polygon schliessen - - + + Modifier une forme simple Geometrische Form ändern - - Modifier les propriétés d'une forme simple + + Modifier les propriétés d'une forme simple Eigenschaften einer geometrischen Form ändern @@ -14261,7 +14296,7 @@ Andere Felder werden nicht verwendet. - Modifier l'orientation d'une borne + Modifier l'orientation d'une borne Orientierung eines Anschlusses ändern @@ -14314,7 +14349,7 @@ Andere Felder werden nicht verwendet. - Modifier le type d'une borne + Modifier le type d'une borne Typ des Anschlusses ändern @@ -14345,7 +14380,7 @@ Andere Felder werden nicht verwendet. - Modifier l'alignement du label + Modifier l'alignement du label Ausrichtung der Beschriftung ändern @@ -14361,7 +14396,7 @@ Andere Felder werden nicht verwendet. - Modifier l'étiquette du maître + Modifier l'étiquette du maître Die Bezeichnung des Masters ändern @@ -14370,11 +14405,11 @@ Andere Felder werden nicht verwendet. Modifier le nom de la borne Den Namen des Anschlusses ändern - + - Modifier l'index de l'étiquette du maître + Modifier l'index de l'étiquette du maître Den Index des Master-Tags ändern @@ -14482,7 +14517,7 @@ Andere Felder werden nicht verwendet. - Cette fonction numérote les bornes du projet selon leur position. Les bornes vides ou verrouillées sont ignorées.Le marquage des bornes doit être configuré au préalable comme suit : '-X:AB'. La partie avant les deux-points (le bornier) peut être nommée au choix. 'AB' peut être composé de chiffres ou de lettres." + Cette fonction numérote les bornes du projet selon leur position. Les bornes vides ou verrouillées sont ignorées.Le marquage des bornes doit être configuré au préalable comme suit : '-X:AB'. La partie avant les deux-points (le bornier) peut être nommée au choix. 'AB' peut être composé de chiffres ou de lettres." Diese Funktion nummeriert die Klemmen des Projekts entsprechend ihrer Position. Leere oder gesperrte Klemmen werden dabei ignoriert. Die Klemmenbezeichnung muss zuvor wie folgt konfiguriert werden: „-X:AB“. Der Teil vor dem Doppelpunkt (die Klemmenleiste) kann beliebig benannt werden. „AB“ kann aus Ziffern oder Buchstaben bestehen. @@ -14492,12 +14527,12 @@ Andere Felder werden nicht verwendet. - Priorité à l'axe X (horizontal) + Priorité à l'axe X (horizontal) Priorität für die X-Achse (horizontal) - Priorité à l'axe Y (vertical) + Priorité à l'axe Y (vertical) Priorität für die Y-Achse (vertikal) @@ -14788,7 +14823,7 @@ Andere Felder werden nicht verwendet. - Afficher l'aide + Afficher l'aide Hilfe anzeigen @@ -14818,7 +14853,7 @@ Andere Felder werden nicht verwendet. - Texte d'en tête + Texte d'en tête Kopfzeile @@ -14990,7 +15025,7 @@ Andere Felder werden nicht verwendet. TextEditor - Modifier le contenu d'un champ texte + Modifier le contenu d'un champ texte Inhalt eines Textfelds ändern @@ -15001,12 +15036,12 @@ Andere Felder werden nicht verwendet. - Modifier la police d'un texte + Modifier la police d'un texte Schriftart eines Texts ändern - Modifier la couleur d'un texte + Modifier la couleur d'un texte Farbe eines Texts ändern @@ -15062,12 +15097,12 @@ Andere Felder werden nicht verwendet. - Point d'ancrage du texte et alignement des lignes entre elles + Point d'ancrage du texte et alignement des lignes entre elles Bezugspunkt des Textes und Ausrichtung der Zeilen zueinander - Modifier l'alignement d'un champ texte + Modifier l'alignement d'un champ texte Ausrichtung eines Textfelds ändern @@ -15131,30 +15166,30 @@ Andere Felder werden nicht verwendet. TitleBlockPropertiesWidget - + Modèle par défaut Standardvorlage - + Éditer ce modèle menu entry Vorlage bearbeiten - + Dupliquer et éditer ce modèle menu entry Vorlage kopieren und bearbeiten - + Title block templates actions Aktionen zum Schriftfeld - - + + Créer un Folio Numérotation Auto Neue auto-nummerierte Seite anlegen @@ -15304,21 +15339,21 @@ Folgende Variablen stehen im Feld Seite zur Verfügung: Vous pouvez définir ici vos propres associations noms/valeurs pour que le cartouche en tienne compte. Exemple : -associer le nom "volta" et la valeur "1745" remplacera %{volta} par 1745 dans le cartouche. +associer le nom "volta" et la valeur "1745" remplacera %{volta} par 1745 dans le cartouche. Hier können Sie Ihre eigenen Kombinationen Variablen/Werte für die Einträge der Datenfelder im Schriftfeld definieren. Zum Beispiel: -die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volta} durch 1745 ersetzen. +die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volta} durch 1745 ersetzen. TitleBlockTemplate - + %1 : %2 titleblock content - please let the blank space at the beginning %1: %2 - + %1 %1 @@ -15353,7 +15388,7 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volt - Attention : les bordures des cellules vides n'apparaissent pas lors du rendu final sur le folio. + Attention : les bordures des cellules vides n'apparaissent pas lors du rendu final sur le folio. Achtung: der Rahmen von leeren Zellen wird nicht auf der Seite angezeigt. @@ -15455,18 +15490,18 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volt - Édition d'une cellule : %1 + Édition d'une cellule : %1 label of and undo command when editing a cell Zellenbearbeitung: %1 - Par défaut, les variables suivantes sont disponibles :<ul><li>%{author} : auteur du folio</li><li>%{date} : date du folio</li><li>%{title} : titre du folio</li><li>%{filename} : nom de fichier du projet</li><li>%{plant} : nom de l'installation (=) dans laquelle se trouve le folio</li><li>%{locmach} : nom de la localisation (+) dans laquelle se trouve le folio</li><li>%{indexrev} : indice de révision du folio</li><li>%{version} : version du logiciel</li><li>%{folio} : numéro du folio</li><li>%{folio-id} : position du folio dans le projet</li><li>%{folio-total} : nombre total de folios dans le projet</li><li>%{previous-folio-num} : numéro du folio précédent</li><li>%{next-folio-num} : numéro du folio suivant</li><li>%{projecttitle} : titre du projet</li><li>%{projectpath} : chemin du projet</li><li>%{projectfilename} : nom du fichier</li><li>%{saveddate} : date d'enregistrement du fichier format local</li><li>%{saveddate-eu} : date d'enregistrement du fichier format dd-MM-yyyy</li><li>%{saveddate-us} : date d'enregistrement du fichier format yyyy-MM-dd</li><li>%{savedtime} : heure d'enregistrement du fichier</li><li>%{savedfilename} : nom du fichier enregistré</li><li>%{savedfilepath} : chemin du fichier enregistré</li></ul> + Par défaut, les variables suivantes sont disponibles :<ul><li>%{author} : auteur du folio</li><li>%{date} : date du folio</li><li>%{title} : titre du folio</li><li>%{filename} : nom de fichier du projet</li><li>%{plant} : nom de l'installation (=) dans laquelle se trouve le folio</li><li>%{locmach} : nom de la localisation (+) dans laquelle se trouve le folio</li><li>%{indexrev} : indice de révision du folio</li><li>%{version} : version du logiciel</li><li>%{folio} : numéro du folio</li><li>%{folio-id} : position du folio dans le projet</li><li>%{folio-total} : nombre total de folios dans le projet</li><li>%{previous-folio-num} : numéro du folio précédent</li><li>%{next-folio-num} : numéro du folio suivant</li><li>%{projecttitle} : titre du projet</li><li>%{projectpath} : chemin du projet</li><li>%{projectfilename} : nom du fichier</li><li>%{saveddate} : date d'enregistrement du fichier format local</li><li>%{saveddate-eu} : date d'enregistrement du fichier format dd-MM-yyyy</li><li>%{saveddate-us} : date d'enregistrement du fichier format yyyy-MM-dd</li><li>%{savedtime} : heure d'enregistrement du fichier</li><li>%{savedfilename} : nom du fichier enregistré</li><li>%{savedfilepath} : chemin du fichier enregistré</li></ul> Standardmäßig sind die folgenden Variablen verfügbar:<ul><li>%{author}: Autor der Seite </li><li>%{date}: Datum der Seite</li><li>%{title}: Titel der Seite</li><li>%{filename}: Dateiname des Projekts</li><li>%{plant}: Name der Anlage (=), zu der die Seite gehört</li><li>%{locmach}: Name des Ortes (+), zu dem die Seite gehört</li><li>%{indexrev}: Revisionsindex der Seite</li><li>%{version}: Softwareversion</li><li>%{folio}: Seitennummer</li><li>%{folio-id}: Seitennummer der Seite</li><li>%{folio-total}: Anzahl der Seiten im Projekt</li><li>%{previous-folio-num}: Nummer der vorherigen Seite</li><li>%{next-folio-num}: Nummer der nächsten Seite</li><li>%{projecttitle}: Titel des Projekts</li><li>%{projectpath}: Projektpfad</li><li>%{projectfilename}: Name der Projektdatei</li><li>%{saveddate}: Speicherdatum der Dateim im lokalen Format</li><li>%{saveddate-eu}: Speicherdatum der Datei im Format TT-MM-JJJJ</li><li>%{saveddate-us}: Speicherdatum der Datei im Format JJJJ-MM-TT</li><li>%{savedtime}: Zeitpunkt des Speicherns der Datei</li><li>%{savedfilename}: Name der gespeicherten Datei</li><li>%{savedfilepath}: Pfad zur gespeicherten Datei</li></ul> - Chaque cellule d'un cartouche affiche une valeur, optionnellement précédée d'un label. Tous deux peuvent être traduits en plusieurs langues.<br/>Comme ce que vous éditez actuellement est un <em>modèle</em> de cartouche, ne saisissez pas directement des données brutes : insérez plutôt des variables sous la forme %{nom-de-variable}, qui seront ensuite remplacées par les valeurs adéquates sur le folio. + Chaque cellule d'un cartouche affiche une valeur, optionnellement précédée d'un label. Tous deux peuvent être traduits en plusieurs langues.<br/>Comme ce que vous éditez actuellement est un <em>modèle</em> de cartouche, ne saisissez pas directement des données brutes : insérez plutôt des variables sous la forme %{nom-de-variable}, qui seront ensuite remplacées par les valeurs adéquates sur le folio. Jede Zelle des Schriftfelds zeigt einen Wert und optional einen vorangestelltes Label an. Beide Elemente können in verschiedene Sprachen übersetzt werden.<br/>Gerade wird eine <em>Vorlage</em> für ein Schriftfeld bearbeitet. Tragen Sie keine statischen Daten ein: Nutzen Sie eher Variablen in der Form %{Variablenname}, um deren Werte im Schriftfeld der Seite anzuzeigen. @@ -15490,13 +15525,13 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volt TitleBlockTemplateLocationChooser - + Collection parente used in save as form Zugewiesene Sammlung - + Modèle existant used in save as form Vorhandene Vorlage überschreiben @@ -15556,89 +15591,89 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volt - + Renommer Umbenennen - + Type : Typ: - + Logo déjà existant Logo schon vorhanden - + Remplacer Ersetzen - - Il existe déjà un logo portant le nom "%1" au sein de ce modèle de cartouche. Voulez-vous le remplacer ou préférez-vous spécifier un autre nom pour ce nouveau logo ? - Es existiert bereits ein Logo mit dem Namen "%1" in dieser Schriftfeld-Vorlage. Vorhandenes Logo ersetzen oder neues Logo umbenennen? + + Il existe déjà un logo portant le nom "%1" au sein de ce modèle de cartouche. Voulez-vous le remplacer ou préférez-vous spécifier un autre nom pour ce nouveau logo ? + Es existiert bereits ein Logo mit dem Namen "%1" in dieser Schriftfeld-Vorlage. Vorhandenes Logo ersetzen oder neues Logo umbenennen? - + Type : %1 Typ: %1 - + Choisir une image / un logo Logo / Bild auswählen - + Images vectorielles (*.svg);;Images bitmap (*.png *.jpg *.jpeg *.gif *.bmp *.xpm);;Tous les fichiers (*) Vektorbilder (*.svg);;Pixelbilder (*.png *.jpg *.jpeg *.gif *.bmp *.xpm);;Alle Dateien (*) - - + + Erreur Fehler - - Impossible d'ouvrir le fichier spécifié + + Impossible d'ouvrir le fichier spécifié Öffnen der Datei nicht möglich - + Choisir un fichier pour exporter ce logo Datei zum Exportieren vom Logo auswählen - + Tous les fichiers (*);;Images vectorielles (*.svg);;Images bitmap (*.png *.jpg *.jpeg *.gif *.bmp *.xpm) Alle Dateien (*);;Vektorbilder (*.svg);;Pixelbilder (*.png *.jpg *.jpeg *.gif *.bmp *.xpm) - - Impossible d'exporter vers le fichier spécifié + + Impossible d'exporter vers le fichier spécifié Exportieren zur Zieldatei nicht möglich - + Renommer un logo Logo umbenennen - + Vous devez saisir un nouveau nom. Sie müssen einen neuen Namen eingeben. - + Le nouveau nom ne peut pas être vide. Der neue Name darf nicht leer sein. - + Le nom saisi est déjà utilisé par un autre logo. Der angegebene Name ist bereits für ein anderes Logo benutzt. @@ -15742,32 +15777,36 @@ die Variable "volta" kombiniert mit dem Wert "1745" lässt im Schriftfeld %{volt %1px - + %1px %1px - - Changer la largeur de l'aperçu + + Changer la largeur de l'aperçu Breite der Vorschau bearbeiten - - Largeur de l'aperçu : + + Largeur de l'aperçu : Breite der Vorschau: - - Longueur minimale : %1px -Longueur maximale : %2px + + Attention : la somme des largeurs relatives dépasse 100%% de la largeur totale, ce modèle de cartouche ne peut être satisfait par aucune largeur. - tooltip showing the minimum and/or maximum width of the edited template - Minimale Länge: %1px -Maximale Länge: %2px - + tooltip warning shown when a template's relative-to-total-length columns alone already exceed 100%% of the total width + - + + Attention : les colonnes de largeur fixe ne peuvent pas tenir dans la largeur restante, ce modèle de cartouche ne peut être satisfait par aucune largeur. + + tooltip warning shown when a template's relative-to-total-length columns already consume all available width, leaving no room for its fixed-width columns + + + + Longueur minimale : %1px tooltip showing the minimum width of the edited template @@ -15775,7 +15814,21 @@ Maximale Länge: %2px - + + Longueur maximale : %1px + + tooltip showing the maximum width of the edited template + + + + + Longueur non contrainte. + + tooltip shown when the edited template has neither a minimum nor a maximum width constraint + + + + Largeur totale pour cet aperçu : %1px displayed at the top of the preview when editing a title block template Gesamtbreite der Vorschau: %1px @@ -15791,9 +15844,9 @@ Maximale Länge: %2px - Cartouches du projet "%1" + Cartouches du projet "%1" collection title when the project has a suitable title -- %1 is the project title - Schriftfelder vom Projekt "%1" + Schriftfelder vom Projekt "%1" @@ -15821,7 +15874,7 @@ Maximale Länge: %2px - Impossible d'ouvrir le fichier pour l'écriture. + Impossible d'ouvrir le fichier pour l'écriture. Die Datei kann nicht zum Schreiben geöffnet werden. @@ -15995,7 +16048,7 @@ Maximale Länge: %2px - Option d'affichage en croix + Option d'affichage en croix Optionen für die Darstellung als Tabelle @@ -16045,7 +16098,7 @@ Maximale Länge: %2px - Sous le label de l'élément + Sous le label de l'élément Unter dem Betriebsmittelkennzeichen @@ -16154,27 +16207,27 @@ Maximale Länge: %2px qdesigner_internal::RichTextEditorDialog - + Edit text Text bearbeiten - + Rich Text Rich Text - + Source Quelltext - + &OK &OK - + &Cancel Abbre&chen @@ -16244,7 +16297,7 @@ Maximale Länge: %2px B&ild einfügen - + Simplify Rich Text Simplify Rich Text From 99dac17327433bc6cab9cc3c82c745b4329a7ddf Mon Sep 17 00:00:00 2001 From: ispyisail Date: Tue, 11 Aug 2026 10:27:52 +1200 Subject: [PATCH 06/26] Fix bugtracker #296: cross-reference text overlaps element label by default XRefProperties::fromSettings() read the "xrefpos" QSettings key with no default value. On a fresh install/project, the key doesn't exist yet, so settings.value(...).toString() returns an empty string. QMetaEnum::keyToValue("") returns -1 (invalid), which was then cast directly into m_xref_pos as Qt::AlignmentFlag(-1) -- garbage, despite the class's own default constructor documenting the intended default as Qt::AlignBottom. This explains the reported symptom: dynamically generated cross-reference text for master/slave-linked elements (e.g. magneto-thermal breaker, thermal relay NC) rendered at an undefined position and overlapped the element's own label, making the reference unreadable. The reporter's manual workaround -- explicitly setting alignment to "Bottom" in Project Properties > New Folio/Cross Referencing -- side-steps the bug precisely by writing a valid "AlignBottom" value into QSettings, which fromSettings() then reads back correctly on subsequent loads. Fix: supply "AlignBottom" as the fallback default for the QSettings read, matching the constructor's documented default and the reporter's functioning workaround. Verified: clean rebuild, only the intended object file recompiled and linked successfully. Confirmed via a small standalone QMetaEnum test that keyToValue("") returns -1/invalid while keyToValue("AlignBottom") returns 64 (== Qt::AlignBottom), reproducing the exact mechanism before the fix and confirming the corrected default resolves to the intended value. Not verified: a live before/after visual comparison of the rendered cross-reference text position on an actual magneto-thermal/thermal-relay diagram (would require constructing a multi-folio project with linked master/slave elements and comparing label geometry, which was out of scope for the time available). Confidence rests on the QMetaEnum mechanism being unambiguous and the fix being a one-line default-value correction with no other code path affected. --- sources/properties/xrefproperties.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/properties/xrefproperties.cpp b/sources/properties/xrefproperties.cpp index be0213c2b..bbb4e8b57 100644 --- a/sources/properties/xrefproperties.cpp +++ b/sources/properties/xrefproperties.cpp @@ -90,7 +90,7 @@ void XRefProperties::fromSettings(const QSettings &settings, m_slave_label = settings.value(prefix % "slave_label", "(%f-%l%c)").toString(); QMetaEnum var = QMetaEnum::fromType(); - m_xref_pos = Qt::AlignmentFlag(var.keyToValue((settings.value(prefix % "xrefpos").toString()).toStdString().data())); + m_xref_pos = Qt::AlignmentFlag(var.keyToValue((settings.value(prefix % "xrefpos", "AlignBottom").toString()).toStdString().data())); for (QString key : m_prefix_keys) { m_prefix.insert(key, settings.value(prefix + key % "prefix").toString()); From 6ad2a63575bcbae68f22c4b4ad6f125c64629ed6 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Tue, 11 Aug 2026 11:33:28 +1200 Subject: [PATCH 07/26] Fix bugtracker #281: new-part wizard's element editor opens behind main window MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit NewElementWizard::createNewElement() creates and show()s a QETElementEditor for the freshly-created part, but never calls raise()/activateWindow(). On the reporter's macOS setup, the wizard (a modal sheet/child of the main window) closing right before the new editor is shown apparently leaves the main window as the active/key window, so the new editor window is created but stays behind it -- and, being neither key nor frontmost, it also never surfaces in the Dock's window list or the app's own Windows menu. This matched the report exactly: the reporter saw the wizard finish with seemingly no result, when in fact a new part genuinely was created and its editor genuinely was opened, just hidden from view. Fix: explicitly raise() and activateWindow() the new editor after show(), so it becomes the frontmost/key window regardless of what state the wizard leaves the main window in. Verified: clean rebuild, only the intended object file recompiled and linked successfully. Ran the full wizard flow live under Xvfb on Linux (right-click user collection > "Nouvel élément" > through all 3 steps > Finish) and confirmed the element editor opens correctly with a blank new part, with no regression in the flow. Not verified: the actual reported symptom is macOS-specific window-manager behavior (key/frontmost window handling, Dock window-list registration), which cannot be reproduced or confirmed fixed in this Linux/Xvfb sandbox -- no macOS or Wine-with-Cocoa environment is available here. raise()/ activateWindow() are the standard cross-platform Qt calls for this exact problem and match the pattern already used elsewhere in the codebase (QETApp::openElementLocations()'s already-open-editor branch), so confidence rests on that precedent rather than a macOS-side confirmation. --- sources/newelementwizard.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/sources/newelementwizard.cpp b/sources/newelementwizard.cpp index afa30fa9e..3cd3870e8 100644 --- a/sources/newelementwizard.cpp +++ b/sources/newelementwizard.cpp @@ -252,4 +252,10 @@ void NewElementWizard::createNewElement() loc_.addToPath(m_chosen_file); edit_new_element -> setLocation(loc_); edit_new_element -> show(); + // Without this, the just-closed wizard can leave the main window + // as the active/key window (bugtracker #281, reported on macOS): + // the new editor is created and shown, but stays behind the main + // window and doesn't surface in the Dock/Windows menu. + edit_new_element -> raise(); + edit_new_element -> activateWindow(); } From 325b895d0b78c68a3eb4cc1c88de9b8832f0b6c6 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Tue, 11 Aug 2026 11:48:58 +1200 Subject: [PATCH 08/26] Fix bugtracker #275: element properties window stuck centered on macOS MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Double-clicking a placed element (or right-click > "Éditer l'élément") opens its properties via Element::editProperty(), which constructs a PropertiesEditorDialog with a real parent (QApplication::activeWindow()). On macOS, a QDialog that has both a parent and Qt::WindowModal set falls back to Cocoa's automatic sheet presentation. Reports (and this codebase's own existing workarounds) indicate this can render stuck centered on screen, non-draggable, with symmetric resize -- rather than a proper attached, movable window -- unlike Linux/X11 where the same dialog behaves as a normal draggable QDialog. Two other dialogs in this codebase already explicitly opt into the correct macOS sheet presentation for this exact reason: ElementDialog::setUpWidget() and DiagramPropertiesDialog's setup both do setWindowModality(Qt::WindowModal); #ifdef Q_OS_MACOS setWindowFlags(Qt::Sheet); #endif PropertiesEditorDialog -- used for editing Element, QetShapeItem, and DiagramImageItem properties, all reached via double-click on a diagram item -- had neither this opt-in nor an opt-out, so it likely fell into the same automatic-sheet behavior but without the explicit flag, matching the reported "stuck centered, can't drag" symptom. Fix: apply the same setWindowModality()/Q_OS_MACOS Qt::Sheet pattern already used by the other two dialogs, in PropertiesEditorDialog's constructor -- fixing all three call sites (element, shape, and image property editing) at once, since they share this one dialog class. Verified: clean rebuild, all three call sites (element.cpp, qetshapeitem.cpp, diagramimageitem.cpp) recompiled and linked successfully with no errors or warnings. Not verified: the actual reported symptom is macOS/Cocoa-specific window presentation behavior, which cannot be reproduced or confirmed fixed in this Linux/Xvfb sandbox -- no macOS environment is available here. Confidence rests on the exact same fix pattern already being established and presumably working for two other dialogs in this codebase for the identical class of problem. --- sources/PropertiesEditor/propertieseditordialog.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/sources/PropertiesEditor/propertieseditordialog.h b/sources/PropertiesEditor/propertieseditordialog.h index b76b5c422..50cb96aef 100644 --- a/sources/PropertiesEditor/propertieseditordialog.h +++ b/sources/PropertiesEditor/propertieseditordialog.h @@ -46,6 +46,18 @@ class PropertiesEditorDialog : public QDialog PropertiesEditorDialog(T editor, QWidget *parent = nullptr) : QDialog (parent) { + // Without this, a QWidget-modal QDialog with a parent falls + // back to macOS's automatic sheet presentation, which some + // Qt/Cocoa versions render stuck centered on screen and + // non-draggable rather than as a proper attached sheet + // (bugtracker #275). Other dialogs in this codebase already + // opt in explicitly (see ElementDialog, DiagramPropertiesDialog) + // -- this one was missing it. + setWindowModality(Qt::WindowModal); +#ifdef Q_OS_MACOS + setWindowFlags(Qt::Sheet); +#endif + //Set dialog title setWindowTitle(editor->title()); // Reparent the editor, From 55250a6de91d331e1c94daa258ceba5f761d4c84 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Tue, 11 Aug 2026 12:01:24 +1200 Subject: [PATCH 09/26] Fix bugtracker #270: Save As on Snap produces file with no .qet extension ProjectView::askUserForFilePath() only appended the .qet extension when FLATPAK_ID/SNAP_NAME were NOT set, on the assumption that the xdg-desktop-portal file dialog used by sandboxed Snap/Flatpak builds always appends the selected filter's extension itself (avoiding a double ".qet.qet"). In practice, on the reporter's Snap/Ubuntu 22.04 setup the portal dialog does not append it, so the environment-based skip left Save As producing a file with no extension at all. Portal behavior isn't something QET controls or can reliably detect via environment variables -- it depends on the desktop's actual portal implementation/version. Rather than guessing per-environment, normalize unconditionally: strip any existing .qet suffix (case-insensitive) and re-append exactly one. This produces the correct single extension whether or not the dialog already added it, on every environment. Verified: clean rebuild, only the intended object file recompiled and linked successfully. Wrote a standalone test of the normalization logic covering no-extension, already-has-extension, uppercase-extension, and a literal dot in the base filename -- all four produced exactly one correct ".qet" suffix with no double-extension and no missing extension. Not verified: the actual Snap-sandboxed portal dialog behavior itself, since building/running the Snap package and testing its file-save dialog under a portal is outside what's practical to set up in this sandbox. Confidence rests on the fix removing the environment-guessing entirely in favor of unconditional, dialog-implementation-agnostic normalization, which is correct regardless of what the underlying dialog does. --- sources/projectview.cpp | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/sources/projectview.cpp b/sources/projectview.cpp index fa348277b..b1bcc5077 100644 --- a/sources/projectview.cpp +++ b/sources/projectview.cpp @@ -345,11 +345,19 @@ QString ProjectView::askUserForFilePath(bool assign) { // if no filepath is provided, return an empty string if (filepath.isEmpty()) return(filepath); - // if the name does not end with the .qet extension and we're _not_ using xdg-desktop-portal, append it - bool usesPortal = - qEnvironmentVariableIsSet("FLATPAK_ID") || - qEnvironmentVariableIsSet("SNAP_NAME"); - if (!filepath.endsWith(".qet", Qt::CaseInsensitive) && !usesPortal) filepath += ".qet"; + // Ensure the path ends with exactly one .qet extension, regardless of + // whether the active file dialog already appended one. Whether it does + // depends on which backend actually shows the dialog (Qt's own vs. the + // xdg-desktop-portal used by sandboxed Snap/Flatpak builds), and that + // isn't reliably predictable from environment variables alone -- an + // earlier attempt at that (only appending when *not* Snap/Flatpak, + // assuming the portal always appends it) left Snap saves with no + // extension at all whenever the portal didn't (bugtracker #270). + // Stripping any existing suffix first and re-appending it once is + // correct either way. + if (filepath.endsWith(".qet", Qt::CaseInsensitive)) + filepath.chop(4); + filepath += ".qet"; if (assign) { // assign the provided filepath to the currently edited project From 2d889568a524aefa564d9d09d6248633564d2d2d Mon Sep 17 00:00:00 2001 From: ispyisail Date: Tue, 11 Aug 2026 12:36:31 +1200 Subject: [PATCH 10/26] Fix bugtracker #251: title block template with slash in name fails silently MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Saving a new user title block template (right-click "Cartouches utilisateur" > "Nouveau modèle" > "Enregistrer sous") with a name containing a slash (or other filesystem-reserved character) silently did nothing, with no error shown. The entered name is turned directly into a filename (TitleBlockTemplatesFilesCollection::toFileName()), so e.g. "foo/bar" becomes a path "foo/bar.titleblock" -- since "foo/" essentially never exists as a directory, the underlying file write fails, but that failure was never surfaced: - TitleBlockTemplateLocation::isValid() only checked for an empty name, so an invalid name still counted as "valid" and got passed through to save. - QETTitleBlockTemplateEditor::saveAs(const TitleBlockTemplateLocation&) discarded the bool result of setTemplateXmlDescription() and unconditionally returned true, marking the undo stack clean as if the save had actually succeeded. Fix: - isValid() now also rejects names containing \ / : * ? " < > |, matching the character set that's actually unsafe once the name becomes a filename. - saveAs() (the no-arg entry point that asks the user for a location) now shows a clear error dialog when the entered name is rejected, distinguishing "user cancelled" (location.name() empty) from "name was invalid" (non-empty but rejected by isValid()). - saveAs(location) now checks setTemplateXmlDescription()'s return value and shows an error dialog instead of reporting false success on any future/other write failure, not just this one. Verified: clean rebuild, only the intended files recompiled and linked successfully. Live-tested under Xvfb: creating a new template and using "Enregistrer sous" with the name "foo/bar" now shows "Le nom « foo/bar » n'est pas valide : il ne doit pas contenir les caractères suivants : \ / : * ? " < > |" instead of silently doing nothing; reopening the save-as dialog afterward showed the name field correctly empty (nothing was partially written). Saving again with a valid name ("mytemplate_valid") completed with no error dialog, and the resulting mytemplate_valid.titleblock file was confirmed present on disk in the user's title-block collection directory. --- sources/titleblock/qettemplateeditor.cpp | 30 +++++++++++++++++++++++- sources/titleblock/templatelocation.cpp | 8 ++++++- 2 files changed, 36 insertions(+), 2 deletions(-) diff --git a/sources/titleblock/qettemplateeditor.cpp b/sources/titleblock/qettemplateeditor.cpp index 9dd025132..3a316f15b 100644 --- a/sources/titleblock/qettemplateeditor.cpp +++ b/sources/titleblock/qettemplateeditor.cpp @@ -776,7 +776,20 @@ bool QETTitleBlockTemplateEditor::saveAs(const TitleBlockTemplateLocation &locat elmt.setAttribute("name", location.name()); doc.appendChild(elmt); - collection -> setTemplateXmlDescription(location.name(), elmt); + if (!collection -> setTemplateXmlDescription(location.name(), elmt)) { + // Report the failure instead of marking the template "saved" + // regardless (bugtracker #251) -- this return value used to + // be discarded here. + QET::QetMessageBox::critical( + this, + tr("Erreur", "message box title"), + tr( + "Impossible d'enregistrer le modèle « %1 ».", + "message box content - %1 is a title block template name" + ).arg(location.name()) + ); + return(false); + } opened_from_file_ = false; location_ = location; @@ -880,6 +893,21 @@ bool QETTitleBlockTemplateEditor::saveAs() if (location.isValid()) { return(saveAs(location)); } + if (!location.name().isEmpty()) { + // The name was rejected (e.g. contains a path separator or + // other filesystem-reserved character) rather than the user + // cancelling the dialog -- say so instead of silently doing + // nothing (bugtracker #251). + QET::QetMessageBox::critical( + this, + tr("Erreur", "message box title"), + tr( + "Le nom « %1 » n'est pas valide : il ne doit pas contenir " + "les caractères suivants : \\ / : * ? \" < > |", + "message box content - %1 is the rejected template name" + ).arg(location.name()) + ); + } return(false); } diff --git a/sources/titleblock/templatelocation.cpp b/sources/titleblock/templatelocation.cpp index 4387d6412..6f01ce591 100644 --- a/sources/titleblock/templatelocation.cpp +++ b/sources/titleblock/templatelocation.cpp @@ -92,7 +92,13 @@ void TitleBlockTemplateLocation::setName(const QString &name) { */ bool TitleBlockTemplateLocation::isValid() const { - return(!name_.isEmpty()); + // The name becomes (part of) a filename on disk (see + // TitleBlockTemplatesFilesCollection::toFileName()). A name containing + // a path separator or another filesystem-reserved character silently + // fails to save instead of erroring, because it turns into an + // unintended subpath rather than a plain filename (bugtracker #251). + static const QRegularExpression invalid_chars_re(QStringLiteral("[\\\\/:*?\"<>|]")); + return(!name_.isEmpty() && !name_.contains(invalid_chars_re)); } /** From 3a3182862c7630f86fcfddf30c36b61dd307c0f1 Mon Sep 17 00:00:00 2001 From: plc-user <74435298+plc-user@users.noreply.github.com> Date: Tue, 11 Aug 2026 14:11:00 +0200 Subject: [PATCH 11/26] move "diagnostics_action_" upwards in help-menu --- sources/qetmainwindow.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sources/qetmainwindow.cpp b/sources/qetmainwindow.cpp index 381fe9912..29a9ce619 100644 --- a/sources/qetmainwindow.cpp +++ b/sources/qetmainwindow.cpp @@ -155,6 +155,8 @@ void QETMainWindow::initCommonMenus() connect(settings_menu_, &QMenu::aboutToShow, this, &QETMainWindow::checkToolbarsmenu); help_menu_ = new QMenu(tr("&Aide", "window menu"), this); + help_menu_ -> addAction(diagnostics_action_); + help_menu_ -> addSeparator(); help_menu_ -> addAction(whatsthis_action_); help_menu_ -> addSeparator(); help_menu_ -> addAction(manual_online_); @@ -164,8 +166,6 @@ void QETMainWindow::initCommonMenus() help_menu_ -> addAction(donate_); help_menu_ -> addAction(about_qt_); help_menu_ -> addAction(about_qet_); - help_menu_ -> addSeparator(); - help_menu_ -> addAction(diagnostics_action_); #ifdef Q_OS_WIN32 upgrade_ -> setVisible(true); From 162d43e1c942032dbd563bc44b35092966bf32c7 Mon Sep 17 00:00:00 2001 From: ispyisail Date: Wed, 12 Aug 2026 10:31:04 +1200 Subject: [PATCH 12/26] Fix PDF export truncating project filenames at the first dot Forum report (qelectrotech.org/forum, topic 3005, reporter oc67): a project named e.g. "Mon_projet.avec_un_point.qet" exported to PDF as "Mon_projet.pdf" - everything after the first "." in the filename was silently dropped. Root cause: ProjectPrintWindow::docName() used QFileInfo::baseName(), which returns the filename up to the FIRST "." rather than stripping only the final suffix. docName() feeds both the PDF print job's setOutputFileName() and the QFileDialog::getSaveFileName default in exportToPDF(), so the truncation showed up as the actual exported file's name, not just a dialog suggestion. sources/exportdialog.cpp's SVG/PNG/DXF export path already uses the correct QFileInfo::completeBaseName() (strips only the last suffix) - this fix brings the PDF/print path in line with that existing, correct pattern rather than introducing a new approach. Verified the exact before/after behavior with a standalone QFileInfo test: baseName() on "Mon_projet.avec_un_point.qet" returns "Mon_projet" (the bug); completeBaseName() returns "Mon_projet.avec_un_point" (correct). Also did a clean incremental build with no new warnings/errors. --- sources/print/projectprintwindow.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/print/projectprintwindow.cpp b/sources/print/projectprintwindow.cpp index b115ad5b7..a2b1f3ce8 100644 --- a/sources/print/projectprintwindow.cpp +++ b/sources/print/projectprintwindow.cpp @@ -108,7 +108,7 @@ QString ProjectPrintWindow::docName(QETProject *project) { QString doc_name; if (!project->filePath().isEmpty()) { - doc_name = QFileInfo(project->filePath()).baseName(); + doc_name = QFileInfo(project->filePath()).completeBaseName(); } else if (!project->title().isEmpty()) { doc_name = project->title(); doc_name = QET::stringToFileName(doc_name); From 762bd7febf4ad65e94f1e8dcadf7ea3deea1684b Mon Sep 17 00:00:00 2001 From: ispyisail Date: Wed, 12 Aug 2026 15:53:30 +1200 Subject: [PATCH 13/26] Fix bugtracker #333: selecting several dynamic texts overwrites their colours Selecting more than one dynamic text field in the element editor silently replaced every selected field's colour with the colour of the first one. Nothing was clicked -- merely extending the selection destroyed the others' colours, and the change went onto the undo stack as if the user had asked for it. Cause: updateForm() loads the current part's colour into the colour button with m_color_kpb->setColor(). KColorButton::changed is emitted for a programmatic setColor() just as it is for user interaction, and it is connected to m_color_kpb_changed(), which applies the new colour to *every* part in m_parts. So simply displaying the first part's colour wrote that colour to all the others. Every other widget in updateForm() is immune because it is wired to a user-only signal -- on_m_x_sb_editingFinished(), on_m_frame_cb_clicked() -- which setValue() and setChecked() do not emit. The colour button is the one control whose signal cannot distinguish the two, so block it while loading. This also explains why the reporter saw it only when rubber-band selecting bottom-to-top: the write happens only when the first part's colour differs from what the button already shows, which depends on selection order. Verified in the element editor with two dynamic texts, one red and one blue: select the red one, then ctrl-click the blue one. Before: the blue text turned red. After: both keep their colours. Changing the colour deliberately with the button still applies to all selected texts, as intended. --- sources/editor/ui/dynamictextfieldeditor.cpp | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/sources/editor/ui/dynamictextfieldeditor.cpp b/sources/editor/ui/dynamictextfieldeditor.cpp index 145dd959a..5b48d30fd 100644 --- a/sources/editor/ui/dynamictextfieldeditor.cpp +++ b/sources/editor/ui/dynamictextfieldeditor.cpp @@ -31,6 +31,7 @@ #include #include #include +#include DynamicTextFieldEditor::DynamicTextFieldEditor(QETElementEditor *editor, PartDynamicTextField *text_field, @@ -143,7 +144,18 @@ void DynamicTextFieldEditor::updateForm() ui->m_rotation_point_center_cb->setChecked(m_text_field.data()->rotationPointCenter()); #ifdef BUILD_WITHOUT_KF5 #else - m_color_kpb -> setColor(m_text_field.data() -> color()); + //Block signals while loading the colour into the button. + //KColorButton::changed fires on a programmatic setColor() as well + //as on user interaction, and m_color_kpb_changed() applies the new + //colour to *every* selected part -- so merely showing the first + //part's colour would overwrite the colour of all the others. + //The other widgets above are immune because they are wired to + //user-only signals (editingFinished, clicked), which setValue() + //and setChecked() do not emit. + { + const QSignalBlocker blocker(m_color_kpb); + m_color_kpb -> setColor(m_text_field.data() -> color()); + } #endif ui -> m_width_sb -> setValue(m_text_field.data() -> textWidth()); ui -> m_font_pb -> setText(m_text_field -> font().family()); From c14d6a6dd6ff53f9c5a24287ad174eb858aca6a5 Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Mon, 10 Aug 2026 17:57:39 +0200 Subject: [PATCH 14/26] In order to migrate to Qt6 all options for KF6 were added: a) using a system provided KF6 b) downloading and compiling KF6 c) using the vendored-in re-creation of the functionality The behaviour for both Qt5 and Qt6 is steered with the same two variables which were renamed to become version agnostic: a) BUILD_WITH_KF=ON BUILD_KF=OFF b) BUILD_WITH_KF=ON BUILD_KF=ON c) BUILD_WITH_KF=OFF The version is automatically derived from the chosen Qt major version. --- .github/workflows/windows-build.yml | 2 +- CMakeLists.txt | 66 ++++++++++++-------- build-aux/windows/nsis_base/files/README.md | 4 +- cmake/define_definitions.cmake | 6 +- cmake/developer_options.cmake | 7 ++- cmake/fetch_kdeaddons.cmake | 43 +++++++++---- cmake/qet_compilation_vars.cmake | 2 +- sources/editor/ui/dynamictextfieldeditor.cpp | 4 +- sources/editor/ui/dynamictextfieldeditor.h | 4 +- sources/editor/ui/terminaleditor.cpp | 6 +- sources/editor/ui/terminaleditor.h | 4 +- sources/editor/ui/texteditor.cpp | 4 +- sources/editor/ui/texteditor.h | 4 +- sources/qetapp.cpp | 2 +- sources/qetdiagrameditor.cpp | 2 +- sources/qetproject.h | 2 +- tests/catch/CMakeLists.txt | 4 +- tests/googlemock/CMakeLists.txt | 2 +- tests/googletest/CMakeLists.txt | 2 +- tests/qttest/CMakeLists.txt | 2 +- 20 files changed, 104 insertions(+), 68 deletions(-) diff --git a/.github/workflows/windows-build.yml b/.github/workflows/windows-build.yml index dd5cdfb45..e41a6cf5a 100644 --- a/.github/workflows/windows-build.yml +++ b/.github/workflows/windows-build.yml @@ -456,7 +456,7 @@ jobs: -DCMAKE_PREFIX_PATH=/ucrt64 \ -DQt6_DIR=/ucrt64/lib/cmake/Qt6 \ -DQT_VERSION_MAJOR=6 \ - -DBUILD_WITH_KF5=OFF \ + -DBUILD_WITH_KF=OFF \ -DPACKAGE_TESTS=OFF \ -DCMAKE_POLICY_DEFAULT_CMP0077=NEW \ -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \ diff --git a/CMakeLists.txt b/CMakeLists.txt index 45b539de4..a06bf1fde 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -48,19 +48,11 @@ endif() # INTERFACE_QT_MAJOR_VERSION mismatch at generate time. set(QT_DEFAULT_MAJOR_VERSION ${QT_VERSION_MAJOR} CACHE STRING "Qt version to use (5 or 6)" FORCE) -# Add sub directories -option(PACKAGE_TESTS "Build the tests" ON) -if(PACKAGE_TESTS) - message("Add sub directory tests") - add_subdirectory(tests) -endif() - include(cmake/paths_compilation_installation.cmake) include(cmake/start_options.cmake) include(cmake/developer_options.cmake) include(cmake/git_update_submodules.cmake) include(cmake/git_last_commit_sha.cmake) -include(cmake/fetch_kdeaddons.cmake) include(cmake/fetch_singleapplication.cmake) include(cmake/fetch_pugixml.cmake) include(cmake/qet_compilation_vars.cmake) @@ -100,25 +92,19 @@ endif() set(CMAKE_AUTOUIC_SEARCH_PATHS ${QET_DIR}/sources/ui) -# The default build only compiles the tracked .ts files to .qm (lrelease). -# Refreshing the .ts from the sources (lupdate) is a developer action behind -# the explicit "update_translations" target below: running lupdate on every -# build rewrote tracked files as a side effect, and under high parallelism -# lupdate rewriting a .ts while lrelease read the same file made the build -# fail with "Premature end of document". -set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION "${QET_DIR}/lang") if(QT_VERSION_MAJOR EQUAL 6) - qt6_add_translation(QM_FILES ${TS_FILES}) + set(KF_MAJOR_VERSION 6) else() - qt5_add_translation(QM_FILES ${TS_FILES}) + set(KF_MAJOR_VERSION 5) endif() +include(cmake/fetch_kdeaddons.cmake) -add_custom_target(update_translations - COMMAND $ ${CMAKE_SOURCE_DIR}/sources -ts ${TS_FILES} - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - COMMENT "Updating .ts files from sources/ (lupdate) - developer target, run explicitly" - VERBATIM -) +# Add sub directories +option(PACKAGE_TESTS "Build the tests" ON) +if(PACKAGE_TESTS) + message("Add sub directory tests") + add_subdirectory(tests) +endif() # als laatse include(cmake/define_definitions.cmake) @@ -145,6 +131,36 @@ else() ) endif() +# The default build only compiles the tracked .ts files to .qm (lrelease). +# Refreshing the .ts from the sources (lupdate) is a developer action behind +# the explicit "update_translations" target below: running lupdate on every +# build rewrote tracked files as a side effect, and under high parallelism +# lupdate rewriting a .ts while lrelease read the same file made the build +# fail with "Premature end of document". +if(QT_VERSION_MAJOR EQUAL 6) + qt_add_lrelease( + TARGETS ${PROJECT_NAME} + TS_FILES ${TS_FILES} + QM_OUTPUT_DIRECTORY "${QET_DIR}/lang" + QM_FILES_OUTPUT_VARIABLE QM_FILES + ) + qt_add_lupdate( + TS_FILES ${TS_FILES} + SOURCE_TARGETS ${PROJECT_NAME} + LUPDATE_TARGET update_translations + COMMENT "Updating .ts files from sources/ (lupdate) - developer target, run explicitly" + ) +else() + qt5_add_translation(QM_FILES ${TS_FILES}) + set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION "${QET_DIR}/lang") + add_custom_target(update_translations + COMMAND $ ${CMAKE_SOURCE_DIR}/sources -ts ${TS_FILES} + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + COMMENT "Updating .ts files from sources/ (lupdate) - developer target, run explicitly" + VERBATIM + ) +endif() + # Optional precompiled headers -- see QET_ENABLE_PCH in # cmake/developer_options.cmake for what this trades away. # @@ -180,7 +196,7 @@ target_link_libraries( pugixml::pugixml SingleApplication::SingleApplication SQLite3::SQLite3 - ${KF5_PRIVATE_LIBRARIES} + ${KF_PRIVATE_LIBRARIES} ${QET_PRIVATE_LIBRARIES} ) @@ -221,7 +237,7 @@ target_include_directories( ${QET_DIR}/sources/svg ) -if(NOT BUILD_WITH_KF5) +if(NOT BUILD_WITH_KF) target_include_directories( ${PROJECT_NAME} PRIVATE diff --git a/build-aux/windows/nsis_base/files/README.md b/build-aux/windows/nsis_base/files/README.md index 310f8abf7..b90d792de 100644 --- a/build-aux/windows/nsis_base/files/README.md +++ b/build-aux/windows/nsis_base/files/README.md @@ -40,8 +40,8 @@ git clone --recursive https://github.com/qelectrotech/qelectrotech-source-mirror Here are the technical choices made for the software development: * Integrated development environment: [Qt Framework](https://www.qt.io/ide/) -* Libraries: Qt 5.x -* [KF5 Framework](https://github.com/KDE) +* Libraries: Qt 5.x / Qt 6.x +* [KF5/6 Framework](https://github.com/KDE) [Cmake](https://cmake.org/install/) [kcoreaddons](https://github.com/KDE/kcoreaddons/tree/kf5) [kwidgetsaddons](https://github.com/KDE/kwidgetsaddons/tree/kf5). diff --git a/cmake/define_definitions.cmake b/cmake/define_definitions.cmake index 7f9cb6ae0..6b8ef87f3 100644 --- a/cmake/define_definitions.cmake +++ b/cmake/define_definitions.cmake @@ -62,10 +62,10 @@ message("PROJECT_SOURCE_DIR :" ${PROJECT_SOURCE_DIR}) message("QET_DIR :" ${QET_DIR}) message("GIT_COMMIT_SHA :" ${GIT_COMMIT_SHA}) -if(BUILD_WITH_KF5) - message("KF5_GIT_TAG :" ${KF5_GIT_TAG}) +if(BUILD_WITH_KF) + message("KF_GIT_TAG :" ${KF5_GIT_TAG}) else() - add_definitions(-DBUILD_WITHOUT_KF5) + add_definitions(-DBUILD_WITHOUT_KF) endif() message("QET_COMPONENTS :" ${QET_COMPONENTS}) message("QT_VERSION_MAJOR :" ${QT_VERSION_MAJOR}) diff --git a/cmake/developer_options.cmake b/cmake/developer_options.cmake index cec095273..23f0799fa 100644 --- a/cmake/developer_options.cmake +++ b/cmake/developer_options.cmake @@ -31,8 +31,11 @@ add_definitions(-DQT_MESSAGELOGCONTEXT) # In order to do so, uncomment the following line. #add_definitions(-DTODO_LIST) -# Build with KF5 -option(BUILD_WITH_KF5 "Build with KF5" ON) +# Build with KDE Frameworks. The major version (KF5/KF6) is derived +# automatically from QT_VERSION_MAJOR -- KDE Frameworks deliberately +# mirrors Qt's own major version numbering, so there is no independent +# choice to make here. See cmake/fetch_kdeaddons.cmake. +option(BUILD_WITH_KF "Build with KDE Frameworks" ON) # Precompiled headers for the Qt umbrella headers. # diff --git a/cmake/fetch_kdeaddons.cmake b/cmake/fetch_kdeaddons.cmake index 0867afec4..d5f3affcf 100644 --- a/cmake/fetch_kdeaddons.cmake +++ b/cmake/fetch_kdeaddons.cmake @@ -16,17 +16,24 @@ message(" - fetch_kdeaddons") -if(BUILD_WITH_KF5) +# TODO remove path as soon as Qt5 gets retired +if(BUILD_WITH_KF) Include(FetchContent) - option(BUILD_KF5 "Build KF5 libraries, use system ones otherwise" YES) + option(BUILD_KF "Build KF5 libraries, use system ones otherwise" YES) - if(BUILD_KF5) + if(BUILD_KF) - if(NOT DEFINED KF5_GIT_TAG) + if(KF_MAJOR_VERSION EQUAL 5) + if(NOT DEFINED KF_GIT_TAG) #https://qelectrotech.org/forum/viewtopic.php?pid=13924#p13924 - set(KF5_GIT_TAG v5.77.0) + set(KF_GIT_TAG v5.77.0) endif() + else() + if(NOT DEFINED KF_GIT_TAG) + set(KF_GIT_TAG v6.10.0) + endif() + endif() # Fix stop the run autotests of kcoreaddons # see @@ -38,30 +45,40 @@ if(BUILD_WITH_KF5) # https://qelectrotech.org/forum/viewtopic.php?pid=13929#p13929 set(KDE_SKIP_TEST_SETTINGS "TRUE") set(BUILD_TESTING "0") + + # QElectroTech is a plain QtWidgets application with no QML anywhere in + # it; these disable optional features of the fetched KF modules that + # would otherwise pull in extra Qt6 components (e.g. Qt6Qml) we don't + # have and don't need. + set(BUILD_DESIGNERPLUGIN OFF) + set(KCOREADDONS_USE_QML OFF) + set(BUILD_QCH OFF) + set(BUILD_SHARED_LIBS OFF) + FetchContent_Declare( ecm GIT_REPOSITORY https://invent.kde.org/frameworks/extra-cmake-modules.git - GIT_TAG ${KF5_GIT_TAG}) + GIT_TAG ${KF_GIT_TAG}) FetchContent_MakeAvailable(ecm) FetchContent_Declare( kcoreaddons GIT_REPOSITORY https://invent.kde.org/frameworks/kcoreaddons.git - GIT_TAG ${KF5_GIT_TAG}) + GIT_TAG ${KF_GIT_TAG}) FetchContent_MakeAvailable(kcoreaddons) FetchContent_Declare( kwidgetsaddons GIT_REPOSITORY https://invent.kde.org/frameworks/kwidgetsaddons.git - GIT_TAG ${KF5_GIT_TAG}) + GIT_TAG ${KF_GIT_TAG}) FetchContent_MakeAvailable(kwidgetsaddons) else() - find_package(KF5CoreAddons REQUIRED) - find_package(KF5WidgetsAddons REQUIRED) + find_package(KF${KF_MAJOR_VERSION}CoreAddons REQUIRED) + find_package(KF${KF_MAJOR_VERSION}WidgetsAddons REQUIRED) endif() - set(KF5_PRIVATE_LIBRARIES - KF5::WidgetsAddons - KF5::CoreAddons + set(KF_PRIVATE_LIBRARIES + KF${KF_MAJOR_VERSION}::WidgetsAddons + KF${KF_MAJOR_VERSION}::CoreAddons ) endif() diff --git a/cmake/qet_compilation_vars.cmake b/cmake/qet_compilation_vars.cmake index c0daa3aca..112e6dea5 100644 --- a/cmake/qet_compilation_vars.cmake +++ b/cmake/qet_compilation_vars.cmake @@ -801,7 +801,7 @@ set(QET_SRC_FILES ${QET_DIR}/sources/xml/terminalstriplayoutpatternxml.h ) -if(NOT BUILD_WITH_KF5) +if(NOT BUILD_WITH_KF) list(APPEND QET_SRC_FILES ${QET_DIR}/sources/ui/nokde/kautosavefile.cpp ${QET_DIR}/sources/ui/nokde/kautosavefile.h diff --git a/sources/editor/ui/dynamictextfieldeditor.cpp b/sources/editor/ui/dynamictextfieldeditor.cpp index 145dd959a..f1a806935 100644 --- a/sources/editor/ui/dynamictextfieldeditor.cpp +++ b/sources/editor/ui/dynamictextfieldeditor.cpp @@ -141,7 +141,7 @@ void DynamicTextFieldEditor::updateForm() ui -> m_size_sb -> setValue(m_text_field.data() -> font().pointSize()); ui->m_keep_visual_rotation_cb->setChecked(m_text_field.data()->keepVisualRotation()); ui->m_rotation_point_center_cb->setChecked(m_text_field.data()->rotationPointCenter()); -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF #else m_color_kpb -> setColor(m_text_field.data() -> color()); #endif @@ -170,7 +170,7 @@ void DynamicTextFieldEditor::updateForm() void DynamicTextFieldEditor::setupWidget() { -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF #else m_color_kpb = new KColorButton(this); m_color_kpb->setObjectName(QString::fromUtf8("m_color_kpb")); diff --git a/sources/editor/ui/dynamictextfieldeditor.h b/sources/editor/ui/dynamictextfieldeditor.h index e2f4662e3..726ff9694 100644 --- a/sources/editor/ui/dynamictextfieldeditor.h +++ b/sources/editor/ui/dynamictextfieldeditor.h @@ -21,7 +21,7 @@ #include "../elementitemeditor.h" #include "../graphicspart/partdynamictextfield.h" -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF #else # include #endif @@ -79,7 +79,7 @@ class DynamicTextFieldEditor : public ElementItemEditor { QList m_parts; QList m_connection_list; - #ifdef BUILD_WITHOUT_KF5 + #ifdef BUILD_WITHOUT_KF #else KColorButton* m_color_kpb = nullptr; #endif diff --git a/sources/editor/ui/terminaleditor.cpp b/sources/editor/ui/terminaleditor.cpp index 6456978e7..f3d23b7d9 100644 --- a/sources/editor/ui/terminaleditor.cpp +++ b/sources/editor/ui/terminaleditor.cpp @@ -40,7 +40,7 @@ TerminalEditor::TerminalEditor(QETElementEditor *editor, QWidget *parent) : { ui->setupUi(this); -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF m_color_pb = new QPushButton(this); m_color_pb->setMinimumSize(40, 24); connect(m_color_pb, &QPushButton::clicked, this, &TerminalEditor::labelColorClicked); @@ -93,7 +93,7 @@ void TerminalEditor::updateForm() ui->m_label_rotation_sb->setValue(static_cast(m_part->labelRotation())); ui->m_label_frame_cb->setChecked(m_part->labelFrame()); -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF QPixmap px(16, 16); px.fill(m_part->labelColor()); m_color_pb->setIcon(QIcon(px)); @@ -410,7 +410,7 @@ void TerminalEditor::labelColorClicked() if (m_locked) return; m_locked = true; -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF QColor new_color = QColorDialog::getColor(m_part->labelColor(), this); if (new_color.isValid() && m_part->labelColor() != new_color) { auto undo = new QPropertyUndoCommand(m_part, "label_color", m_part->labelColor(), new_color); diff --git a/sources/editor/ui/terminaleditor.h b/sources/editor/ui/terminaleditor.h index d0ebf6098..7c15d9f2c 100644 --- a/sources/editor/ui/terminaleditor.h +++ b/sources/editor/ui/terminaleditor.h @@ -21,7 +21,7 @@ #include #include "../elementitemeditor.h" -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF #include #else #include @@ -78,7 +78,7 @@ class TerminalEditor : public ElementItemEditor m_change_connections; PartTerminal *m_part = nullptr; bool m_locked = false; -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF QPushButton *m_color_pb; #else KColorButton *m_color_pb; diff --git a/sources/editor/ui/texteditor.cpp b/sources/editor/ui/texteditor.cpp index fd0b3e74f..db600d147 100644 --- a/sources/editor/ui/texteditor.cpp +++ b/sources/editor/ui/texteditor.cpp @@ -63,7 +63,7 @@ void TextEditor::updateForm() m_rotation_sb -> setValue(m_text -> rotation()); m_size_sb -> setValue(m_text -> font().pointSize()); m_font_pb -> setText(m_text -> font().family()); -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF #else m_color_pb -> setColor(m_text -> defaultTextColor()); #endif @@ -346,7 +346,7 @@ void TextEditor::setUpWidget(QWidget *parent) m_line_edit->setPlaceholderText(tr("Entrer votre texte ici")); gridLayout->addWidget(m_line_edit, 0, 0, 1, 6); -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF #else m_color_pb = new KColorButton(parent); m_color_pb->setObjectName(QString::fromUtf8("m_color_pb")); diff --git a/sources/editor/ui/texteditor.h b/sources/editor/ui/texteditor.h index 7dd207eba..dd860ee10 100644 --- a/sources/editor/ui/texteditor.h +++ b/sources/editor/ui/texteditor.h @@ -25,7 +25,7 @@ #include #include #include -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF #else #include #endif @@ -65,7 +65,7 @@ class TextEditor : public ElementItemEditor { QSpinBox *m_size_sb; QLineEdit *m_line_edit; QPushButton *m_font_pb; -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF #else KColorButton *m_color_pb; #endif diff --git a/sources/qetapp.cpp b/sources/qetapp.cpp index 95d84a4d0..45b4a1800 100644 --- a/sources/qetapp.cpp +++ b/sources/qetapp.cpp @@ -50,7 +50,7 @@ #include #include #include -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF # include "ui/nokde/kautosavefile.h" #else # include diff --git a/sources/qetdiagrameditor.cpp b/sources/qetdiagrameditor.cpp index 44353b655..d7b002a50 100644 --- a/sources/qetdiagrameditor.cpp +++ b/sources/qetdiagrameditor.cpp @@ -57,7 +57,7 @@ #include #include #include -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF # include "ui/nokde/kautosavefile.h" #else # include diff --git a/sources/qetproject.h b/sources/qetproject.h index 3817abad9..5ec4f4ae7 100644 --- a/sources/qetproject.h +++ b/sources/qetproject.h @@ -29,7 +29,7 @@ #include "titleblock/templatescollection.h" #include "titleblockproperties.h" #include "diagram.h" -#ifdef BUILD_WITHOUT_KF5 +#ifdef BUILD_WITHOUT_KF # include "ui/nokde/kautosavefile.h" #else # include diff --git a/tests/catch/CMakeLists.txt b/tests/catch/CMakeLists.txt index 78118032c..aa7872bd1 100644 --- a/tests/catch/CMakeLists.txt +++ b/tests/catch/CMakeLists.txt @@ -90,7 +90,7 @@ add_executable( ${QET_DIR}/sources/borderproperties.h ) -if(NOT BUILD_WITH_KF5) +if(NOT BUILD_WITH_KF) target_sources( ${PROJECT_NAME} PRIVATE @@ -109,7 +109,7 @@ target_link_libraries( PUBLIC Catch2::Catch2 PRIVATE - ${KF5_PRIVATE_LIBRARIES} + ${KF_PRIVATE_LIBRARIES} ${QET_PRIVATE_LIBRARIES}) if (DEFINED ENV{CATCH_INCLUDE_DIR}) diff --git a/tests/googlemock/CMakeLists.txt b/tests/googlemock/CMakeLists.txt index db29ef8c9..a8e4dbb76 100644 --- a/tests/googlemock/CMakeLists.txt +++ b/tests/googlemock/CMakeLists.txt @@ -85,6 +85,6 @@ target_link_libraries( PUBLIC gmock gmock_main PRIVATE - ${KF5_PRIVATE_LIBRARIES} + ${KF_PRIVATE_LIBRARIES} ${QET_PRIVATE_LIBRARIES}) diff --git a/tests/googletest/CMakeLists.txt b/tests/googletest/CMakeLists.txt index bcc85b4de..4ed488f57 100644 --- a/tests/googletest/CMakeLists.txt +++ b/tests/googletest/CMakeLists.txt @@ -84,6 +84,6 @@ target_link_libraries( PUBLIC gtest gtest_main PRIVATE - ${KF5_PRIVATE_LIBRARIES} + ${KF_PRIVATE_LIBRARIES} ${QET_PRIVATE_LIBRARIES}) diff --git a/tests/qttest/CMakeLists.txt b/tests/qttest/CMakeLists.txt index 41137a3e5..6908716ff 100644 --- a/tests/qttest/CMakeLists.txt +++ b/tests/qttest/CMakeLists.txt @@ -74,6 +74,6 @@ target_link_libraries( ${PROJECT_NAME} PRIVATE Qt::Test - ${KF5_PRIVATE_LIBRARIES} + ${KF_PRIVATE_LIBRARIES} ${QET_PRIVATE_LIBRARIES}) From 206c37f6200cfbf4f79ca596b19b6ed565a786dc Mon Sep 17 00:00:00 2001 From: Shane Ringrose Date: Sun, 12 Jul 2026 22:32:42 +1200 Subject: [PATCH 15/26] cmake(qt6): verify Qt6::GuiPrivate at configure time, drop #warning (QPdfEngine::drawHyperlink) needs Qt's private GUI module, previously flagged only by a #warning at compile time. Qt >= 6.7 ships GuiPrivate as a proper find_package component, but some distro packages (e.g. Ubuntu's qt6-base-private-dev, Qt 6.8.3) do not install Qt6GuiPrivateConfig.cmake and only provide the implicit Qt6::GuiPrivate target created alongside Qt6::Gui. Requesting the component unconditionally would therefore break distro-Qt builds. Instead: try the component quietly, then hard-verify the Qt6::GuiPrivate target exists after the main find_package, failing at configure time with an actionable message if the private headers are missing. The compile-time #warning in pdf_links.cpp and projectprintwindow.cpp is now redundant and removed. Verified: cmake configure + compile of both translation units on Ubuntu 25.04 / Qt 6.8.3 (system KF6), cmake configure on Qt 5.15. Co-Authored-By: Claude Fable 5 --- CMakeLists.txt | 31 ++++++++++++++-------------- sources/pdf_links.cpp | 4 ++-- sources/print/projectprintwindow.cpp | 16 ++++++++------ 3 files changed, 28 insertions(+), 23 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a06bf1fde..f3bdaf9e0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -70,26 +70,27 @@ find_package( ${QET_COMPONENTS} REQUIRED) -# Qt6 only creates the Qt::GuiPrivate target (used for QPdfEngine::drawHyperlink) -# when the GuiPrivate component is explicitly requested. Qt5 has no such -# component package and creates the target implicitly with Gui, so only -# request it on Qt6 - requesting it on Qt5 fails the whole configure. +# (QPdfEngine::drawHyperlink) needs Qt's private GUI module. +# Qt >= 6.7 ships it as a proper find_package component, but some distro +# packages (e.g. Ubuntu's qt6-base-private-dev) omit Qt6GuiPrivateConfig.cmake +# and only provide the implicit Qt6::GuiPrivate target created alongside +# Qt6::Gui. Try the component quietly, then verify the target below so a +# missing private-headers package fails here instead of at compile time. +# Qt5 has no such component — its GuiPrivate target always exists once Gui is found. if(QT_VERSION_MAJOR GREATER_EQUAL 6) - find_package(Qt${QT_VERSION_MAJOR} REQUIRED COMPONENTS GuiPrivate) + find_package(Qt6 QUIET COMPONENTS GuiPrivate) +endif() + +if(QT_VERSION_MAJOR GREATER_EQUAL 6 AND NOT TARGET Qt6::GuiPrivate) + message(FATAL_ERROR + "Qt6::GuiPrivate was not found. It is required for PDF hyperlink " + "support (). Install the Qt6 private headers " + "(e.g. 'qt6-base-private-dev' on Debian/Ubuntu) or use a Qt build " + "that provides the GuiPrivate component.") endif() find_package(SQLite3 REQUIRED) -# CMake < 4.3 only creates the SQLite::SQLite3 target (no SQLite3::SQLite3 -# alias yet), while CMake >= 4.3's bundled FindSQLite3 creates SQLite3::SQLite3 -# and deprecates the old name. Add the missing alias ourselves so we can use -# the modern target name everywhere regardless of the CMake version in use -# (this project must keep building on CMake versions below 4.3, e.g. on most -# current Linux distros). -if(NOT TARGET SQLite3::SQLite3 AND TARGET SQLite::SQLite3) - add_library(SQLite3::SQLite3 ALIAS SQLite::SQLite3) -endif() - set(CMAKE_AUTOUIC_SEARCH_PATHS ${QET_DIR}/sources/ui) if(QT_VERSION_MAJOR EQUAL 6) diff --git a/sources/pdf_links.cpp b/sources/pdf_links.cpp index b4ce86a5e..4e5a7d354 100644 --- a/sources/pdf_links.cpp +++ b/sources/pdf_links.cpp @@ -23,8 +23,8 @@ #include "qetgraphicsitem/element.h" #include "qetgraphicsitem/elementtextitemgroup.h" -// Private Qt PDF engine for drawHyperlink() — not public API, stable since Qt4. -// Requires QT += gui-private in qelectrotech.pro / gui-private in CMake. +// Private Qt PDF engine for drawHyperlink() — not public API. +// Availability of Qt::GuiPrivate is verified at configure time in CMakeLists.txt. #include #include diff --git a/sources/print/projectprintwindow.cpp b/sources/print/projectprintwindow.cpp index b115ad5b7..c90d71b68 100644 --- a/sources/print/projectprintwindow.cpp +++ b/sources/print/projectprintwindow.cpp @@ -28,8 +28,8 @@ #include "ui_projectprintwindow.h" -// Private Qt PDF engine for drawHyperlink() — not public API, stable since Qt4 -// Requires QT += gui-private in qelectrotech.pro +// Private Qt PDF engine for drawHyperlink() — not public API. +// Availability of Qt::GuiPrivate is verified at configure time in CMakeLists.txt. #include #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) // ### Qt 6: remove @@ -79,10 +79,14 @@ void ProjectPrintWindow::launchDialog(QETProject *project, QPrinter::OutputForma print_dialog.setWindowFlags(Qt::Sheet); #endif print_dialog.setWindowTitle(tr("Options d'impression", "window title")); - // setOptions() is the modern spelling of the Qt4-era - // setEnabledOptions() (removed in Qt 6): replace the enabled - // option set with just PrintShowPageSize, on Qt 5 and 6 alike. - print_dialog.setOptions(QAbstractPrintDialog::PrintShowPageSize); +#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) // ### Qt 6: remove + print_dialog.setEnabledOptions(QAbstractPrintDialog::PrintShowPageSize); +#else +#if TODO_LIST +#pragma message("@TODO remove code for QT 6 or later") +#endif + qDebug()<<"Help code for QT 6 or later"; +#endif if (print_dialog.exec() == QDialog::Rejected) { delete printer_; return; From c5d714089f086293570ede8c7a553651852e6a3c Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Mon, 10 Aug 2026 19:28:38 +0200 Subject: [PATCH 16/26] Replacing KF5 missed in shell print out. --- cmake/define_definitions.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/define_definitions.cmake b/cmake/define_definitions.cmake index 6b8ef87f3..5296156b7 100644 --- a/cmake/define_definitions.cmake +++ b/cmake/define_definitions.cmake @@ -63,7 +63,7 @@ message("QET_DIR :" ${QET_DIR}) message("GIT_COMMIT_SHA :" ${GIT_COMMIT_SHA}) if(BUILD_WITH_KF) - message("KF_GIT_TAG :" ${KF5_GIT_TAG}) + message("KF_GIT_TAG :" ${KF_GIT_TAG}) else() add_definitions(-DBUILD_WITHOUT_KF) endif() From af87d28e33ebdd388e835636c88c49e376f2cc3d Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Mon, 10 Aug 2026 19:47:34 +0200 Subject: [PATCH 17/26] Fix several parameters after Qt6 migration. --- .github/workflows/windows-build.yml | 2 +- CMakeLists.txt | 12 +++- cmake/fetch_kdeaddons.cmake | 93 +++++++++++++++-------------- 3 files changed, 61 insertions(+), 46 deletions(-) diff --git a/.github/workflows/windows-build.yml b/.github/workflows/windows-build.yml index e41a6cf5a..2a5eeb7df 100644 --- a/.github/workflows/windows-build.yml +++ b/.github/workflows/windows-build.yml @@ -113,7 +113,7 @@ jobs: -DQt5_DIR=/ucrt64/lib/cmake/Qt5 \ -DQT_VERSION_MAJOR=5 \ -DCMAKE_DISABLE_FIND_PACKAGE_Qt6=ON \ - -DBUILD_TESTING=OFF \ + -DPACKAGE_TESTS=OFF \ -DCMAKE_POLICY_DEFAULT_CMP0077=NEW \ -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \ -DCMAKE_CXX_FLAGS="-DQET_EXPORT_PROJECT_DB" \ diff --git a/CMakeLists.txt b/CMakeLists.txt index f3bdaf9e0..2bf51eff0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -76,7 +76,7 @@ find_package( # and only provide the implicit Qt6::GuiPrivate target created alongside # Qt6::Gui. Try the component quietly, then verify the target below so a # missing private-headers package fails here instead of at compile time. -# Qt5 has no such component — its GuiPrivate target always exists once Gui is found. +# Qt5 has no such component as its GuiPrivate target always exists once Gui is found. if(QT_VERSION_MAJOR GREATER_EQUAL 6) find_package(Qt6 QUIET COMPONENTS GuiPrivate) endif() @@ -91,6 +91,16 @@ endif() find_package(SQLite3 REQUIRED) +# CMake < 4.3 only creates the SQLite::SQLite3 target (no SQLite3::SQLite3 +# alias yet), while CMake >= 4.3's bundled FindSQLite3 creates SQLite3::SQLite3 +# and deprecates the old name. Add the missing alias ourselves so we can use +# the modern target name everywhere regardless of the CMake version in use +# (this project must keep building on CMake versions below 4.3, e.g. on most +# current Linux distros). +if(NOT TARGET SQLite3::SQLite3 AND TARGET SQLite::SQLite3) + add_library(SQLite3::SQLite3 ALIAS SQLite::SQLite3) +endif() + set(CMAKE_AUTOUIC_SEARCH_PATHS ${QET_DIR}/sources/ui) if(QT_VERSION_MAJOR EQUAL 6) diff --git a/cmake/fetch_kdeaddons.cmake b/cmake/fetch_kdeaddons.cmake index d5f3affcf..b8c7e1d51 100644 --- a/cmake/fetch_kdeaddons.cmake +++ b/cmake/fetch_kdeaddons.cmake @@ -20,58 +20,63 @@ message(" - fetch_kdeaddons") if(BUILD_WITH_KF) Include(FetchContent) - option(BUILD_KF "Build KF5 libraries, use system ones otherwise" YES) + option(BUILD_KF "Build KF libraries, use system ones otherwise" YES) if(BUILD_KF) - if(KF_MAJOR_VERSION EQUAL 5) - if(NOT DEFINED KF_GIT_TAG) - #https://qelectrotech.org/forum/viewtopic.php?pid=13924#p13924 - set(KF_GIT_TAG v5.77.0) + if(KF_MAJOR_VERSION EQUAL 5) + if(NOT DEFINED KF_GIT_TAG) + #https://qelectrotech.org/forum/viewtopic.php?pid=13924#p13924 + set(KF_GIT_TAG v5.77.0) + endif() + else() + if(NOT DEFINED KF_GIT_TAG) + # this is a more or less random version, taken as an conservative approach + set(KF_GIT_TAG v6.10.0) + endif() endif() - else() - if(NOT DEFINED KF_GIT_TAG) - set(KF_GIT_TAG v6.10.0) - endif() - endif() - - # Fix stop the run autotests of kcoreaddons - # see - # https://invent.kde.org/frameworks/kcoreaddons/-/blob/master/CMakeLists.txt#L98 - # issue: - # CMake Error at /usr/share/ECM/modules/ECMAddTests.cmake:89 (add_executable): - # Cannot find source file: - # see - # https://qelectrotech.org/forum/viewtopic.php?pid=13929#p13929 - set(KDE_SKIP_TEST_SETTINGS "TRUE") - set(BUILD_TESTING "0") + // using a function in order to limit the scope of the variables + // with CMake >=3.25 we could use a block() + function(qet_make_kf_available) + # Fix stop the run autotests of kcoreaddons + # see + # https://invent.kde.org/frameworks/kcoreaddons/-/blob/master/CMakeLists.txt#L98 + # issue: + # CMake Error at /usr/share/ECM/modules/ECMAddTests.cmake:89 (add_executable): + # Cannot find source file: + # see + # https://qelectrotech.org/forum/viewtopic.php?pid=13929#p13929 + set(KDE_SKIP_TEST_SETTINGS ON) + set(BUILD_TESTING OFF) - # QElectroTech is a plain QtWidgets application with no QML anywhere in - # it; these disable optional features of the fetched KF modules that - # would otherwise pull in extra Qt6 components (e.g. Qt6Qml) we don't - # have and don't need. - set(BUILD_DESIGNERPLUGIN OFF) - set(KCOREADDONS_USE_QML OFF) - set(BUILD_QCH OFF) - set(BUILD_SHARED_LIBS OFF) + # QElectroTech is a plain QtWidgets application with no QML anywhere in + # it; these disable optional features of the fetched KF modules that + # would otherwise pull in extra Qt6 components (e.g. Qt6Qml) we don't + # have and don't need. + set(BUILD_DESIGNERPLUGIN OFF) + set(KCOREADDONS_USE_QML OFF) + set(BUILD_QCH OFF) + set(BUILD_SHARED_LIBS OFF) - FetchContent_Declare( - ecm - GIT_REPOSITORY https://invent.kde.org/frameworks/extra-cmake-modules.git - GIT_TAG ${KF_GIT_TAG}) - FetchContent_MakeAvailable(ecm) + FetchContent_Declare( + ecm + GIT_REPOSITORY https://invent.kde.org/frameworks/extra-cmake-modules.git + GIT_TAG ${KF_GIT_TAG}) + FetchContent_MakeAvailable(ecm) - FetchContent_Declare( - kcoreaddons - GIT_REPOSITORY https://invent.kde.org/frameworks/kcoreaddons.git - GIT_TAG ${KF_GIT_TAG}) - FetchContent_MakeAvailable(kcoreaddons) + FetchContent_Declare( + kcoreaddons + GIT_REPOSITORY https://invent.kde.org/frameworks/kcoreaddons.git + GIT_TAG ${KF_GIT_TAG}) + FetchContent_MakeAvailable(kcoreaddons) - FetchContent_Declare( - kwidgetsaddons - GIT_REPOSITORY https://invent.kde.org/frameworks/kwidgetsaddons.git - GIT_TAG ${KF_GIT_TAG}) - FetchContent_MakeAvailable(kwidgetsaddons) + FetchContent_Declare( + kwidgetsaddons + GIT_REPOSITORY https://invent.kde.org/frameworks/kwidgetsaddons.git + GIT_TAG ${KF_GIT_TAG}) + FetchContent_MakeAvailable(kwidgetsaddons) + endfunction() + qet_make_kf_available() else() find_package(KF${KF_MAJOR_VERSION}CoreAddons REQUIRED) find_package(KF${KF_MAJOR_VERSION}WidgetsAddons REQUIRED) From 92b2608bfb4aebb2a1714234cd8bbc630d673c18 Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Mon, 10 Aug 2026 20:45:20 +0200 Subject: [PATCH 18/26] Comments in CMake with # and not //... always remember the language you are currently using. --- cmake/fetch_kdeaddons.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/fetch_kdeaddons.cmake b/cmake/fetch_kdeaddons.cmake index b8c7e1d51..9b1733214 100644 --- a/cmake/fetch_kdeaddons.cmake +++ b/cmake/fetch_kdeaddons.cmake @@ -35,8 +35,8 @@ if(BUILD_WITH_KF) set(KF_GIT_TAG v6.10.0) endif() endif() - // using a function in order to limit the scope of the variables - // with CMake >=3.25 we could use a block() + # using a function in order to limit the scope of the variables + # with CMake >=3.25 we could use a block() function(qet_make_kf_available) # Fix stop the run autotests of kcoreaddons # see From cc032c9c76dcb46bdf7319ac16bb9cdb16ecc551 Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Tue, 11 Aug 2026 00:21:55 +0200 Subject: [PATCH 19/26] Fixing comment removing the long dash that AIs tend to use. --- sources/print/projectprintwindow.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources/print/projectprintwindow.cpp b/sources/print/projectprintwindow.cpp index c90d71b68..a814aa378 100644 --- a/sources/print/projectprintwindow.cpp +++ b/sources/print/projectprintwindow.cpp @@ -28,7 +28,7 @@ #include "ui_projectprintwindow.h" -// Private Qt PDF engine for drawHyperlink() — not public API. +// Private Qt PDF engine for drawHyperlink() is not a public API. // Availability of Qt::GuiPrivate is verified at configure time in CMakeLists.txt. #include From 8b40134a4766175486fdcfdb0198ca7fa0b7898a Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Tue, 11 Aug 2026 00:25:45 +0200 Subject: [PATCH 20/26] sources/qetgraphicsitem/ViewItem/projectdbmodel.cpp QVector(Qt::DisplayRole) creates a vector of size 0 (since Qt::DisplayRole == 0), not a vector containing DisplayRole. Fixed to {Qt::DisplayRole}. The sam applies to QVector(role) which gets changed to {role}. --- sources/qetgraphicsitem/ViewItem/projectdbmodel.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sources/qetgraphicsitem/ViewItem/projectdbmodel.cpp b/sources/qetgraphicsitem/ViewItem/projectdbmodel.cpp index 7ef031504..abfe1bf01 100644 --- a/sources/qetgraphicsitem/ViewItem/projectdbmodel.cpp +++ b/sources/qetgraphicsitem/ViewItem/projectdbmodel.cpp @@ -146,7 +146,7 @@ bool ProjectDBModel::setData(const QModelIndex &index, const QVariant &value, in return false; } m_index_0_0_data.insert(role, value); - emit dataChanged(index, index, QVector(role)); + emit dataChanged(index, index, {role}); return true; } @@ -332,7 +332,7 @@ void ProjectDBModel::dataBaseUpdated() auto row = m_record.size(); auto col = row ? m_record.first().count() : 1; - emit dataChanged(this->index(0,0), this->index(row-1, col-1), QVector(Qt::DisplayRole)); + emit dataChanged(this->index(0,0), this->index(row-1, col-1), {Qt::DisplayRole}); } } From 766a6b981d1e0c84fba921eeec1e815e5c919c95 Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Tue, 11 Aug 2026 00:30:55 +0200 Subject: [PATCH 21/26] QUuid not transitively included in Qt6; added explicit includes. --- sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp | 1 + sources/TerminalStrip/GraphicsItem/terminalstripdrawer.h | 1 + 2 files changed, 2 insertions(+) diff --git a/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp b/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp index ee94b3b77..704be3f35 100644 --- a/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp +++ b/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.cpp @@ -19,6 +19,7 @@ #include #include +#include namespace TerminalStripDrawer { diff --git a/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.h b/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.h index 8aa96be35..26de183b4 100644 --- a/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.h +++ b/sources/TerminalStrip/GraphicsItem/terminalstripdrawer.h @@ -19,6 +19,7 @@ #define TERMINALSTRIPDRAWER_H #include +#include #include "properties/terminalstriplayoutpattern.h" From 8d08c3fd5623c5965e08c891ec801cc6841f6690 Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Tue, 11 Aug 2026 09:02:46 +0200 Subject: [PATCH 22/26] Replacing depreciated qAsConst with std::as_const --- sources/shortcutmanager.cpp | 3 ++- sources/ui/configpage/shortcutsconfigpage.cpp | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/sources/shortcutmanager.cpp b/sources/shortcutmanager.cpp index 083c4a44a..a6792159c 100644 --- a/sources/shortcutmanager.cpp +++ b/sources/shortcutmanager.cpp @@ -21,6 +21,7 @@ #include #include #include +#include namespace { const QString SETTINGS_GROUP = QStringLiteral("shortcuts/"); @@ -143,7 +144,7 @@ void ShortcutManager::setSequence(const QString &id, const QKeySequence &sequenc settings.setValue(key, sequence.toString()); } - for (const QPointer &target : qAsConst(it->targets)) { + for (const QPointer &target : std::as_const(it->targets)) { if (target) { target->setProperty("shortcut", QVariant::fromValue(sequence)); } diff --git a/sources/ui/configpage/shortcutsconfigpage.cpp b/sources/ui/configpage/shortcutsconfigpage.cpp index f5bf58f94..f13f12fe5 100644 --- a/sources/ui/configpage/shortcutsconfigpage.cpp +++ b/sources/ui/configpage/shortcutsconfigpage.cpp @@ -31,6 +31,7 @@ #include #include #include +#include /** @brief ShortcutsConfigPage::ShortcutsConfigPage @@ -198,7 +199,7 @@ void ShortcutsConfigPage::resetRow(int row_index) void ShortcutsConfigPage::resetAllRows() { - for (const Row &row : qAsConst(m_rows)) { + for (const Row &row : std::as_const(m_rows)) { row.edit->setKeySequence(row.default_sequence); } checkConflicts(); @@ -211,7 +212,7 @@ void ShortcutsConfigPage::resetAllRows() */ void ShortcutsConfigPage::applyConf() { - for (const Row &row : qAsConst(m_rows)) { + for (const Row &row : std::as_const(m_rows)) { ShortcutManager::instance().setSequence(row.id, row.edit->keySequence()); } } From 8cfb777fe10db8b021a94a68e67ff1ba4202a72e Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Tue, 11 Aug 2026 09:42:58 +0200 Subject: [PATCH 23/26] Fixing the translation installation for Qt5. Messed up the order of two lines. --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2bf51eff0..c06144721 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -162,8 +162,8 @@ if(QT_VERSION_MAJOR EQUAL 6) COMMENT "Updating .ts files from sources/ (lupdate) - developer target, run explicitly" ) else() - qt5_add_translation(QM_FILES ${TS_FILES}) set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION "${QET_DIR}/lang") + qt5_add_translation(QM_FILES ${TS_FILES}) add_custom_target(update_translations COMMAND $ ${CMAKE_SOURCE_DIR}/sources -ts ${TS_FILES} WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} From a4d23fe312910b63f2a7421b647d45ee6b5840b9 Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Tue, 11 Aug 2026 09:51:06 +0200 Subject: [PATCH 24/26] QUuid and QHash no longer transititve. Adding includes explicitly. --- sources/TerminalStrip/ui/terminalstriptreedockwidget.cpp | 2 ++ sources/TerminalStrip/ui/terminalstriptreedockwidget.h | 1 + 2 files changed, 3 insertions(+) diff --git a/sources/TerminalStrip/ui/terminalstriptreedockwidget.cpp b/sources/TerminalStrip/ui/terminalstriptreedockwidget.cpp index fe9c5f809..5ab386c57 100644 --- a/sources/TerminalStrip/ui/terminalstriptreedockwidget.cpp +++ b/sources/TerminalStrip/ui/terminalstriptreedockwidget.cpp @@ -28,6 +28,8 @@ #include "../terminalstrip.h" #include "../../qetinformation.h" +#include + TerminalStripTreeDockWidget::TerminalStripTreeDockWidget(QETProject *project, QWidget *parent) : QDockWidget(parent), ui(new Ui::TerminalStripTreeDockWidget) diff --git a/sources/TerminalStrip/ui/terminalstriptreedockwidget.h b/sources/TerminalStrip/ui/terminalstriptreedockwidget.h index e611c002b..142d72f97 100644 --- a/sources/TerminalStrip/ui/terminalstriptreedockwidget.h +++ b/sources/TerminalStrip/ui/terminalstriptreedockwidget.h @@ -20,6 +20,7 @@ #include #include +#include class QETProject; class QTreeWidgetItem; From d2a921ea803a69eb3ab1b416bdaf559b82ea18fb Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Tue, 11 Aug 2026 23:58:30 +0200 Subject: [PATCH 25/26] Fixing MacOS only GUI adjustment relying on QWheelEvent->delta() which was removed in Qt6. Some simplification was possible but no test due to lack of OS. Discovered due to new CI. --- sources/projectview.h | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/sources/projectview.h b/sources/projectview.h index 2f9b5c92a..dfbd03987 100644 --- a/sources/projectview.h +++ b/sources/projectview.h @@ -35,28 +35,28 @@ public: : QTabWidget(parent) {} - double temp_index = 0; - void wheelEvent(QWheelEvent *event) override { - int index = currentIndex(); - double delta = 0; - double scale_factor = 0.005; // Decrease or increase speed of mouse wheel (0.04 = decrease) - if (event->modifiers() & Qt::ControlModifier) { - if (index != -1) { - delta = event->delta() * scale_factor; // Read and scale the scroll value - if (delta > 0 && (temp_index > -1)) temp_index = temp_index - abs(delta); - if (delta < 0 && (temp_index < count())) temp_index = temp_index + abs(delta); + // Only intercept if Ctrl is held down + if (event->modifiers() & Qt::ControlModifier) { + int index = currentIndex(); + if (index != -1) { + // angleDelta().y() is usually 120 per click. + // Dividing by 120 gives you exactly +1 (scroll up) or -1 (scroll down) + int steps = event->angleDelta().y() / 120; - index = int (temp_index); - qDebug() << "index" << index << "temp_index" << temp_index << " " << event->delta() << delta; + if (steps != 0) { + int newIndex = index - steps; - if (index >= 0 && index < count()) - setCurrentIndex(index); - - // qDebug() << currentIndex(); + if (newIndex >= 0 && newIndex < count()) + setCurrentIndex(newIndex); } } + event->accept(); // Mark event handled so parent widgets don't process it + } else { + // Allow the default QTabWidget wheel behavior to process if Ctrl isn't held + QTabWidget::wheelEvent(event); + } } }; #endif From 1de9f7eaf04339304073bd7b491e2f0793b52448 Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Wed, 12 Aug 2026 22:37:46 +0200 Subject: [PATCH 26/26] The Qt6 CMake signatures for translation handling changed multiple times with minor versions. --- CMakeLists.txt | 86 ++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 70 insertions(+), 16 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c06144721..6fd475abe 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -148,26 +148,80 @@ endif() # build rewrote tracked files as a side effect, and under high parallelism # lupdate rewriting a .ts while lrelease read the same file made the build # fail with "Premature end of document". +set_source_files_properties( + ${TS_FILES} + PROPERTIES OUTPUT_LOCATION "${QET_DIR}/lang" +) if(QT_VERSION_MAJOR EQUAL 6) - qt_add_lrelease( - TARGETS ${PROJECT_NAME} - TS_FILES ${TS_FILES} - QM_OUTPUT_DIRECTORY "${QET_DIR}/lang" - QM_FILES_OUTPUT_VARIABLE QM_FILES - ) - qt_add_lupdate( - TS_FILES ${TS_FILES} - SOURCE_TARGETS ${PROJECT_NAME} - LUPDATE_TARGET update_translations - COMMENT "Updating .ts files from sources/ (lupdate) - developer target, run explicitly" - ) + if(Qt6_VERSION VERSION_LESS "6.2") + # Qt 6.0–6.1 + qt6_add_translation(QM_FILES ${TS_FILES}) + + # qt6_add_translation() only creates custom commands. Something must + # depend on their outputs for them to run during the default build. + add_custom_target(${PROJECT_NAME}_lrelease ALL + DEPENDS ${QM_FILES} + ) + + add_custom_target(update_translations + COMMAND + $ + "${CMAKE_SOURCE_DIR}/sources" + -ts ${TS_FILES} + WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" + COMMENT + "Updating .ts files from sources/ (lupdate) - developer target" + VERBATIM + ) + + elseif(Qt6_VERSION VERSION_LESS "6.7") + # Qt 6.2–6.6: old target-based signature + qt_add_lrelease( + ${PROJECT_NAME} + TS_FILES ${TS_FILES} + QM_FILES_OUTPUT_VARIABLE QM_FILES + ) + + # Automatically creates the update_translations umbrella target. + qt_add_lupdate( + ${PROJECT_NAME} + TS_FILES ${TS_FILES} + ) + + else() + # Qt 6.7+: new signature + qt_add_lrelease( + TS_FILES ${TS_FILES} + LRELEASE_TARGET ${PROJECT_NAME}_lrelease + QM_FILES_OUTPUT_VARIABLE QM_FILES + ) + + qt_add_lupdate( + SOURCE_TARGETS ${PROJECT_NAME} + TS_FILES ${TS_FILES} + LUPDATE_TARGET update_translations + NO_GLOBAL_TARGET + ) + endif() + else() - set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION "${QET_DIR}/lang") + # Qt 5 qt5_add_translation(QM_FILES ${TS_FILES}) + + # Likewise, qt5_add_translation() needs a target depending on its outputs, + # unless QM_FILES are already consumed elsewhere. + add_custom_target(${PROJECT_NAME}_lrelease ALL + DEPENDS ${QM_FILES} + ) + add_custom_target(update_translations - COMMAND $ ${CMAKE_SOURCE_DIR}/sources -ts ${TS_FILES} - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} - COMMENT "Updating .ts files from sources/ (lupdate) - developer target, run explicitly" + COMMAND + $ + "${CMAKE_SOURCE_DIR}/sources" + -ts ${TS_FILES} + WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" + COMMENT + "Updating .ts files from sources/ (lupdate) - developer target" VERBATIM ) endif()